Bashスクリプト:特定のファイルの末尾にファイルをコピーする

Bashスクリプト:特定のファイルの末尾にファイルをコピーする

保存ファイルを自動的にバックアップするbashスクリプトを作成しようとしました。

かなり遠くに来ましたが、最後の部分が混乱しています。私のコマンド:

cp -v -r "$dir_loc/$name_pattern.*" "$backup_loc"

ゲームが保存されているファイルをコピーしたいです。だから待ってSAVEGAME.0/1/2、あなたができることを知っています。SAVEGAME.*

しかし、bashスクリプトでこれを試してみると、そのようなファイルやディレクトリは存在しないと言います。

助けが必要ですか?

編集:見つけました。 @pfnuesel ありがとう

.*引用符の中に含めないでください。

cp -v -r "$dir_loc/$name_pattern".* "$backup_loc"

答え1

拡張しないように * を引用符で囲みます。つまり、名前がある名前を探しますSAVEGAME.*

答え2

あなたのアイデアは基本的に妥当なので、別の問題、誤字などがあるかもしれません。これはあなたがすべてをするときに明らかになりますecho。たとえば、

echo "dir_loc=$dirloc"
echo "name_pattern=$name_pattern"
if [ ! -d backup_loc ] ; then
    echo "backup_loc does not exist"
fi
cp -v -r "$dir_loc/$name_pattern.*" "backup_loc"

backup_loc(この場合はあるべきだと思います$backup_locが、これは純粋に私の推測です)

関連情報