LinuxSir.cn,穿越时空的Linuxsir!

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

复制文件的时候的一个问题

[复制链接]
发表于 2010-3-9 16:56:43 | 显示全部楼层 |阅读模式
cp ./aaa/bbb/*.* /opt/fdfds/ddd/
一般情况 下是没问题的。
想把前面的文件夹里的文件全复制到后面的文件夹里。
不复制文件夹。
近年来遇见一个带扩展名的文件夹。
这个命令总是出错误信息。显然不加参数-r是不能复制文件夹的。
怎样能明确指出就是复制文件呢。
发表于 2010-3-9 20:30:08 | 显示全部楼层
^有些问题可能很简单,也有可能很复杂,呵呵^

试试这样可不可以:
  1. cp $(find ./aaa/bbb -type f) /opt/fdfds/ddd/
复制代码

PS:嗯,这个命令是把./aaa/bbb下的子目录里的文件也给整出来了。给find命令加个参数就好了。
  1. cp $(find ./aaa/bbb -maxdepth 1 -type f) /opt/fdfds/ddd/
复制代码
回复 支持 反对

使用道具 举报

发表于 2010-3-9 23:14:54 | 显示全部楼层
遇到包含空格等的文件名似乎会出错吧,用"引起来比较好,或者用xargs命令?

  1. cp "$(find ./aaa/bbb -maxdepth 1 -type f)" /opt/fdfds/ddd/
复制代码

  1. find ./aaa/bbb -maxdepth 1 -type f -print0 |xargs -0 cp -t /opt/fdfds/ddd/
复制代码
回复 支持 反对

使用道具 举报

发表于 2010-3-11 11:26:50 | 显示全部楼层
另一种方式,可以试一下
cp $(ls -l ./aaa/bbb | grep ^- | awk '{print $9}') /opt/fdfds/ddd/
回复 支持 反对

使用道具 举报

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

本版积分规则

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