本帖最后由 mfkwwgi 于 2011-11-22 11:54 编辑 欲达到的效果 找到复合条件的文件,复制到/tmp下,新的文件名为原目录名加上.log,如下 find . -name '*2011-11-21.log' | xargs -I {} cp -rf {} /tmp/$(awk -F'/' '{print $2".log"}')<<<{} 但报错 cp: target `fax.log' is not a directory 当前目录结构如下:[code][root@localhost logs]# tree . |-- send | `-- 2011-11-18.log2011-11-21.log `-- fax `-...
by mfkwwgi - Shell - 2011-11-22 13:37:10 阅读(2774) 回复(7)
要用shell编程实现cp程序,也就是COPY 路径,磁盘空间,文件类型等问题都解决了~ 唯一一个问题就是,如果把这个文件搞到目的目录中去? 最初,我用cat,结果是cat的中文文件名是无效编码 现在,用的tar,压缩源文件,再解压指定路径到目的目录, 这样是否可行?
程序创建有三个线程的线程池。任务队列里每个任务都是将一个文件的内容复制到另一个文件里。
现在状态是,复制单个文件没问题,复制一个目录且目录里没有子目录也没问题。
如果目录里有一个子目录,这样貌似没有问题,但是如果有多个子目录,就会出现各种问题。
弄了一个晚上了,各种惆怅,求救各位老大帮忙看看。
本人新手,代码比较乱真的非常抱歉。
[code]#include
服务器是Dell的2950,挂了一个MD1000的盘柜,带了10块raid0的1T硬盘。 最初发现这个问题是在执行ls的时候 ls大概几千到几万的文件的时候,就会卡很久,这时候按Ctrl+C结束命令也要5-10秒之后才起作用。 如果这时有cp进程在拷文件,则整个shell都非常地卡。 而如果将上述ls的结果重定向到文件,则瞬间完成并返回。所以我初步推断是标准输入输出设备方面有不响应的问题了。 请问高人,有没有人知道这到底是什么原因,该怎么解决。
将当前目录中所有后缀为。Log的日志行数统计追加到当前目录的codelines.txt文件中并复制到/server/ cache目录下。非常感谢
cp命令拷贝目录时,不同的前提下会有不同的结果。 总结如下: 1. 拷贝目录时必须加上-R或-r,否则提示出错。 2. cp -r SrcDir DesDir ,如果DesDir存在,则SrcDir拷贝到DesDir中。 3. cp -r SrcDir DesDir ,如果DesDir不存在,则创建DesDir,将SrcDir的子目录拷贝到DesDir中。 4. cp -r SrcDir/ DesDir,多一个“/”是没有差别的 而在FreeBSD中 1. cp –r SrcDir DesDir(和上面相同) 2. cp –r SrcDir/ Des...
在当前目录做一个文件副本,输入: cp prog.c prog.bak 这将复制 prog.c 到 prog.bak。如果 prog.bak 现在不存在,则 cp 命令创建它。如果它存在,cp 命令用 prog.c 命令的副本取代它。 复制您当前目录下的一个文件到另一个目录,输入: cp jones /home/nick/clients 这将复制 jones 文件到 /home/nick/clients/jones。 复制一个文件到一个新的文件并保存与源文件相关联的修改日期、时间和访问控制列表,输入: cp -p smith...
cp 使用权限:所有使用者 使用方式: cp [options] source dest cp [options] source... directory 说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。 把计? -a 尽可能将档案状态、权限等资料都照原状予以复制。 -r 若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。 -f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。 范例: 将档案 aaa 复制(已存在),并命名为 bbb...