文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln
file:
ep:file grap
grap:English test
1.作用:
file通过探测文件内容判断文件类型,使用权限是所有用户
2.格式:
file[options] 文件名
3.主要参数
-v:在标准输出后显示版本信息,并且退出。
-z:探测压缩过的文件类型。
-L:允许符合链接
-fname:从文件namefile中读取要分析的文件名列表
4.简单说明
使用file命令可以知道某个文件究竟是二进制(ELF)格式的可执行文件,还是ShellScript文件,或者其它什么格式. file能识别的文件类型有目录, Shell脚本, 英文文本, 二进制可执行文件, C语言源文件, 文本文件, DOS 可执行文件。
file命令不能探测包括图形、音频、视频等多媒体文件类型。
mkdir
1.作用:
mkdir命令的作用是建立名称为dirname的子目录,与MS DOS下的md命令类似,它的使用权限是所有用户。
2.格式: mkdir [options] 目录名
3.主要参数:
-m,--mode=模式: 设定权限<模式>, 与chmod类似。
-p,--parents: 需要时创建上层目录, 如果目录已存在, 不当做错误。
-v,--verbose:每次创建新目录都显示信息。
--version : 显示版本信息后离开。
4.应用实例
在进行目录创建时可以设置目录的权限,此时使用的参数是“m”。假设要创建的目录名是“tsk”,让所有用户都有rwx,那么可以使用以下命令:
$mkdir –m 777tsk
grep
1.作用:
grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出。Grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户
2.格式:grep [options]
-c: 只输出匹配行的计数。
-I: 不区分大小写(单字符)。
-h: 查询多文件时不显示文件名。
-n: 显示匹配行及行号。
-s: 不显示不存在或无匹配文本的错误信息。
-v: 显示不包含匹配文本的所有行。
pattern正则表达式主要参数:
\ :忽略正则表达式中特殊字符的原有含义。
^ :匹配正则表达式的开始行。
$ :匹配正则表达式的结束行。
\< :从匹配正则表达式的行开始。
\>;:到匹配正则表达式的行结束。
[] :单个字符,如[A] 即A符合要求。
[-] :范围,如[A-Z] ,即A,B,C到Z都符合要求。
。: 所有的单个字符。
* :有字符 长度可以为0。
正则表达式是Linux/Unix系统中非常重要的概念. 正则表达式(也称为 regex 或 regexp)是个可以描述一类字符串的模式(Pattern). 如果一个字符创可以用某个正则表达式来描述, 我们就说这个字符串和该正则表达式匹配(Match )。这和DOS中用户可以使用通配符“*”代表任意字符类似。在Linux系统上,正则表达式通常被用来查找文本模式,以及对文本执行“搜索——替换”操作和其他功能。
dd
1.作用:
dd命令用来复制文件, 并根据参数将数据转换和格式化
2. 格式:
dd [options]
3.主要参数
bs=字节 强迫 ibs=<字节>,及obs=<字节>。
cbs=字节:每次转换指定的字节<字节>。
conv=关键字:根据以逗号分隔得关键字表示的方法来转换文件。
count=块数目:只复制指定<块数目>的输入数据。
ibs=字节:每次读取指定的<字节>。
obs=字节:每次写入指定的<字节>。
if=文件: 读取<文件>内容, 而非标准输入的数据。
of=文件: 将数据写入文件,而不在标准输出显示。
seek-块数目:先略过以obs为单位的指定<块数目>;的输出数据。
skip=块数目:先略过以ibs为单位的指定<块数目>;的输入数据。
4.应用实例:
dd命令常常用来制作Linux启动盘, 先找一个可引导内核, 令它的根设备指向正确的根分区, 然后使用dd 命令将其写入软盘:
$rdev vmlinuz /dev/hda
$dd if=vmlinuz of=/dev/fd0
上面代码说明, 使用rdev命令可将引导内核vmlinuz中的根设备指向 /dev/hda, 把”hda”换成自己的根分区,用dd命令将该内核写入软盘。
find
1.作用:
find命令的作用是在目录中搜索文件,它的使用权限是所有用户。
2.格式: find [path] [options] [expression]
path指定目录路径,系统从这里开始沿着目录树向下查找文件。它是一个路径列表,相互用空格分离,如果不写path,那么默认为当前目录。
3.主要参数:
[expression]:
-name:支持通配符*和?。
-size n:搜索文件大小为n个block的文件。
-user :搜索文件属主为用户名的文件。
-atime n: 搜索过去n天/分钟读取过的文件。
-ctime: 搜索过去n天/分钟修改过属性的文件。
-group grpouname:搜索所有组为grpouname的文件。
-print :输出搜索结果并打印。
4.应用技巧:
find命令查找文件的几种方法:
(1)根据文件名查找
ep:我们想要查找一个文件名是lilo.conf的文件
find / -name lilo.conf
/表示搜索整个硬盘
(2)快速查找文件
ep:查找文件名是smb.conf的文件,并且推测它在etc目录下
find /etc -name smb.conf
(3)根据部分文件名查找
ep:我们只知道文件名中包含abvd这四个字母
find / -name ‘*abvd*’
(4)混合方式查找
ep:在etc目录下寻找大于500000字节并且24小时内修改过的文件
find /etc -size +500000c -and -mtime +1
mv
1.作用: 为文件或目录改名或将一个文件由一个目录移动到另一个目录下。
2.格式:
mv[options] 源文件或目录 目标文件或目录
3. 主要参数
-i 交互方式操作.如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写, 避免误覆盖文件。
-f 禁止交互操作。
4.应用实例:
(1)将/usr/cbu/中所有文件移到当前目录下
$mv /usr/cbu/* .
(2)将文件11改名为22
$mv 11 22
ls
1.作用: 显示目录内容
2.格式: ls [options] [filename]
3.主要参数:
-a :列出所有文件,包含以”.”开头的隐藏文件
-l :列出文件详细信息
-lh :查看详细信息及文件大小
-d :查看目录属性
-ld :查看目录权限
-i :查看i节点
-R :同时列出所有子目录层
-N :列出未经处理的项目名称
diff
1.作用:用于两个文件之间的比较,并指出两者的不同。
2.格式:diff[options] 源文件 目标文件
3.主要参数:
-a:把所有文件当作文本文件。
-z:忽略大小写的变化。
-b/B:忽略空格/空行造成的不同。
cmp
1.作用:指出两个文件是否存在差异。
2.格式:cmp[options] 文件名
cat
1.作用: 显示文件有关信息。
2.格式:cat[options] 文件1 文件2 ……
3.主要参数:
-n:对所有行编号
-b:对空白行不编号
-s:遇到连续多行的空白行代换为一行空白行
4.应用实例:
把README和INSTALL的文件内容附加到File1中
$cat README INSTALL File1
ln
1.作用: 链接。
2.格式:ln[options] 源文件 [链接名]
3.主要参数:
-f:链接时删除源文件
-s:软链接
-b:备份