我正在尝试制作一个脚本来附加所有以 .hash 结尾的文件以由 md5deep 验证。名称中带有空格的文件似乎破坏了这个脚本。
#!/bin/bash
XVAR=""
for f in *.hash
do
XVAR="$XVAR -x $f "
done
md5deep -e $XVAR -r *
每当我使用名为“O S.hash”的文件运行脚本时,我都会得到
O: No such file or directory
如果我更改XVAR="$XVAR -x $f "
为XVAR="$XVAR -x \'$f\' "
或 XVAR="$XVAR -x \"$f\" "
md5deep 将输入作为“O”相互渗透
"O: No such file or directory
脚本中变量的回显将 XVAR 显示为-x 'O S.hash'
或-x "O S.hash"
在 shell 中手动输入命令,例如md5deep -e -x "O S.hash" -r *
有效,但如果它在脚本中,则命令似乎中断