为什么 scp 命令在 csh 和 bash 中的行为不同?
相同的命令在 csh shell 中可以运行,但在 bash shell 中却不行。
请问有人可以帮忙吗?
bash-3.2$ csh
Linux-007% scp [email protected]:/{/root/install.log} /
install.log 100% 98KB 97.6KB/s 00:00
Linux-007% which scp
/usr/bin/scp
Linux-007% bash
bash-3.2$ scp [email protected]:/{/root/install.log} /
scp: /{/root/install.log}: No such file or directory
bash-3.2$ which scp
/usr/bin/scp
答案1
scp
不是问题。问题在于两个 shell 处理花括号的方式。
csh% echo [email protected]:/{/root/install.log}
[email protected]://root/install.log
bash$ echo [email protected]:/{/root/install.log}
[email protected]:/{/root/install.log}
你为什么需要花括号呢?