Automatorでシェルスクリプトを実行したいんですけどー

Automator (MacOSX 10.9) でシェルスクリプトを実行するサービスを作ろうとして悪戦苦闘していると、またもや謎発生。

コマンドラインから実行して正常に終了するシェルスクリプトの内容を、Automatorアクションのシェルスクリプトを書き込むエリアにコピペして実行するとエラーになる。

七転八倒の末、Automatorアクションのシェルスクリプトを書き込むエリアの中で、ダブルクォートとかバッククォートがいつの間にか全角になっていることに気づいた。
ずっと半角英数字で書いているはずなのに。おかしい。ってか全角になる場合と半角のままの場合がある?
ダブルクォートとかバッククォートとかシングルクォートとか大括弧とか中括弧とか、囲む系の記号が全角になっちまうよ。その記号の前後で文字を追加したり修正したりすると、記号が全角になっちゃうっぽい。

どういうこっちゃ?

原因はわからないが、仕方ないので一通り書いた後で全角になっちまった記号を半角記号でコピペした。
そうしたら「シェルスクリプトを実行」アクションのシェルスクリプトを書き込むエリアに直接コードを書いてあってもエラーにならなくなった。めんどくせえ。

何問題だ?フォントか?ことえりか?スペルチェックか?

「入力の引き渡し方法:引数として」と指定すると、次のfor文が自動で書き込まれる。これを実行すると成功裡に終了する。
Automator_shellscript_01

このfor文にcntを追加してみる。これを実行するとエラーになる。
Automator_shellscript_02

この$cntの前のダブルクォートが全角になっているので、いじってない$@の前のダブルクォートをコピーして$cntの前のダブルクォートにペースト。再度実行すると成功裡に終了する。
Automator_shellscript_03

全角か半角か見分けづらいのでちまちま直していられない。


2 thoughts on “Automatorでシェルスクリプトを実行したいんですけどー

  1. はじめまして。
    Automatorの情報を探して、立ち寄りました。
    ずいぶん前のエントリみたいなので、もう解決されたかもしれませんが、
    テキストエリアで
    右クリック→自動置換→スマート引用符
    チェックを外すと幸せになれます。http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_bye.gif

    • Σ( ̄ロ ̄lll) そんな機能があったとは、全く気づいていませんでした。
      幸せになりました。ありがとうございます。http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_mail.gif

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.

http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_bye.gif  http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_good.gif  http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_negative.gif  http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_scratch.gif  http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_wacko.gif  http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_yahoo.gif  http://r-square.net/blog/wp-content/plugins/wp-monalisa/icons/wpml_cool.gif 
more...