7,mv命令
功能:来移动文件或者将文件重命名(文件内容能覆盖),文件夹移动,文件夹下文件移动
主要参数: -f 果目标文件已经存在,不会询问而直接覆盖;
-i 目标文件 (destination) 已经存在时,就会询问是否覆盖!
-b选项文件覆盖前做简单备份
-t 此时目标目录在前,源文件在后。
(1)重命名
ligang@centos6 test]$ ll total 4 -rw-r--r-- 1 ligang trainning 0 Mar 10 00:01 log2.txt drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:01 test1 -rw-r--r-- 1 ligang trainning 0 Mar 10 00:01 test.txt [ligang@centos6 test]$ mv log2.txt test.txt [ligang@centos6 test]$ ll total 4 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:01 test1 -rw-r--r-- 1 ligang trainning 0 Mar 10 00:01 test.txt
(2)文件内容覆盖
[ligang@centos6 test]$ ll total 12 -rw-r--r-- 1 ligang trainning 7 Mar 10 00:04 log1.txt drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:04 test1 -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 test.txt [ligang@centos6 test]$ cat log1.txt bcdefg [ligang@centos6 test]$ cat test.txt 123456 [ligang@centos6 test]$ mv test.txt log1.txt [ligang@centos6 test]$ cat log1.txt 123456
(3)文件夹下移动
[ligang@centos6 test]$ ^C [ligang@centos6 test]$ ll total 8 -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:04 test1 [ligang@centos6 test]$ touch log2.txt [ligang@centos6 test]$ mv lo* test1 [ligang@centos6 test]$ ll total 4 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:10 test1 [ligang@centos6 test]$ ll test1/ total 4 -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 10 00:10 log2.txt [ligang@centos6 test]$
(4)一大堆文件放入一个目录中
[ligang@centos6 test]$ ll total 4 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:10 test1 [ligang@centos6 test]$ mv test1/* ./ // 注把test下文件放在当前文件夹下不能用 mv test1 ./ [ligang@centos6 test]$ ll total 8 -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 10 00:10 log2.txt drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:18 test1 [ligang@centos6 test]$ ll test1/ total 0 [ligang@centos6 test]$ mv -t test1/ log1.txt log2.txt [ligang@centos6 test]$ ll total 4 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:19 test1 [ligang@centos6 test]$ ll test1/ total 4 -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 10 00:10 log2.txt [ligang@centos6 test]$
(5)-b选项文件覆盖前做简单备份
ligang@centos6 test]$ ll total 0 -rw-r--r-- 1 ligang trainning 0 Mar 9 23:34 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 9 23:34 log2.txt [ligang@centos6 test]$ mv -b log1.txt log2.txt [ligang@centos6 test]$ ll total 0 -rw-r--r-- 1 ligang trainning 0 Mar 9 23:34 log2.txt -rw-r--r-- 1 ligang trainning 0 Mar 9 23:34 log2.txt~
8 ,cp命令
功能:用来复制文件或者目录到某个目录下,如果目录或文件存在问是否存在
(1)复制文件到某个文件夹下,重复操作没有出现提示是否覆盖
[ligang@centos6 test]$ ll total 4 -rw-r--r-- 1 ligang trainning 0 Mar 10 00:35 haha.txt drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:19 test1 [ligang@centos6 test]$ cp haha.txt test1/ [ligang@centos6 test]$ ll test1/ total 4 -rw-r--r-- 1 ligang trainning 0 Mar 10 00:36 haha.txt -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 10 00:10 log2.txt [ligang@centos6 test]$ cp haha.txt test1/ [ligang@centos6 test]$ ll test1/ total 4 -rw-r--r-- 1 ligang trainning 0 Mar 10 00:36 haha.txt -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 10 00:10 log2.txt
(2)cp不能直接把文件夹复制给另外一个文件夹,否者要加参数-rf。如果要把一个文件夹下内容复制给另外一个文件夹则用dir/*
[ligang@centos6 test]$ cp test2/ test1 cp: omitting directory `test2/' [ligang@centos6 test]$ cp -rf test2/ test1 [ligang@centos6 test]$ ll total 12 -rw-r--r-- 1 ligang trainning 5 Mar 10 00:37 haha.txt drwxr-xr-x 3 ligang trainning 4096 Mar 10 00:42 test1 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:40 test2 [ligang@centos6 test]$ mkdir test3 [ligang@centos6 test]$ cp -af test3 test1 [ligang@centos6 test]$ ll test1 total 16 -rw-r--r-- 1 ligang trainning 5 Mar 10 00:37 haha.txt -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 10 00:10 log2.txt drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:42 test2 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:42 test3 [ligang@centos6 test]$ mkdir test4 [ligang@centos6 test]$ c test4 -bash: c: command not found [ligang@centos6 test]$ cd test4 [ligang@centos6 test4]$ touch test.txt [ligang@centos6 test4]$ cd .. [ligang@centos6 test]$ cp -rf test4/ test1 [ligang@centos6 test]$ ll test1 total 20 -rw-r--r-- 1 ligang trainning 5 Mar 10 00:37 haha.txt -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 10 00:10 log2.txt drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:42 test2 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:42 test3 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:45 test4 [ligang@centos6 test]$ cp test4/* test1 [ligang@centos6 test]$ ll test1 total 20 -rw-r--r-- 1 ligang trainning 5 Mar 10 00:37 haha.txt -rw-r--r-- 1 ligang trainning 7 Mar 10 00:07 log1.txt -rw-r--r-- 1 ligang trainning 0 Mar 10 00:10 log2.txt drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:42 test2 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:42 test3 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:45 test4 -rw-r--r-- 1 ligang trainning 0 Mar 10 00:45 test.txt
9,touch
功能:用来修改文件时间戳,或者新建一个不存在的文件。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间。格式: [[CC]YY]MMDDhhmm[.SS]
ligang@centos6 test]$ touch -t 20151121 test.txt touch: invalid date format `20151121' [ligang@centos6 test]$ touch -t 20151121100037 test.txt touch: invalid date format `20151121100037' [ligang@centos6 test]$ touch -t 201511211000.37 test.txt [ligang@centos6 test]$ ll test.txt -rw-r--r-- 1 ligang trainning 0 Nov 21 2015 test.txt [ligang@centos6 test]$ touch -r haha.txt test.txt [ligang@centos6 test]$ ll total 20 -rw-r--r-- 1 ligang trainning 5 Mar 10 00:37 haha.txt drwxr-xr-x 5 ligang trainning 4096 Mar 10 00:45 test1 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:40 test2 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:42 test3 drwxr-xr-x 2 ligang trainning 4096 Mar 10 00:44 test4 -rw-r--r-- 1 ligang trainning 0 Mar 10 00:37 test.txt [ligang@centos6 test]$