需要帮助。这是我用来将文件从垃圾箱目录恢复到其原始位置的脚本。它之前位于根目录中。然后使用其他脚本将其“删除”并存储在垃圾箱目录中,并且使用以下命令将其以前的位置记录在存储文件中:
case $ans in
y) echo "`readlink -f $1`" >>home/storage & mv $1 /home/dustbin ;;
n) echo "File not deleted." ;;
*) echo "Please input answer." ;;
esac
因此,当使用下面的脚本时,我应该恢复已删除的文件,但出现以下错误。
#!/bin/sh
if [ "$1" == "-n" ] ; then
cd ~/home/dustbin
restore="$(grep "$2" "$home/storage")"
filename="$(basename "$restore")"
echo "Where to save?"
read location
location1="$(readlink -f "$location")"
mv -i $filename "$location1"/$filename
else
cd ~/home
storage=$home/storage
restore="$(grep "$1" "$storage")"
filename="$(basename "$restore")"
mv -i $filename $restore
fi
给出的错误 -mv: missing file operand
编辑:
好吧,我把我的脚本改成了这样。
#!/bin/sh
if [ $1 ] ; then
cd ~/home
storage=~/home/storage
restore="$(grep "$1" "$storage")"
filename="$(basename "$restore")"
mv -i "$filename" "$restore"
fi
我仍然得到错误:
mv:无法统计“文件名”:没有这样的文件或目录