![如何使用 unix 复制文件并将其移动到某个位置](https://linux22.com/image/43151/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20unix%20%E5%A4%8D%E5%88%B6%E6%96%87%E4%BB%B6%E5%B9%B6%E5%B0%86%E5%85%B6%E7%A7%BB%E5%8A%A8%E5%88%B0%E6%9F%90%E4%B8%AA%E4%BD%8D%E7%BD%AE.png)
我需要一个文件保留在同一位置,但也需要将其移动到不同的位置。
我究竟做错了什么?
cp RubyTest.sublime-settings \
~/Library/Application Support/Sublime\ Text\ 2/Packages/User
答案1
在路径周围加上引号,但将~
引号中的内容去掉:
cp RubyTest.sublime-settings \
~/"Library/Application Support/Sublime Text 2/Packages/User"
在引号内,您不能使用语法~
,但可以使用更长的语法$HOME
:
cp RubyTest.sublime-settings \
"$HOME/Library/Application Support/Sublime Text 2/Packages/User"
答案2
留在同一个位置并移动到不同的位置是不可能的 - 除非您正在讨论符号链接。
cp
会将您的文件复制到新位置,而不修改原始版本。
正如评论所说,你的大问题是文件名中的空格。将你的论点用cp
引号引起来。~
如果该字符在引号中,则不会扩展到您的主目录;要么使用$HOME
代替(用双引号展开),要么将~
引号放在外面。
cp "RubyTest.sublime-settings" \
"$HOME/Library/Application Support/Sublime Text 2/Packages/User"
cp "RubyTest.sublime-settings" \
~/"Library/Application Support/Sublime Text 2/Packages/User"