不知何故,我有一个名为“secret\r-.tar.gz”的 tar 文件。
请注意,它\r
在名称中。
我尝试按照 SSH 命令进行移动,但它们都不起作用:
mv secret\r-.tar.gz ../
mv secret\\r-.tar.gz ../
mv secret\\r-.tar.gz ../
mv "secret\r-.tar.gz" ../
一切都出现错误:
mv: 无法统计 `secret\r-.tar.gz': 没有这样的文件或目录
你们能指出我正确的方向吗?
答案1
如果该文件实际上被称为secret\r-.tar.gz
,mv "secret\r-.tar.gz" ../
应该可以工作。
如果\r
确实是回车符,则需要有一个字面回车符(而不是转义符):
mv $'secret\r-.tar.gz' ..
答案2
通常可以使用通配符(*
或?
)来处理文件名中难以键入的字符。例如:
mv secret?-.tar.gz something-more-appropriate.tar.gz
您可能想首先使用echo
或ls
来确定您得到的内容。