複数のコマンドの結果を1つのテキストファイルに送信しますか?
質問
これは私がこれまで持っているものです-私のドロップボックスは URL ディレクトリの作成スクリプトパブリックURL( getdropbox.com -gplと思います)。私の LIST
ファイルは、lsを使用して次のように作成されました。
ls -d ~/Dropbox/Public/PUBLICFILES/* > LIST
dropboxpuburl.sh:
for PATH in `cat LIST`
do
echo $PATH
dropbox puburl $PATH > ~/URLLIST/$PATH
done
これで、一連のファイル全体が作成されます。各ファイルには、pubboxというpuburlが含まれています。
問題は、このスクリプトがすべてのパブリックリンクを1つのテキストファイルに、それぞれ PUBLIC-DIRECTORY-LIST という名前で新しい行にリダイレクトするようにする方法ですか?
>解決
これはあなたが達成しようとしていることですか?
for PATH in `cat LIST`
do
echo $PATH
dropbox puburl $PATH >> filename
done
他のヒント
OK、ここで提供された提案を使用して動作しています:
for PATH in `cat LIST`
do
echo $PATH
dropbox puburl $PATH
done > PUBLIC-DIRECTORY-LIST
ディレクトリのリストを作成し、その下にパブリックリンクを作成します。ここで、ディレクトリを整理してリンクのクリーンテキストファイルを作成します。
=>ファイルを作成し、最初の行に何かを追加します。 >>新しい行に追加します。
echo txt=>PUBLIC-DIRECTORY-LIST.txt |
echo another text>>PUBLIC-DIRECTORY-LIST.txt
for
を cat filename
で使用する代わりに、入力リダイレクトで read
を使用する必要があります。また、変数名の競合を避けるために、パス変数を小文字に変更しました。これは、シェルがすでにすべて大文字のパス変数を使用しているためです。インタラクティブシェルには影響しませんが、スクリプト内の何かに影響を与える可能性があります。
また、入力ファイルの行を進行状況インジケータとして画面に表示したいが、出力ファイルにキャプチャしない場合、この echo
はそれを stderrに送信します
。
while read path
do
echo $path >&2
dropbox puburl $path
done < LIST > PUBLIC-DIRECTORY-LIST
所属していません StackOverflow