@yanglt7
2017-12-17T16:39:32.000000Z
字数 3239
阅读 802
Linux
1. 复制、删除与移动:cp,rm,mv
(1)cp
复制文件或目录
选项 | 参数 |
---|---|
-a | -dr --preserve=all |
-d | 若source属性为link file,则复制link file属性而非文件本身 |
-f | 为强制(force)的意思,若目标文件已存在且无法开放,则移除后再尝试一次 |
-i | 若目标文件已经存在时,在覆盖时先询问动作的进行 |
-l | 进行hard link的link file建立,而非复制文件本身 |
-p | 连同文件的属性(权限、用户、时间)一起复制过去,而非使用预设属性 |
-r | 用于目录的复制 |
-s | 复制成为symbolic link,即捷径档案 |
-u | destination比source旧才更新destination,或destination不存在的情况下才复制 |
(2)rm
移除文件或目录
选项 | 参数 |
---|---|
-f | force,忽略不存在的文件,不会出现警告讯息 |
-i | 互动模式,在删除前会询问使用者时是否动作 |
-r | 常用在目录的删除,将目录下的所有文件包括子目录全部删掉 |
(3)mv
移动文件或目录,或更名
选项 | 参数 |
---|---|
-f | force,如果目标文件已经存在,不会询问而是直接覆盖 |
-i | 若目标文件已经存在时,就会询问是否覆盖 |
-u | 若目标文件已经存在,且source比较新,才会更新 |
2.取得路径的文件名称和目录名称
(1)basename
取最后的文件名
(2)dirname
取目录名
3.文件内容查阅
指令 | 用途 |
---|---|
cat | 由第一行开始显示文件内容 |
tac | 从最后一行开始显示,可以看出tac是cat的倒写 |
nl | 显示的时候,顺便输出行号 |
more | 一页一页的显示文件内容 |
less | 与more类似,但是比more更好的是,它可以往前翻页 |
head | 只看头几行 |
tail | 只看末尾几行 |
od | 以二进位的方式读取档案内容 |
3.1 直接检视文件内容
(1)cat(concatenate,连续)
选项 | 参数 |
---|---|
-A | 相当于-vET的整合选项,可列出一些特殊字符而不是空白而已 |
-b | 列出行号,仅针对非空白行做出行号显示,空白行不标行号 |
-E | 将结尾的断行字元$表示出来。 |
-n | 列出行号,连同空白行也会有行号,与-b的选项不同 |
-T | 将[Tab]按键显示为^,因为Tab和空白的效果差不多,易于分辨 |
-v | 列出一些看不出来的字符 |
(2)tac(反向列示)
(3)nl(添加行号打印)
选项 | 参数 |
---|---|
-b | 指定行号指定的方式,主要有两种: |
-b a | 表示不论是否为空行,也同样列出行号,类似(cat -n); |
-b t | 如果有空行,空的那一行不要列出行号(预设值) |
-n | 列出行号表示的方法,主要有三种: |
-n ln | 行号在屏幕的最左方显示; |
-n rn | 行号在栏位的最右方显示,且不加0; |
-n rz | 行号在栏位的最右方显示,且加0 |
-w | 行号栏位占用的字元数 |
3.2 可翻页检视
(4)more(一页一页翻动)
按键 | 指令 |
---|---|
空白键 | 向下翻一页 |
Enter | 向下翻一行 |
/字串 | 在这个显示的内容当中,向下搜寻【字串】这个关键字 |
:f | 立即显示出文件名以及目前显示的行数 |
q | 立即离开more,不再显示该文件内容 |
b或[Ctrl]+b | 往回翻页,这动作只对文件有用,对管线无用 |
(5)less(一页一页翻动)
按键 | 指令 |
---|---|
空白键 | 向下翻一页 |
【PGDN】 | 向下翻一页 |
【PGUP】 | 向上翻一页 |
/字串 | 向下搜寻【字串】 |
?字串 | 向上搜寻【字串】 |
n | 重复前一个搜寻 |
N | 反向的重复前一个搜寻 |
g | 前进到文件内容的第一行 |
G | 前进到文件内容的最后一行 |
q | 离开less |
3.3 资料截取
(6)head(取出前面几行)
(7)tail(取出后面几行)
3.4 非纯文字文件 : od
选项 | 参数 |
---|---|
a | 利用预设的字元来输出 |
c | 使用ASCII字元来输出 |
d[size] | 利用十进制(decimal)来输出,每个整数占用 size bytes; |
f[size] | 利用浮点数值(floating)来输出,每个数占用 size bytes; |
o[size] | 利用八进制(octal)来输出,每个整数占用 size bytes; |
x[size] | 利用十六进制(hexadecimal)来输出,每个整数占用 size bytes; |
3.5 修改文件时间或建立新文件:touch
三个指令中间用 ; 隔开即可同时依序执行。
touch [-acdmt] 文件
选项 | 参数 |
---|---|
-a | 仅修订access time |
-c | 仅修改文件的时间,若该文件不存在则不建立新文件 |
-d | 后面可以接欲修订的日期而不是用目前的日期,也可以使用 --date=“日期或时间” |
-m | 仅修改mtime |
-t | 后面可以接欲修订的时间而不用目前的时间。格式为【YYYYMMDDhhmm】 |