![复制文件到备份文件脚本](https://linux22.com/image/1131002/%E5%A4%8D%E5%88%B6%E6%96%87%E4%BB%B6%E5%88%B0%E5%A4%87%E4%BB%BD%E6%96%87%E4%BB%B6%E8%84%9A%E6%9C%AC.png)
我需要做以下我已经开始做的事情:
- 提示用户进入文件夹并查看其是否可读
- 如果文件不可读,则需要显示一条消息并结束
- 然后将该文件夹复制到备份文件夹中
- 读取备份文件夹的每一行并显示每一行
这是我所拥有的,但是我一直收到缺少目标操作数的错误。
echo -n "Please enter a file name:" read file if [ -r "$file" ] then echo [ $file ] >> /home/shawn/backupfile.txt while IFS= read -r line do printf '%s\n' "$line" done < "$file" else echo "File is not readable or does not exist" fi
答案1
cp $file >> backupfile.txt
应该:
cp "$file" backupfile.txt
>>
用于附加输出,这不是您需要做的。
其他事情:
- 引用你的变量:使用
"$file"
。如果用户输入会发生什么File Name With Spaces
? file=$file
是同义反复。而且没有必要。