LinuxSir.cn,穿越时空的Linuxsir!

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

文件移动问题。

[复制链接]
发表于 2007-2-14 14:35:38 | 显示全部楼层 |阅读模式
我想把/home/sx/a/nn.txt   移到 /home/ys/a/下。把/home/sx/b/nn.txt 移到/home/ys/b下。以此类推,差不多在/home/sx下和/home/ys下有两百多个对应的同名文件夹。现在是把/home/sx/*/nn.txt 一一对应移到/home/ys/*/下。nn.txt 虽然名字相同但内容不一样所以得对应移动。另外sx和ys下的这种a,b,c...文件夹下也有其它文件不能弄掉的。
   不知有没有一条简单的shell组合命令一次实现,在线等,谢谢!
发表于 2007-2-14 15:04:32 | 显示全部楼层
在线等,不如去irc
cp -r /home/sx /tmp
把/tmp/sx里不要的文件都删除
cp -r /tmp/sx/* /home/ys
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-14 15:21:50 | 显示全部楼层
版主不行啊,这不把/home/ys/下原先a,b,c等文件夹下的 东东弄掉了。没敢试。
回复 支持 反对

使用道具 举报

发表于 2007-2-14 15:38:33 | 显示全部楼层
cp -ur /home/sx/* /home/ys/
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-14 20:30:38 | 显示全部楼层
Post by davidleels
cp -ur /home/sx/* /home/ys/
这么要把sx/*/下的全部都cp 过去。我只要nn.txt过去。下午用了个笨方法。

cd  /home/sx/
for i in *  ;  do
mv   /home/sx/$i/nn.txt  /home/ys/$i/ ;
done

这样就一一对应的移过去了。不需要的也就没过去。
回复 支持 反对

使用道具 举报

发表于 2007-2-14 22:08:27 | 显示全部楼层
原来所有的文件名都一样,@@
还以为你只是举例
如果是这样,那么你的方法也是我能想到的最好方法
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-14 22:11:42 | 显示全部楼层
是的,正因为子文夹相同,平时他们把一些文件全部放到另一个大目录里去了。这种情况还是很多的,前几天装了个mplayer的插件, mplayerplug-in.mo 在/usr/local/share/locale/zh_CN/LC_MESSAGES下不能显中文。把他移到/usr/share/locale/zh_CN/LC_MESSAGES/下就正常 了,刚才用同样的方法把其它语言的mo也移了过去。
mv /usr/local/share/locale/$i/LC_MESSAGES/mplayerplug-in.mo   /usr/share/locale/$i/LC_MESSAGES/

不过有些语言目录没有mplayerplug-in.mo 会弹警告信息,但不影响整体移动。
回复 支持 反对

使用道具 举报

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

本版积分规则

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