linux中怎么复制文件夹里面内容到另一个文件夹。包括隐藏文件。

[复制链接]
查看11 | 回复3 | 2009-1-10 00:51:01 | 显示全部楼层 |阅读模式
比如/home 和/aaa 把/home下的文件包括隐藏文件,复制到/aaa
我用cp -r /home /aaa 结果把整个/home复制到/aaa下了。
又用cp -r /home/* /aaa结果隐藏文件又没复制过去。
我只想用一条命令。不要再用cp -r /home/.* /aaa
有人有办法吗?

还有就是如果不想把文件夹里面的“.”“..”两个复制过去,怎么办。
网上看到有人说用正则式,不过我刚接触linux,不是很懂。而且他上面的符号没标清楚,分不清楚单引号反引号。有简单点的吗?
/aaa不是空目录。 不是这样的,“.”“..”是每个文件夹都有,可是你如果/home/aaa和/bbb 你用cp -rf /home/aaa/.* /bbb,那么由于“.”“..”和“-r”存在的原因-r是递归。就会把上级所有东西都复制。即,你会看到/bbb中有/home整个文件夹。 意思使这个,上面可能你们没理解清楚。 正则式是我看到一个和我问题相似的人的回答,他是只要复制隐藏文件,用grep的正则式是把“.”“..”过滤掉,就不会把上级目录也复制了。可懂?

回复

使用道具 举报

千问 | 2009-1-10 00:51:01 | 显示全部楼层
还有就是如果不想把文件夹里面的“.”“..”两个复制过去,怎么办。 我晕..这个不是文件,而是本级目录标示和上级目录标示..在任意的目录里都有的.. 另外,cp -rt /home /aaa是将所有文件全复制的,包含隐藏文件也可以.其中-t参数是拷贝所有源的参数到目标文件(但是其实不要这个也没多大区别). 正则表达式其实和批量处理差不多,就是一次处理所有满足参数设定的表达式.不会的话,也可以通过bash来进行这样的操作. 你现在的问题已经不是你原来题目的意思了. 你原来的题目是:比如/home 和/aaa 把/home下的文件包括隐藏文件,复制到/aaa 那么我的做法并没有问题. 然而你现在的问题非常针对...
回复

使用道具 举报

千问 | 2009-1-10 00:51:01 | 显示全部楼层
不好意思,刚答错了,考虑了下: 看来真得得把. 和 .. 过滤掉才行 目前想到了两种简单的解决途经: 1.使用 ls -A 可以列出所有项目除了. .. try : cd /home; cp `ls -A` /aaa -r 2.使用du -a 会列出所有项目除了. .. 路径及大小 try : cp `du -a /home|...
回复

使用道具 举报

千问 | 2009-1-10 00:51:01 | 显示全部楼层
cp -rfa /home/* /aaa如果要复制权限的话 我想想 好像是加上, 你可man看一下参数.是当前目录 ..是上层目录算了我告诉你吧 -r 是复制目录 -f 是递归-a 尽可能的保留文件结构和属性(权限)...
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行