尝试制作一个脚本,在计算机之间复制一些文件并解压缩它们。 (运行 CentOS 6.7)除了部分之外,一切似乎都正常unzip
,
这是给我一些问题的命令,
ssh -i /root/.ssh/qasynd.key [email protected] 'unzip /home/root/tmp/*.zip'
忽略用户/目录结构,因为这只是命令的一部分,什么可能导致这种情况?我确实尝试将其指向/usr/bin/unzip
而不是仅仅指向unzip
。
答案1
这是 Linux zip 中一个非常常见的问题...如果你这样做
unzip *.zip
你说了三个文件:
a.zip
b.zip
c.zip
它扩展为意味着
unzip a.zip b.zip c.zip
这看起来不错,但它告诉 unzip 从 a 中解压 b 和 c,这是不正确的。这是行不通的。 (在您的本地系统上检查)。
解决办法是
unzip '*.zip'.
您需要在 ssh 中转义 ' (例如反斜杠或使用双打)。