0

Bashを使用してXCodeでAutomatorアクションを作成すると、すべてのファイルとフォルダーパスがstdinに出力されます。

これらのファイルのコンテンツを取得するにはどうすればよいですか?何をしようとしても、出力にはファイル名しか表示されません。

「シェルスクリプトの実行」を選択するだけで、すべてをstdinにするか、引数として使用するかを選択できます。これは、XCodeプロジェクトに対して実行できますか?

Applescriptを使用する方がほとんど簡単で、Bashを実行できます。

私は次のようなことを試みました

xargs | cat | MyCommand
4

2 に答える 2

0

readスクリプトのstdinから行を読み取ります。$IFSパス名がスペースをエスケープせずにバックスラッシュで送信されても​​干渉しないものに設定してください。

OLDIFS="$IFS"
IFS=$'\n'
while read filename ; do
  echo "*** $filename:"
  cat -n "$filename"
done
IFS="$OLDIFS"
于 2010-01-30T20:10:34.117 に答える
0

xargsとの間のパイプは何catですか?試す

xargs cat | MyCommand

または、より良い、

xargs -R -1 -I file cat "file" | MyCommand

スペースなどを含むファイル名を適切に処理するため。

代わりに、各ファイルでMyComandを呼び出す場合は、

local IFS="\n"
while read filename; do
  MyCommand < $filename
done

役に立つかもしれません。

于 2010-01-30T20:28:24.357 に答える