文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln
file:
1.作用:
file通过探测文件内容判断文件类型,使用权限是所有用户
2.格式:
file[options]文件名
3.[opitions]主要参数
-v:在标准输出后显示版本信息,并且退出。
-z:探测压缩过的文件类型。
-L:允许符合链接
-fname:从文件namefile中读取要分析的文件名列表
4.简单说明
使用file命令可以知道某个文件究竟是二进制(ELF)格式的可执行文件,还是ShellScript文件,或者其它什么格式. file能识别的文件类型有目录, Shell脚本, 英文文本, 二进制可执行文件, C语言源文件, 文本文件, DOS 可执行文件。
5.应用实例
如果我们看到一个没有后缀的文件grap,可以使用下面命令:
$ file grap
grap:English text
此时系统显示这是一个英文文本文件。需要说明的是,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. [options]主要参数
bs =字节 强迫 ibs=<字节>,及obs=<字节>
cbs =字节:每次转换指定的字节<字节>
conv=关键字:根据以逗号分隔得关键字表示的方法来转换文件。
count=块数目:只复制指定<块数目>的输入数据
ibs=字节:每次读取指定的<字节>
obs=字节:每次写入指定的<字节>
if =文件: 读取<文件>内容, 而非标准输入的数据
of =文件: 将数据写入文件,而不在标准输出显示
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 文件大小
-user 文件所有者
-atime/amin 搜索过去n天/分钟读取过的文件
-ctime/cmin 搜索过去n天/分钟修改过属性的文件
-mtime/mmin 搜索过去n天/分钟内容被修改过的文件
-print 输出搜索结果并打印
4.应用技巧:
Find命令查找文件的几种方法:
(1)根据文件名查找
例如:我们想要查找一个文件名是lilo.conf的文件
Find /-name lilo.conf
/表示搜索整个硬盘
(2)快速查找文件
例如查找文件名是smb.conf的文件,并知道它在etc目录下
find /etc -name smb.conf
(3)根据部分文件名查找
例如我们只知道文件名中包含abvd这四个字母
find / -name ‘*abvd*’
mv
1.作用:
移动文件, 为文件或目录更名
2.格式:
mv[options] [源文件或目录] [目的文件或目录]
3. [options]主要参数
-i 交互方式操作.如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写, 避免误覆盖文件
-f 禁止交互操作
4.应用实例:
(1)将/usr/bin/中所有文件移到当前目录下
$mv /usr/bin/* .
(2)将文件ab改名为cd
$mv ab cd
ls
1.作用: 显示目录内容
2.格式: ls [options] [filename]
-a 列出所有文件,包含以”.”开头的隐藏文件
-l 列出文件详细信息
-lh 查看详细信息及文件大小
-d 查看目录属性
-ld 查看目录权限
-i 查看i节点(inode)