linux命令(mv,cp,touch)

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)文件内容覆盖centos

[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)文件夹下移动bash

[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)一大堆文件放入一个目录中spa

[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选项文件覆盖前作简单备份code

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/*orm

[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,touchblog

功能:用来修改文件时间戳,或者新建一个不存在的文件。文档

-r  把指定文档或目录的日期时间,通通设成和参考文档或目录的日期时间相同。it

-t  使用指定的日期时间,而非如今的时间。格式: [[CC]YY]MMDDhhmm[.SS]  io

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]$