今天测试mac的scp命令时,使用后报错 bash: scp: command not found。
提示scp的命令找不到,但是查找发现命令是存在的
[root@localhost ~]# whereis scp scp: /usr/bin/scp /usr/share/man/man1/scp.1.gz [root@localhost ~]# find / -name scp /usr/bin/scp
只有一个解释,那就是远程机器上没有安装scp。
于是验证了下远程机器,果然没有安装。
ssh进入远程机器,安装scp
[root@localhost ~]# yum install openssh-clients
这时在测试scp命令,OK. 问题解决。
那SCP能否过滤文件或子目录呢?
遗憾的是不能或者说不是很方便,不过可以使用rsync工具来实现。
rsync -av --exclude '*.svn' user@server:/my/dir .
为什么不说不是很方便?因为网上看到的有些解决方案是通过正则表达式来实现的。如:
scp -r [!.]* server:/path/to/something
这个例子就是将当前目录下除了“.***"格式的文件传输到server上。