LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1288|回复: 5

cp命令求助如何排除所有链接

[复制链接]
发表于 2009-10-1 18:59:35 | 显示全部楼层 |阅读模式
哪位大哥教教我咋样cp目录的时候既不复制目录里的链接也不复制链接指向的文件阿...就是自动跳过任何软硬链接来复制目录....-___-!!
 楼主| 发表于 2009-10-1 19:00:29 | 显示全部楼层
谢谢阿...
回复 支持 反对

使用道具 举报

发表于 2009-10-1 22:06:18 | 显示全部楼层
[php][ ! -L $i ] && [ ! -h $i ] && cp $i dest_dir[/php]
-L 用来判断 一个文件是否为软链接
-h 用来判断已过文件是否为硬链接
回复 支持 反对

使用道具 举报

发表于 2009-10-1 23:40:40 | 显示全部楼层
排除软连接是可以的,

至于硬连接,依我所知道的
ln source dest  之后,source 和dest是平等的,既可以说source是dest的硬连接,也可以说dest是source的硬连接,所以无法判断应该舍去哪一个文件
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-2 13:05:18 | 显示全部楼层
我这么写为啥报错呢-___-!!

for files in "/boot/*"; do if [ ! -L $files ]; then echo $files; fi; done
bash: [: too many arguments
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-2 13:13:52 | 显示全部楼层
sorry...明白了///...少引号...-___-!!
for files in /boot/*;  do if [ ! -L "$files" ] ;  then  echo "$files";  fi;  done
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表