スクリプトは計画どおりにファイルをループしません

スクリプトは計画どおりにファイルをループしません

ログ ファイルをループするスクリプトを入手しましたが、何かを変更したため動作しません。

#!/bin/sh
n=
while true
do
    fname="trace$n.log"
    [ -f "$fname" ] || break
    n=$(($n+1))
done
traceroute google.com >"$fname"

変更後:

#!/bin/sh
n=
while true
do
    fname="trace$n.log"
    [ -f "$fname" ] || break
    n=$(($n+1))
done
traceroute google.com >~/Scripts/logs/"$fname"

最後の行が変更されたため、動作しなくなりました。
ご協力いただければ幸いです。ありがとうございます。

答え1

「動作しません」とはどういう意味ですか?

[ -f "$fname" ]間違ったディレクトリをテストしていることに注意してください[ -f ~/Scripts/logs/"$fname" ]。にしてください。

関連情報