一、常用命令
1
2
3
4
5
6
7
8
9
|
touch命令: touch [OPTION]... FILE...
-a:atime
-m:mtime
-c:ctime
access、modify、change三个时间戳的区别: Access:访问时间,atime,通过cat、more等读取其内容 Modify:修改时间,mtime,改变文件的内容 Change:改变时间,ctime,改变文件的元数据,即修改权限、属组、属主等 |
使用stat命令可查看文件的三个时间戳如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
[root@centos6 ~] # date
2016年 07月 31日 星期日 19:15:12 CST [root@centos6 ~] # stat services
File: "services"
Size: 0 Blocks: 0 IO Block: 4096 普通空文件
Device: 803h /2051dInode : 5898398 Links: 1
Access: (0644 /-rw-r--r-- ) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2016-07-22 14:40:03.027684266 +0800 Modify: 2016-07-22 14:23:57.227122945 +0800 Change: 2016-07-22 14:23:57.227122945 +0800 [root@centos6 ~] # touch -a services
[root@centos6 ~] # stat services
File: "services"
Size: 0 Blocks: 0 IO Block: 4096 普通空文件
Device: 803h /2051dInode : 5898398 Links: 1
Access: (0644 /-rw-r--r-- ) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2016-07-31 19:15:44.446454193 +0800 Modify: 2016-07-22 14:23:57.227122945 +0800 Change: 2016-07-31 19:15:44.446454193 +0800 [root@centos6 ~] # touch -m services
[root@centos6 ~] # stat services
File: "services"
Size: 0 Blocks: 0 IO Block: 4096 普通空文件
Device: 803h /2051dInode : 5898398 Links: 1
Access: (0644 /-rw-r--r-- ) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2016-07-31 19:15:44.446454193 +0800 Modify: 2016-07-31 19:16:26.497212950 +0800 Change: 2016-07-31 19:16:26.497212950 +0800 [root@centos6 ~] #
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
cp命令: cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
常用选项: -r:递归复制目录及内容的所有内容
-a:归档
-d:表示不跟踪符号链接所指向的源文件,直接复制链接文件
-p:保持原文件的属性信息
-f:强制覆盖
-v:显示过程
-R:递归复制目录及内部的所有内容
-i:交互式
-preserv=[…] mode:权限 ownership:属组 timestramp:时间戳
|
1、 如果目标文件不存在,则创建目标文件把源文件的内容复制到新建的目标文件中。
2、 如果目标文件存在,则提示覆盖目标文件的内容
如下则表示不提示用户是否覆盖:\cp chen.txt /testdir/test /usr/bin/cp chen.txt /testdir/test
1
2
3
4
5
6
7
8
9
|
mv命令: 常用选项:
-i:交互式
-f:强制
rm命令: 常用选项:
-i:交互式
-f:强制
-r:递归
|
1
2
3
4
5
|
tree命令: -d: 只显示目录
-L level:指定显示的层级数目 tree –L 2 /etc/
-P pattern: 只显示由指定pattern匹配到的路径
-p:显示权限
|
1
2
3
4
|
mkdir 创建目录 -p: 存在于不报错,且可自动创建所需的各目录;
-v: 显示详细信息
-m MODE: 创建目录时直接指定权限;
|
1
2
3
4
|
rmdir 删除空目录 -p: 递归删除父空目录
-v: 显示详细信息
rm -r 递归删除目录树
|
1
2
3
4
5
6
7
8
9
10
11
|
文件可以包含多种类型的数据 检查文文件类型,然后确定适当的开放命令或应用程序使用 file [options]< filename >...
Option: -b列出文件辨识结果时,不显示文件名称。
-c详细显示指令执行过程,便于排错或分析程序执行形
-f列出文件中文件名的文件类型
-F使用指定分隔符号替换输出文件名后默认的”:”分隔符
-i输出mime类型的字符串
-L查看对应软链接对应文件的文件类型
-z尝试去解读压缩文件的内容 --help显示命令在线帮助
|
二、重定向
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
标准输入输出: 程序:指令+数据 读入数据:Input输出数据:Output 打开的文件都有一个fd: file descriptor (文件描述符) Linux给程序提供三种I/O设备 标准输入(STDIN)-0 默认接受来自键盘的输入 标准输出(STDOUT)-1 默认输出到终端窗口 标准错误(STDERR)-2 默认输出到终端窗口 I/O重定向:改变默认位置 支持的操作符号包括: > 把输出重定向到文件 2> 把错误输出重定向到文件 &> 把所有输出重定向到文件 > 文件内容会被覆盖 # set -C: 禁止将内容覆盖已有文件,但可追加 强制覆盖:>| # set +C: 允许覆盖 >> 原有内容基础上,追加内容 > 文件内容会被覆盖 # set -C: 禁止将内容覆盖已有文件,但可追加 强制覆盖:>| # set +C: 允许覆盖 >> 原有内容基础上,追加内容 |
(1)如何创建/testdir/dir1/x, /testdir/dir1/y,/testdir/dir1/x/a, /testdir/dir1/x/b, /testdir/dir1/y/a, /testdir/dir1/y/b
mkdiri –p /testdir/dir1/{x/{a,b},y/{a,b}}
(2)如何创建/testdir/dir2/x, /testdir/dir2/y,/testdir/dir2/x/a, /testdir/dir2/x/b
mkdir -pv /testdir/dir2/{x/{a,b},y}
(3)如何创建/testdir/dir3, /testdir/dir4,/testdir/dir5, /testdir/dir5/dir6, /testdir/dir5/dir7
mkdir –p /testdir/dir{3,4,5/dir{6,7}}
mkdir –p /testdir/{dir3,dir4,dir5/{dir6,dir7}}
(4)使用别名命令,每日将/etc/目录下所有文件, 备份到/testdir/下独立的新目录下,并要求新目录 格式为 backupYY-mm-dd ,备份过程可见
alias cp=’cp –av /etc /testdir/backup`date +%F`’
(5)先创建/testdir/rootdir目录,再复制/root所有 下文件到该目录内,并要求保留原有权限
cp /root/ -R --preserv=mode/testdir/rootdir 或者:cp -av /etc /testdir/backup$(date)
本文转自chengong1013 51CTO博客,原文链接:http://blog.51cto.com/purify/1831626,如需转载请自行联系原作者