1 文件管理
1.1 basename
1.1.1 功能说明
从文件名中去掉路径和扩展名
例:basename include/stdio.h .h
Output "stdio".
1.1.2 选项
--help
显示此帮助信息并离开
--version 显示版本信息并离开
1.2 cat
1.2.1 功能说明
把档案串连接后传到基本输出(屏幕或加 > filename 到另一个档案)
1.2.2 语 法
cat [-AbeEnstTuv] [--help] [--version] filename
1.2.3 参数
-n 或 --number 由 1 开始对所有输出的行数编号
-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 --show-nonprinting
范例:
cat -n textfile1 > textfile2 把 textfile1 的档案内容加上行号后输入 textfile2 这
个档案里
cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的档案内容加
上行号(空白行不加)之后将内容附加到 textfile3 里。
1.3 cd
1.3.1 功能说明
切换目录。
1.3.2 语法
cd [目的目录]
1.3.3 补充说明
cd 指令可让用户在不同的目录间切换,但该用户必须拥有足够的权限进入目的目录。
1.4 chgrp
1.4.1 功能说明
变更文件或目录的所属群组。
语法:
chgrp [-cfhRv][--help][--version][所属群组][文件或目录...]
或 chgrp [-cfhRv][--help][--reference=<参考文件或目录>][--version][文件或目
录...]
在 UNIX 系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用 chgr
p 指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆可。
1.4.3 参数
-c 或--changes
效果类似"-v"参数,但仅回报更改的部分。
-f 或--quiet 或--silent
-h 或--no-dereference
-R 或--recursive
-v 或--verbose
--help
不显示错误信息。
只对符号连接的文件作修改,而不更动其他任何相关文件。
递归处理,将指定目录下的所有文件及子目录一并处理。
显示指令执行过程。
在线帮助。
--reference=<参考文件或目录>
或目录的所属群组相同。
--version
把指定文件或目录的所属群组全部设成和参考文件
显示版本信息。
1.5 chmod
1.5.1 功能说明
变更文件或目录的权限。
语法:
chmod [-cfRv][--help][--version][<权限范围>+/-/=<权限设置...>][文件或目
录...]
或 chmod [-cfRv][--help][--version][数字代号][文件或目录...]
或 chmod [-cfRv][--help][--reference=<参考文件或目录>][--version][文件或目
录...]
1.5.2 补充说明
在 UNIX 系统家族里,文件或目录权限的控制分别以读取,写入,执行 3 种一般权限来区分,
另有 3 种特殊权限可供运用,再搭配拥有者与所属群组管理权限范围。您可以使用 chmod
指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变
更,如果您对符号连接修改权限,其改变会作用在被连接的原始文件。权限范围的表示法如
下:
u:User,即文件或目录的拥有者。
g:Group,即文件或目录的所属群组。
o:Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。
a:All,即全部的用户,包含拥有者,所属群组以及其他用户。
有关权限代号的部分,列表于下:
r:读取权限,数字代号为"4"。
w:写入权限,数字代号为"2"。
x:执行或切换权限,数字代号为"1"。
-:不具任何权限,数字代号为"0"。
1.5.3 参数
-c 或--changes
效果类似"-v"参数,但仅回报更改的部分。
-f 或--quiet 或--silent
-R 或--recursive
-v 或--verbose
--help
不显示错误信息。
递归处理,将指定目录下的所有文件及子目录一并处理。
显示指令执行过程。
在线帮助。
--reference=<参考文件或目录>
录的权限相同
--version
把指定文件或目录的权限全部设成和参考文件或目
显示版本信息。
<权限范围>+<权限设置> 开启权限范围的文件或目录的该项权限设置。
<权限范围>-<权限设置> 关闭权限范围的文件或目录的该项权限设置。
<权限范围>=<权限设置> 指定权限范围的文件或目录的该项权限设置。
1.6 chown
1.6.1 功能说明
变更文件或目录的拥有者或所属群组。
1.6.2 语法
chown
录..]
[-cfhRv][--dereference][--help][--version][拥有者.<所属群组>][文件或目
或 chown [-chfRv][--dereference][--help][--version][.所属群组][文件或目
录... ...]
或 chown [-cfhRv][--dereference][--help][--reference=<参考文件或目录>][--versi
on][文件或目录...]
1.6.3 补充说明
在 UNIX 系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用 chow
n 指令去变更文件与目录的拥有者或所属群组,设置方式采用用户名称或用户识别码皆可,
设置群组则用群组名称或群组识别码。
1.6.4 参数
-c 或--changes
效果类似"-v"参数,但仅回报更改的部分。
-f 或--quite 或--silent
-h 或--no-dereference
-R 或--recursive
-v 或--version
不显示错误信息。
之对符号连接的文件作修改,而不更动其他任何相关文件。
递归处理,将指定目录下的所有文件及子目录一并处理。
显示指令执行过程。
--dereference
--help
效果和"-h"参数相同。
在线帮助。
--reference=<参考文件或目录>
把指定文件或目录的拥有者与所属群组全部设成和
参考文件或目 录的拥有者与所属群组相同。
--version
显示版本信息。
1.7 comm
1.7.1 功能说明
比较两个已排过序的文件。
1.7.2 语法
comm [-123][--help][--version][第 1 个文件][第 2 个文件]
1.7.3 补充说明
这项指令会一列列地比较两个已排序文件的差异,并将其结果显示出来,如果没有指定
任何参数,则会把结果分成 3 行显示:第 1 行仅是在第 1 个文件中出现过的列,第 2 行是仅
在第 2 个文件中出现过的列,第 3 行则是在第 1 与第 2 个文件里都出现过的列。若给予的文
件名称为"-",则 comm 指令会从标准输入设备读取数据。
1.7.4 参数
-1 不显示只在第 1 个文件里出现过的列。
-2 不显示只在第 2 个文件里出现过的列。
-3 不显示只在第 1 和第 2 个文件里出现过的列。
--help
--version
1.8 cp
在线帮助。
显示版本信息。1.8.1 功能说明
复制文件或目录。
1.8.2 语法
cp [-abdfilpPrRsuvx][-S <备份字尾字符串>][-V <备份方式>][--help][--spares=<
使用时机>][--version][源文件或目录][目标文件或目录] [目的目录]
1.8.3 补充说明
cp 指令用在复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个
已经存在的目录,则它会把前面指定的所有文件或目录复制到该目录中。若同时指定多个文
件或目录,而最后的目的地并非是一个已存在的目录,则会出现错误信息。
1.8.4 参数
-a 或--archive
此参数的效果和同时指定"-dpR"参数相同。
-b 或--backup
符串。
删除,覆盖目标文件之前的备份,备份文件会在字尾加上一个备份字
-d 或--no-dereference
当复制符号连接时,把目标文件或目录也建立为符号连接,
并指向与源文件或目录连接的原始文件或目录。
-f 或--force
强行复制文件或目录,不论目标文件或目录是否已存在。
-i 或--interactive
-l 或--link
对源文件建立硬连接,而非复制文件。
-p 或--preserve
-P 或--parents
-r
覆盖既有文件之前先询问用户。
保留源文件或目录的属性。
保留源文件或目录的路径。
递归处理,将指定目录下的文件与子目录一并处理。
-R 或--recursive
递归处理,将指定目录下的所有文件与子目录一并处理。
-s 或--symbolic-link
对源文件建立符号连接,而非复制文件。 -S<备份字尾字符串>或--suffix=<备份字尾字符串>
用"-b"参数备份目标文件后,备
份文件的字尾会被加上一个备份字符串,预设的备份字尾字符串是符号"~"。
-u 或--update
使用这项参数后只会在源文件的更改时间较目标文件更新时或是
称相互对应的目标文件并不存在,才复制文件。
-v 或--verbose
名
显示指令执行过程。
-V<备份方式>或--version-control=<备份方式>
用"-b"参数备份目标文件后,备份文
件的字尾会被加上一个备份字符串,这字符串不仅可用"-S"参数变更,当使用"-V"参数指定
不同备份方式时,也会产生不同字尾的备份字串。
-x 或--one-file-system
复制的文件或目录存放的文件系统,必须与 cp 指令执行时
所处的文件系统相同,否则不予复制。
--help
在线帮助。
--sparse=<使用时机>
--version
设置保存稀疏文件的时机。
显示版本信息。
1.9 cut
1.9.1 功能说明
显示每行从开头算起 num1 到 num2 的文字。
1.9.2 语法
cut -cnum1-num2 filename
1.9.3 举例
shell>> cat example
test2
this is test1
shell>> cut -c0-6 example
元
print 开头算起前 6 个字 test2
this i
1.10 dd
1.10.1
功能说明
读取,转换并输出数据。
1.10.2
语法
dd [bs=<字节数>][cbs=<字节数>][conv=<关键字>][count=<区块数>][ibs=<字节数>][if
=<文件>][obs=<字节数>][of=<文件>][seek=<区块数>][skip=<区块数>][--help][--versi
on]
1.10.3
补充说明
dd 可从标准输入或文件读取数据,依指定的格式来转换数据,再输出到文件,设备或标准
输出。
1.10.4
参数
bs=<字节数>
cbs=<字节数>
conv=<关键字>
count=<区块数>
ibs=<字节数>
if=<文件>
obs=<字节数>
of=<文件>
seek=<区块数>
将 ibs(
输入)与 obs(输出)设成指定的字节数。
转换时,每次只转换指定的字节数。
指定文件转换的方式。
仅读取指定的区块数。
每次读取的字节数。
从文件读取。
每次输出的字节数。
输出到文件。
一开始输出时,跳过指定的区块数。攻城狮论坛 bbs.vlan5.com #^_^# .
版权归原作者所有 本资料仅供试读
一开始读取时,跳过指定的区块数。
skip=<区块数>
帮助。
--help
显示版本信息。
--version
1.11 diff
功能说明
1.11.1
比较文件的差异。
语法
1.11.2
diff [-abBcdefHilnNpPqrstTuvwy][-<行数>][-C <行数>][-D <巨集名称>][-I <字符
或字符串>][-S <文件>][-W <宽度>][-x <文件或目录>][-X <文件>][--help][--left
-column][--suppress-common-line][文件或目录 1][文件或目录 2]
补充说明
1.11.3
diff 以逐行的方式,比较文本文件的异同处。所是指定要比较目录,则 diff 会比较目录中
相同文件名的文件,但不会比较其中子目录。
参数
1.11.4
-<行数>
指定要显示多少行的文本。此参数必须与-c 或-u 参数一并使用。
-a 或--text
diff 预设只会逐行比较文本文件。
-b 或--ignore-space-change
-B 或--ignore-blank-lines
-c
不检查空格字符的不同。
不检查空白行。
显示全部内文,并标出不同之处。
-C<行数>或--context<行数>
-d 或--minimal
与执行"-c-<行数>"指令相同。
使用不同的演算法,以较小的单位来做比较。
-D<巨集名称>或 ifdef<巨集名称>
此参数的输出格式可用于前置处理器巨集。
-e 或--ed
此参数的输出格式可用于 ed 的 script 文件。
-f 或-forward-ed
不同处。
输出的格式类似 ed 的 script 文件,但按照原来文件的顺序来显示
-H 或--speed-large-files
比较大文件时,可加快速度。
-l<字符或字符串>或--ignore-matching-lines<字符或字符串>
若两个文件在某几行
有所不同,而这几行同时都包含了选项中指定的字符或字符串,则不显示这两个文件的差
异。
-i 或--ignore-case
-l 或--paginate
-n 或--rcs
不检查大小写的不同。
将结果交由 pr 程序来分页。
将比较结果以 RCS 的格式来显示。
-N 或--new-file
在比较目录时,若文件 A 仅出现在某个目录中,预设会显示:
Only in 目录:文件 A 若使用-N 参数,则 diff 会将文件 A 与一个空白的文件比较。
-p
若比较的文件为 C 语言的程序码文件时,显示差异所在的函数名称。
-P 或--unidirectional-new-file
与-N 类似,但只有当第二个目录包含了一个第一个
目录所没有的文件时,才会将这个文件与空白的文件做比较。
-q 或--brief
仅显示有无差异,不显示详细的信息。
-r 或--recursive
比较子目录中的文件。
-s 或--report-identical-files
-S<文件>或--starting-file<文件>
若没有发现任何差异,仍然显示信息。
在比较目录时,从指定的文件开始比较。
-t 或--expand-tabs 在输出时,将 tab 字符展开。
-T 或--initial-tab 在每行前面加上 tab 字符以便对齐。
-u,-U<列数>或--unified=<列数>
-v 或--version
以合并的方式来显示文件内容的不同。
显示版本信息。
-w 或--ignore-all-space 忽略全部的空格字符。
-W<宽度>或--width<宽度> 在使用-y 参数时,指定栏宽。
-x<文件名或目录>或--exclude<文件名或目录>
-X<文件>或--exclude-from<文件>
<文件>中指定此文本文件。
-y 或--side-by-side
--help
不比较选项中所指定的文件或目录。
您可以将文件或目录类型存成文本文件,然后在=
以并列的方式显示文件的异同之处。
显示帮助。
--left-column
示该行内容。
在使用-y 参数时,若两个文件某一行内容相同,则仅在左侧的栏位显
--suppress-common-lines
在使用-y 参数时,仅显示不同之处。
1.12 dir
1.12.1
功能说明
列出<文件>的信息 (默认为目前的目录)。
1.12.2
语法
dir [选项]... [文件]...
1.12.3
参数
如果不指定 - cftuSUX 或 --sort 任何一个选项,则根据字母大小排序。
-a, --a--ll 不隐藏任何以 . 字符开始的项目
-A, --almost-all 列出除了 . 及 .. 以外的任何项目
--author
印出每个文件著作者
-b, --escape
符
以八进制溢出序列表示不可打印的字
--block-size=大小
-B, --ignore-backups
块以指定<大小>的字节为单位
不列出任何以 ~ 字符结束的项目
配合 -lt:根据 ctime 排序及
-c
显示 ctime (文件
状态最后更改的时间)
配合 -l:显示 ctim
e 但根据名称排序
否则:根据 ctime 排序
-C 按列列举。
-f
st 选项失效 不进行排序,-aU 选项生效,-l
-F, --classify
| 其中一个)
加上文件类型的指示符号 (*/=@
-i, --inode
印出每个文件的 inode 号
-I, --ignore=样式
不印出任何符合 shell 万用字符<样式>的项目
即 --block-size=1K
-k
-l
使用较长格式列出信息
-L, --dereference
号链接所指示
当显示符号链接的文件信息时,显示符
的对象而并非符号链接本身的信息
所有项目以逗号分隔,并填满整
-m
行行宽
-n, --numeric-uid-gid
-N, --literal
如不特别处理控制字符)
-o
类似 -l,但列出 UID 及 GID 号
印出未经处理的项目名称 (例
类似 -l,但不列出有关组的信
息
-p, --file-type
其中一个)
加上文件类型的指示符号 (/=@|
-q, --hide-control-chars
无法打印的字符
--show-control-chars
用
以 ? 字符代替
直接显示无法打印的字符 (这是默认方式,除非调
的程序名称是‘ls’而且是在终端机画面输出结果)
-Q, --quote-name
将项目名称括上双引号
--quoting-style=方式
使用指定的 quoting <方式>显示项目的名称:
literal、locale、shell、shell-always、c、escape
-r, --reverse
依相反次序排列
-R, --recursive
同时列出所有子目录层
-s, --size
大小
以块大小为单位列出所有文件的
-S 按文件大小排序。
-t 按修改时间排序
-u
访问时间排序 配合 -lt:显示访问时间而且依
配合 -l:显示访问时间但根据名称排序
否则:根据访问时间排序
-U
次序列出项目 不进行排序;依文件系统原有的
-v 根据版本进行排序
-w, --width=COLS
自行指定萤幕宽度而不使用目前的数值
-x 逐行列出项目而不是逐栏列出
-X 根据扩展名排序
-1 每行只列出一个文件
--help
显示此帮助信息并离开
--version
显示版本信息并离开
1.13 dos2unix
1.13.1
功能说明
将一个 DOS 格式的文件转换为 UNIX 格式的文件。主要差别在换行符。
语法:
dos2unix [-hkqV] [-c convmode] [-o file ...] [-n infile outfile ...]
参数:
-h --help
帮助
-k --keepdate
保留文件输出日期
-q --quiet 安静模式,屏蔽所有警告。
-V --version 显示版本。
-c --convmode
Mac, 默认为 ASCII
-l --newline
转换模式,可以是 ASCII, 7bit, ISO,
增加一行。
-o --oldfile
写到原始文件中
file ...
转换为旧文件的模式
-n --newfile
写入新文件
输入文件名
infile
输出文件名
outfile
1.14 egrep
1.14.1
功能说明
在文件内查找指定的字符串。
egrep 执行效果如 grep -E,使用的语法及参数可参照 grep 指令,与 grep 不同点在
于解读字符串的方法,egrep 是用 extended regular expression 语法来解读,而 grep
则用 basic regular expression 语法,extended regular expression 比 basic reg
ular expression 有更完整的表达规范。
1.15 fgrep
1.15.1
功能说明
查找文件里符合条件的字符串。本指令相当于执行 grep 指令加上参数"-F",详见 grep 指令
说明。
1.15.2
语法
fgrep [范本样式][文件或目录...]
1.16 file
1.16.1
功能说明
辨识文件类型。
1.16.2
语法
file [-beLvz][-f <名称文件>][-m <魔法数字文件>...][文件或目录...]
1.16.3
补充说明
通过 file 指令,我们得以辨识该文件的类型。
1.16.4
参数
-b 列出辨识结果时,不显示文件名称。
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-f<名称文件>
指定名称文件,其内容有一个或多个文件名称呢感,让 file 依序辨识
这些文件,格式为每列一个文件名称。
-L
直接显示符号连接所指向的文件的类别。
-m<魔法数字文件>
指定魔法数字文件。
-v 显示版本信息。
-z 尝试去解读压缩文件的内容。
1.17 find
1.17.1
功能说明
查找文件或目录。
1.17.2
语法
find [目录...][-amin
[-cmin <分钟>]
<分钟>][-anewer <参考文件或目录>][-atime
<24 小时数>]
[-cnewer <参考文件或目录>][-ctime <24 小时数>][-daystart][-depyh][-empty][-ex
ec <执行指令>]
[-false][-fls <列表文件>][-follow][-fprint
[-fprintf <列表文件><输出格式>][-fstype
[-group <群组名称>][-help][-ilname
[-inum <inode 编号>][-ipath
目>]
<列表文件>][-fprint0
<列表文件>]
<文件系统类型>][-gid <群组识别码>]
<范本样式>][-iname <范本样式>]
<范本样式>][-iregex
<范本样式>][-links <连接数
[-lname <范本样式>][-ls][-maxdepth <目录层级>][-mindepth <目录层级>][-mmi
n <分钟>][-mount][-mtime
<24 小时数>][-name <范本样式>][-newer <参考文件或目录>]
[-nogroup][noleaf]
数值>]
[-nouser][-ok <执行指令>][-path <范本样式>][-perm
[-print][-print0][-printf <输出格式>][-prune][-regex
大小>]
<权限
<范本样式>][-size <文件
[-true][-type <文件类型>][-uid <用户识别码>][-used <日数>][-user
称>]
<拥有者名
[-version][-xdev][-xtype <文件类型>]
1.17.3
补充说明
find 指令用于查找符合条件的文件。任何位于参数之前的字符串都将被视为欲查找的目录。
1.17.4
参数
-amin<分钟>
查找在指定时间曾被存取过的文件或目录,单位以分钟计算。
-anewer<参考文件或目录>
的文件或目录。
-atime<24 小时数>
-cmin<分钟>
查找在指定时间曾被存取过的文件或目录,单位以 24 小时计算。
查找在指定时间之时被更改的文件或目录。
-cnewer<参考文件或目录>
的文件或目录。
-ctime<24 小时数>
-daystart
查找其存取时间较指定文件或目录的存取时间更接近现在
查找其更改时间较指定文件或目录的更改时间更接近现在
查找在指定时间之时被更改的文件或目录,单位以 24 小时计算。
从本日开始计算时间。
-depth 从指定目录下最深层的子目录开始查找。
-expty 寻找文件大小为 0 Byte 的文件,或目录下没有任何子目录或文件的空目录。
-exec<执行指令>
假设 find 指令的回传值为 True,就执行该指令。 -false
将 find 指令的回传值皆设为 False。
-fls<列表文件>
文件。
-follow
此参数的效果和指定"-ls"参数类似,但会把结果保存为指定的列表
排除符号连接。
-fprint<列表文件>
的列表文件。 此参数的效果和指定"-print"参数类似,但会把结果保存成指定
-fprint0<列表文件>
定的列表文件。 此参数的效果和指定"-print0"参数类似,但会把结果保存成指
-fprintf<列表文件><输出格式>
果保存成指定的列表文件。
-fstype<文件系统类型>
此参数的效果和指定"-printf"参数类似,但会把结
只寻找该文件系统类型下的文件或目录。
-gid<群组识别码> 查找符合指定之群组识别码的文件或目录。
-group<群组名称> 查找符合指定之群组名称的文件或目录。
-help 或--help
此参数的效果和指定"-lname"参数类似,但忽略字符大小写的差
此参数的效果和指定"-name"参数类似,但忽略字符大小写的差
查找符合指定的 inode 编号的文件或目录。
此参数的效果和指定"-ipath"参数类似,但忽略字符大小写的差
此参数的效果和指定"-regexe"参数类似,但忽略字符大小写的差
-links<连接数目> 查找符合指定的硬连接数目的文件或目录。
-iname<范本样式> 指定字符串作为寻找符号连接的范本样式。
-ls
假设 find 指令的回传值为 True,就将文件或目录名称列出到标准输出。
-maxdepth<目录层级>
设置最大目录层级。 攻城狮论坛 bbs.vlan5.com #^_^# .
版权归原作者所有 本资料仅供试读
-mindepth<目录层级>
-mmin<分钟>
-mount
设置最小目录层级。
查找在指定时间曾被更改过的文件或目录,单位以分钟计算。
此参数的效果和指定"-xdev"相同。
-mtime<24 小时数>
-name<范本样式>
查找在指定时间曾被更改过的文件或目录,单位以 24 小时计算。
指定字符串作为寻找文件或目录的范本样式。
-newer<参考文件或目录>
的文件或目录。
-nogroup
查找其更改时间较指定文件或目录的更改时间更接近现在
找出不属于本地主机群组识别码的文件或目录。
-noleaf 不去考虑目录至少需拥有两个硬连接存在。
-nouser 找出不属于本地主机用户识别码的文件或目录。
-ok<执行指令>
此参数的效果和指定"-exec"参数类似,但在执行指令之前会先询问用
户,若回答"y"或"Y",则放弃执行指令。
-path<范本样式> 指定字符串作为寻找目录的范本样式。
-perm<权限数值> 查找符合指定的权限数值的文件或目录。
-print
假设 find 指令的回传值为 True,就将文件或目录名称列出到标准输出。格式
为每列一个名称,每个名称之前皆有"./"字符串。
-print0
假设 find 指令的回传值为 True,就将文件或目录名称列出到标准输出。格
式为全部的名称皆在同一行。
-printf<输出格式>
假设 find 指令的回传值为 True,就将文件或目录名称列出到标
准输出。格式可以自行指定。
-prune
不寻找字符串作为寻找文件或目录的范本样式。
-regex<范本样式>
-size<文件大小>
-true
指定字符串作为寻找文件或目录的范本样式。
查找符合指定的文件大小的文件。
将 find 指令的回传值皆设为 True。
-typ<文件类型>
只寻找符合指定的文件类型的文件。
-uid<用户识别码>
查找符合指定的用户识别码的文件或目录。
-used<日数>
以日计算。
查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位
-user<拥有者名称>
-version 或--version
-xdev
查找符合指定的拥有者名称的文件或目录。
显示版本信息。
将范围局限在先行的文件系统中。
-xtype<文件类型>
检查。
此参数的效果和指定"-type"参数类似,差别在于它针对符号连接
1.18 grep
1.18.1
功能说明
查找文件里符合条件的字符串。
1.18.2
语法
grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行
动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]
1.18.3
补充说明
grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的
范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,
或是所给予的文件名为“-”,则 grep 指令会从标准输入设备读取数据。
1.18.4
参数
-a 或--text
不要忽略二进制的数据。
-A<显示列数>或--after-context=<显示列数>
外,并显示该列之后的内容。
-b 或--byte-offset
位编号。
除了显示符合范本样式的那一列之
在显示符合范本样式的那一列之前,标示出该列第一个字符的除了显示符合范本样式的那一列之
-B<显示列数>或--before-context=<显示列数>
外,并显示该列之前的内容。
-c 或--count
计算符合范本样式的列数。
-C<显示列数>或--context=<显示列数>或-<显示列数>
一列之外,并显示该列之前后的内容。
除了显示符合范本样式的那
-d<进行动作>或--directories=<进行动作>
当指定要查找的是目录而非文件时,必
须使用这项参数,否则 grep 指令将回报信息并停止动作。
-e<范本样式>或--regexp=<范本样式>
-E 或--extended-regexp
指定字符串做为查找文件内容的范本样式。
将范本样式为延伸的普通表示法来使用。
-f<范本文件>或--file=<范本文件>
指定范本文件,其内容含有一个或多个范本样
式,让 grep 查找符合范本条件的文件内容,格式为每列一个范本样式。
-F 或--fixed-regexp 将范本样式视为固定字符串的列表。
-G 或--basic-regexp 将范本样式视为普通的表示法来使用。
-h 或--no-filename
称。
在显示符合范本样式的那一列之前,不标示该列所属的文件名
-H 或--with-filename
称。
在显示符合范本样式的那一列之前,表示该列所属的文件名
-i 或--ignore-case
忽略字符大小写的差别。
-l 或--file-with-matches
列出文件内容符合指定的范本样式的文件名称。
-L 或--files-without-match
-n 或--line-number
在显示符合范本样式的那一列之前,标示出该列的列数编号。
-q 或--quiet 或--silent
-r 或--recursive
-s 或--no-messages
-v 或--revert-match
-V 或--version
列出文件内容不符合指定的范本样式的文件名称。
不显示任何信息。
此参数的效果和指定“-d
不显示错误信息。
反转查找。
显示版本信息。
recurse”参数相同。 -w 或--word-regexp 只显示全字符合的列。
-x 或--line-regexp 只显示全列符合的列。
此参数的效果和指定“-i”参数相同。
-y
--help
在线帮助。
1.19 head
1.19.1
功能说明
先是文件的前几行(默认 10 行)。
1.19.2
语法
head [options] [files]
1.19.3
参数
-c, --bytes=[-]N
每个文件显示前 N 字节;
-n, --lines=[-]N
-q, --quiet, --silent
-v, --verbose
不打印文件头
打印文件头
显示此帮助信息并离
--help
开
显示版本信息并离开
--version
1.19.4
每个文件显示前 N 行;
例子
显示文件 phone_list 前 20 行
head -20 phone_list
显示有 202 区号的前 10 个号码grep '(202)' phonelist | head
1.20 Less
1.20.1
功能说明
less 命令的功能几乎和 more 命令一样,也是用来按页显示文件,不同之处在于 less 命
令在显示文件时允许用户既可以向前又可以向后翻阅文件。同时因为 less 并未在一开始就
读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器(如 vi)来的快速。
1.20.2
语法
less [options] [filename]
1.21 ln
1.21.1
功能说明
连接文件或目录。
1.21.2
语法
ln [-bdfinsv][-S <字尾备份字符串>][-V
或目录][目标文件或目录]
<备份方式>][--help][--version][源文件
或 ln [-bdfinsv][-S <字尾备份字符串>][-V <备份方式>][--help][--version][源文
件或目录...][目的目录]
1.21.3
补充说明
ln 指令用在连接文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个
已经存在的目录,则会把前面指定的所有文件或目录复制到该目录中。若同时指定多个文件
或目录,且最后的目的地并非是一个已存在的目录,则会出现错误信息。
1.21.4
参数
-b 或--backup
删除,覆盖目标文件之前的备份。 攻城狮论坛 bbs.vlan5.com #^^# .
版权归原作者所有 本资料仅供试读
-d 或-F 或--directory
-f 或--force
建立目录的硬连接。
强行建立文件或目录的连接,不论文件或目录是否存在。
-i 或--interactive
覆盖既有文件之前先询问用户。
-n 或--no-dereference
-s 或--symbolic
把符号连接的目的目录视为一般文件。
对源文件建立符号连接,而非硬连接。
-S<字尾备份字符串>或--suffix=<字尾备份字符串>
用"-b"参数备份目标文件后,备
份文件的字尾会被加上一个备份字符串,预设的字尾备份字符串是符号"~",您可通过"-S"
参数来改变它。
-v 或--verbose
显示指令执行过程。
-V<备份方式>或--version-control=<备份方式>
用"-b"参数备份目标文件后,备份文
件的字尾会被加上一个备份字符串,这个字符串不仅可用"-S"参数变更,当使用"-V"参数<
备份方式>指定不同备份方式时,也会产生不同字尾的备份字符串。
--help
--version
显示版本信息。
1.22 locate
1.22.1
功能说明
查找文件。
1.22.2
语法
locate [-d <数据库文件>][--help][--version][范本样式...]
1.22.3
补充说明
locate 指令用于查找符合条件的文件,它会去保存文件与目录名称的数据库内,查找合乎
范本样式条件的文件或目录。
1.22.4
参数
-d<数据库文件>或--database=<数据库文件>
设置 locate 指令使用的数据库。locat
e 指令预设的数据库位于/var/lib/slocate 目录里,文件名为 slocate.db,您可使用这个
参数另行指定。
--help
在线帮助。
--version
显示版本信息。
1.23 ls
1.23.1
功能说明
列出目录内容。
1.23.2
语法
ls [-1aAbBcCdDfFgGhHiklLmnNopqQrRsStuUvxX][-I <范本样式>][-T <跳格字数>][-
w <每列字符数>][--block-size=<区块大小>][--color=<使用时机>][--format=<列表格
式>][--full-time][--help][--indicator-style=<标注样式>][--quoting-style=<引号样
式>][--show-control-chars][--sort=<排序方式>][--time=<时间戳记>][--version][文
件或目录...]
1.23.3
补充说明
执行 ls 指令可列出目录的内容,包括文件和子目录的名称。
1.23.4
-1
参数
每列仅显示一个文件或目录名称。
-a 或--all
下所有文件和目录。
-A 或--almost-all
-b 或--escape
显示所有文件和目录,但不显示现行目录和上层目录。
显示脱离字符。
-B 或--ignore-backups
忽略备份文件和目录。
-c 以更改时间排序,显示文件和目录。
-C 以又上至下,从左到右的直行方式显示文件和目录名称。 -d 或--directory
-D 或--dired
-f
显示目录名称而非其内容。
用 Emacs 的模式产生文件和目录列表。
此参数的效果和同时指定"aU"参数相同,并关闭"lst"参数的效果。
-F 或--classifybr/>在执行文件,目录,Socket,符号连接,管道名称后面,各自加上
"*","/","=","@","|"号。
-g
次参数将忽略不予处理。
-G 或--no-group
不显示群组名称。
-h 或--human-readable
-H 或--si
ytes。
用"K","M","G"来显示文件和目录的大小。
此参数的效果和指定"-h"参数类似,但计算单位是 1000Bytes 而非 1024B
-i 或--inode
显示文件和目录的 inode 编号。
-I<范本样式>或--ignore=<范本样式>
-k 或--kilobytes
-l
此参数的效果和指定"block-size=1024"参数相同。
使用详细格式列表。
-L 或--dereference
的原始文件或目录。
-m
如遇到性质为符号连接的文件或目录,直接列出该连接所指向
用","号区隔每个文件和目录的名称。
-n 或--numeric-uid-gid
-N 或--literal
-o
不显示符合范本样式的文件或目录名称。
以用户识别码和群组识别码替代其名称。
直接列出文件和目录名称,包括控制字符。
此参数的效果和指定"-l" 参数类似,但不列出群组名称或识别码。
-p 或--file-type
加上"*"号。
此参数的效果和指定"-F"参数类似,但不会在执行文件名称后面
-q 或--hide-control-chars
-Q 或--quote-name
-r 或--reverse
用"?"号取代控制字符,列出文件和目录名称。
把文件和目录名称以""号标示起来。
反向排序。 -R 或--recursive
-s 或--size
递归处理,将指定目录下的所有文件及子目录一并处理。
显示文件和目录的大小,以区块为单位。
-S 用文件和目录的大小排序。
-t 用文件和目录的更改时间排序。
-T<跳格字符>或--tabsize=<跳格字数>
设置跳格字符所对应的空白字符数。
-u 以最后存取时间排序,显示文件和目录。
-U 列出文件和目录名称时不予排序。
-v 文件和目录的名称列表以版本进行排序。
-w<每列字符数>或--width=<每列字符数>
设置每列的最大字符数。
-x 以从左到右,由上至下的横列方式显示文件和目录名称。
-X 以文件和目录的最后一个扩展名排序。
指定存放文件的区块大小。
--block-size=<区块大小>
--color=<列表格式>
列出完整的日期与时间。
--full-time
--help
培植文件和目录的列表格式。
在线帮助。
--indicator-style=<标注样式>
称所属的类型。
把文件和目录名称以指定的引号样式标示起来。
--quoting-syte=<引号样式>
--show-control-chars
在文件和目录等名称后面加上标注,易于辨识该名
在文件和目录列表时,使用控制字符。
--sort=<排序方式> 配置文件和目录列表的排序方式。
--time=<时间戳记> 用指定的时间戳记取代更改时间。
--version
显示版本信息。
1.24 mkdir1.24.1
功能说明
建立目录
1.24.2
语法
mkdir [-p][--help][--version][-m <目录属性>][目录名称]
1.24.3
补充说明
mkdir 可建立目录并同时设置目录的权限。
1.24.4
参数
-m<目录属性>或--mode<目录属性>
-p 或--parents
--help
建立目录时同时设置目录的权限。
若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录。
显示帮助。
--verbose 执行时显示详细的信息。
--version 显示版本信息。
1.25 more
1.25.1
功能说明
类似 cat ,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键
(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能
(与 vi 相似),使用中的说明文件,请按 h 。
1.25.2
语法
more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]
1.25.3
-num 一次显示的行数
-d 提示使用者,在画面下方显示 [Press space to continue, 'q' to quit.] ,如果
使用者按错键,则会显示 [Press 'h' for instructions.] 而不是 '哔' 声
-l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会
被扩展为两行或两行以上)
-p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
-c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
-s 当遇到有连续两行以上的空白行,就代换为一行的空白行
-u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
+/ 在每个档案显示前搜寻该字串(pattern),然后从该字串之后开始显示
+num 从第 num 行开始显示
fileNames 欲显示内容的档案,可为复数个数
1.25.4
例子
more -s testfile 逐页显示 testfile 之档案内容,如有连续两行以上空白行则以一
行空白行显示。
more +20 testfile 从第 20 行开始显示 testfile 之档案内容。
1.26 mv
1.26.1
功能说明
移动或更名现有的文件或目录。
后续精彩内容不断更新
转载于:https://blog.51cto.com/13337671/2050337