md5deepによって検証されるように.hashで終わるすべてのファイルを追加するスクリプトを作成しようとしています。名前にスペースがあるファイルは、このスクリプトを破るようです。私は "O S.hash" と呼ばれるファイルでスクリプトを実行するたびに、私はmd5deepのような入力を浸透しますXVAR="$XVAR -x $f "
bashスクリプトのスペースをエスケープする
XVAR="$XVAR -x \'$f\' "
にまたはXVAR="$XVAR -x \"$f\" "
変更した場合は
O: No such file or directory
になるだろう
#!/bin/bash
XVAR=""
for f in *.hash
do
XVAR="$XVAR -x $f "
done
md5deep -e $XVAR -r *
"O代わりに
"O: No such file or directory
eスクリプト内の変数の町は-x 'O S.hash'
または-x "O S.hash"
などmd5deep -e -x "O S.hash" -r *
作品としてシェルでコマンドを手動で入力としてXVARを示していますが、そのスクリプト内のコマンドは、これは素敵なソリューションではありません
'.hash'ファイルを含むサブディレクトリがある場合、これは不要なファイルがコマンドラインに表示される原因になります。 –
ちょうど '-maxdepth 1'を追加してください。 –
は完全に動作します:) – anselm