linux文件处理命令:初学Linux必学60个命令文件处理




  file
  1.作用
  file通过探测文件内容判断文件类型使用权限是所有用户
  
  2.格式
  file [options] 文件名
  
  3.[options]主要参数
  -v:在标准输出后显示版本信息并且退出
  
  -z:探测压缩过文件类型
  
  -L:允许符合连接
  
  -f name:从文件namefile中读取要分析文件名列表
  
  4.简单介绍说明
  使用file命令可以知道某个文件究竟是 2进制(ELF格式)可执行文件, 还是Shell Script文件或者是其它什么格式file能识别文件类型有目录、Shell脚本、英文文本、 2进制可执行文件、C语言源文件、文本文件、DOS可执行文件
  
  5.应用例子
  如果我们看到个没有后缀文件grap可以使用下面命令:
  
  $ file grap
  
  grap: English text
  
  此时系统显示这是个英文文本文件需要介绍说明file命令不能探测包括图形、音频、视频等多媒体文件类型
  
  mkdir
  1.作用
  mkdir命令作用是建立名称为dirname子目录和MS DOS下md命令类似使用权限是所有用户
  
  2.格式
  mkdir [options] 目录名
  
  3.[options]主要参数
  -m, --mode=模式:设定权限<模式>和chmod类似
  
  -p, --parents:需要时创建上层目录;如果目录早已存在则不当作
  
  -v, --verbose:每次创建新目录都显示信息
  
  --version:显示版本信息后离开
  
  4.应用例子
  在进行目录创建时可以设置目录权限此时使用参数是“-m”假设要创建目录名是“tsk”让所有用户都有rwx(即读、写、执行权限)那么可以使用以下命令:
  
  $ mkdir -m 777 tsk
  
  grep
  1.作用
  grep命令可以指定文件中搜索特定内容并将含有这些内容行标准输出grep全称是Global Regular Expression Pr表示全局正则表达式版本使用权限是所有用户
  
  2.格式
  grep [options]
  
  3.主要参数
  [options]主要参数:
  
  -c:只输出匹配行计数
  
  -I:不区分大小写(只适用于单)
  
  -h:查询多文件时不显示文件名
  
  -l:查询多文件时只输出包含匹配文件名
  
  -n:显示匹配行及行号
  
  -s:不显示不存在或无匹配文本信息
  
  -v:显示不包含匹配文本所有行
  
  pattern正则表达式主要参数:
  
  \:忽略正则表达式中特殊原有含义
  
  ^:匹配正则表达式开始行
  
  $: 匹配正则表达式结束行
  
  \<:从匹配正则表达式行开始
  
  \>:到匹配正则表达式行结束
  
  [ ]:单个如[A]即A符合要求
  
  [ - ]:范围如[A-Z]即A、B、C直到Z都符合要求
  
  :所有单个
  
  * :有长度可以为0
  
  正则表达式是Linux/Unix系统中非常重要概念正则表达式(也称为“regex”或“regexp”)是个可以描述模式(Pattern)如果串可以用某个正则表达式来描述我们就说这个和该正则表达式匹配(Match)这和DOS中用户可以使用通配符“*”代表任意类似在Linux系统上正则表达式通常被用来查找文本模式以及对文本执行“搜索-替换”操作和其它功能
  
  4.应用例子
  查询DNS服务是日常工作的这意味着要维护覆盖区别网络大量IP地址有时IP地址会超过2000个如果要查看nnn.nnn网络地址但是却忘了第 2部分中其余部分只知到有两个句点例如nnn nn..要抽取其中所有nnn.nnn IP地址使用[0-9 ]\{3 \}\.[0-0\{3\}\含义是任意数字出现3次后跟句点接着是任意数字出现3次后跟句点
  
  $grep '[0-9 ]\{3 \}\.[0-0\{3\}\' ipfile
  
  补充介绍说明grep家族还包括fgrep和egrepfgrep是fix grep允许查找串而不是个模式;egrep是扩展grep支持基本及扩展正则表达式但不支持\q模式范围应用及和的相对应些更加规范标准模式
  
  dd
  1.作用
  dd命令用来复制文件并根据参数将数据转换和格式化
  
  2.格式
  
  dd [options]
  
  3.[opitions]主要参数
  
  bs=字节:强迫 ibs=<字节>及obs=<字节>
  
  cbs=字节:每次转换指定<字节>
  
  conv=关键字:根据以逗号分隔关键字表示方式来转换文件
  
  count=块数目:只复制指定<块数目>输入数据
  
  ibs=字节:每次读取指定<字节>
  
  =文件:读取<文件>内容而非标准输入数据
  
  obs=字节:每次写入指定<字节>
  
  of=文件:将数据写入<文件>而不在标准输出显示
  
  seek=块数目:先略过以obs为单位指定<块数目>输出数据
  
  skip=块数目:先略过以ibs为单位指定<块数目>输入数据
  
  4.应用例子
  dd命令常常用来制作Linux启动盘先找个可引导内核令它根设备指向正确根分区然后使用dd命令将其写入软盘:
  
  $ rdev vmlinuz /dev/hda
  
  $dd =vmlinuz of=/dev/fd0
  
  上面代码介绍说明使用rdev命令将可引导内核vmlinuz中根设备指向/dev/hda请把“hda”换成自己根分区接下来用dd命令将该内核写入软盘
  
  find
  1.作用
  find命令作用是在目录中搜索文件使用权限是所有用户
  
  2.格式
  find [path][options][expression]
  
  path指定目录路径系统从这里开始沿着目录树向下查找文件它是个路径列表相互用空格分离如果不写path那么默认为当前目录
  
  3.主要参数
  [options]参数:
  
  -depth:使用深度级别查找过程方式在某层指定目录中优先查找文件内容
  
  -maxdepth levels:表示至多查找到开始目录第level层子目录level是个非负数如果level是0话表示仅在当前目录中查找
  
  -mindepth levels:表示至少查找到开始目录第level层子目录
  
  -mount:不在其它文件系统(如Msdos、Vfat等)目录和文件中查找
  
  -version:打印版本
  
  [expression]是匹配表达式是find命令接受表达式find命令所有操作都是针对表达式参数非常多这里只介绍些常用参数
  
  —name:支持统配符*和?
  
  -atime n:搜索在过去n天读取过文件
  
  -ctime n:搜索在过去n天修改过文件
  
  -group grpoupname:搜索所有组为grpoupname文件
  
  -user 用户名:搜索所有文件属主为用户名(ID或名称)文件
  
  -size n:搜索文件大小是n个block文件
  
  -pr:输出搜索结果并且打印
  
  4.应用窍门技巧
  find命令查找文件几种思路方法:
  
  (1)根据文件名查找
  
  例如我们想要查找个文件名是lilo.conf文件可以使用如下命令:
  
  find / -name lilo.conf
  
  find命令后“/”表示搜索整个硬盘
  
  (2)快速查找文件
  
  根据文件名查找文件会遇到个实际问题就是要花费相当长段时间特别是大型Linux文件系统和大容量硬盘文件放在很深子目录中时如果我们知道了这个文件存放在某个目录中那么只要在这个目录中往下寻找就能节省很多时间比如smb.conf文件从它文件后缀“.conf”可以判断这是个配置文件那么它应该在/etc目录内此时可以使用下面命令:
  
  find /etc -name smb.conf
  
  这样使用“快速查找文件”方式可以缩短时间
  
  (3)根据部分文件名查找思路方法
  
  有时我们知道只某个文件包含有abvd这4个字那么要查找系统中所有包含有这4个文件可以输入下面命令:
  
  find / -name '*abvd*'
  
  输入这个命令以后Linux系统会将在/目录中查找所有包含有abvd这4个文件(其中*是通配符)比如abvdrmyz等符合条件文件都能显示出来
  
  (4) 使用混合查找方式查找文件
  
  find命令可以使用混合查找思路方法例如我们想在/etc目录中查找大于500000字节并且在24小时内修改某个文件则可以使用-and (和)把两个查找参数链接起来组合成个混合查找方式
  
  find /etc -size +500000c -and -mtime +1
  
  mv
  1.作用
  mv命令用来为文件或目录改名或者将文件由个目录移入另个目录中使用权限是所有用户该命令如同DOS命令中ren和move组合
  
  2.格式
  mv[options] 源文件或目录 目标文件或目录
  
  3.[options]主要参数
  -i:交互方式操
Tags:  linux命令 linux初学者 初学linux linux文件处理命令

延伸阅读

最新评论

发表评论