我有一个简单的脚本来在目录之间移动文件。基本上,它是:
mv /dir/* /dir/proc/
保存到shell脚本“mvproc.sh”。
出于某种原因,当我运行脚本(sh mvproc.sh)时,文件确实被移动了,但是它不保留文件名而只是一个空文件名。当我在bash提示符下运行相同的命令时,它可以正常工作。
这个脚本曾经在Debian上工作正常,但我们遇到了硬盘驱动器故障,现在我正在将所有内容迁移到Ubuntu机器上。
知道为什么会这样吗?看起来很简单,但我无法弄清楚。
非常感谢。
...编辑
我想我找到了解决方案。出于某种原因,它会在Notepad ++甚至gedit中编辑sh脚本时放入回车和换行符或者我看不到的东西。要解决这个问题,当我在gedit中打开脚本时,我会执行另存为,并在下拉菜单中选择Unix / Linux。这有望摆脱奇怪的回车,即使我看不到它们。
希望这有助于像我这样的一些可怜的灵魂在未来将头发拉出来!
谢谢!
答案 0 :(得分:0)
尝试:mv /dir/file /dir/proc/file
您确实正在移动文件,但未指定目标名称。 mv
的其他用法:
移动并重命名:mv /dir/filename /dir/proc/newfilename
重命名:mv /dir/filename /dir/newfilename