第一章 文件的基本管理

1.1 查看文件内容 cat

 cat命令用法 

   cat [-AbeEnstTuv] [--help] [--version] fileName 

 常用参数

     -n 或 --number 由 1 开始对所有输出的行数编号
     -b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号
     -s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
     -v 或 --show-nonprinting

 实例

[root@localhost local]#cat -n 2 /tmp/textfile1


1.2 查看文件头几行 head

 head 命令用法 

    head [-n number/-number] filename

 常用参数

    -n number 选择查看文件的头N行;此选项也可以直接省略n,即-number。

 实例

[root@localhost local]#head -n 8 /etc/passwd
[root@localhost local]#head -8 /etc/shadow

 

1.3 查看文件倒数几行 tail

 tail 命令用法

    tail [-n number/-number] filename

 常用参数

      -n number 选择查看文件的头N行;此选项也可以直接省略n,即-number。

 实例

[root@localhost local]#tail -n 8 /etc/inittab
[root@localhost local]#tail -8 /etc/fstab


1.4 查看二进制文件内容 od

 od 命令用法

   od [-abcdfhilovx][-A <字码基数>][-j <字符数目>][-N <字符数目>][-s <字符串字符数>][-t <输出格式>][-w <每列字符数>][--help][--version]  filename

 常用参数

      -a  此参数的效果和同时指定"-ta"参数相同。 
     -A<字码基数>  选择要以何种基数计算字码。 
     -b  此参数的效果和同时指定"-toC"参数相同。 
     -c  此参数的效果和同时指定"-tC"参数相同。 
     -d  此参数的效果和同时指定"-tu2"参数相同。 
     -f  此参数的效果和同时指定"-tfF"参数相同。 
     -h  此参数的效果和同时指定"-tx2"参数相同。 
     -i  此参数的效果和同时指定"-td2"参数相同。 
     -j<字符数目>或--skip-bytes=<字符数目>  略过设置的字符数目。 
     -l  此参数的效果和同时指定"-td4"参数相同。 
     -N<字符数目>或--read-bytes=<字符数目>  到设置的字符数目为止。 
     -o  此参数的效果和同时指定"-to2"参数相同。 
     -s<字符串字符数>或--strings=<字符串字符数>  只显示符合指定的字符数目的字符串。 
     -t<输出格式>或--format=<输出格式>  设置输出格式。 
     -v或--output-duplicates  输出时不省略重复的数据。 
     -w<每列字符数>或--width=<每列字符数>  设置每列的最大字符数。 
     -x  此参数的效果和同时指定"-h"参数相同。 
     --help  在线帮助。 
     --version  显示版本信息。

 实例

[root@localhost local]#od /mnt/test


1.5 浏览文件内容 more

   more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读。

 more 命令用法

   more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] filename

 常用参数

     

+n      从笫n行开始显示

-n       定义屏幕大小为n行

+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示  

-c       从顶部清屏,然后显示

-d       提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能

-l        忽略Ctrl+l(换页)字符

-p       通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似

-s       把连续的多个空行显示为一行

-      把文件内容中的下画线去掉

常用操作命令

Enter    向下n行,需要定义。默认为1行

Ctrl+F   向下滚动一屏

空格键  向下滚动一屏

Ctrl+B  返回上一屏

=       输出当前行的行号

:f     输出文件名和当前行的行号

V      调用vi编辑器

!命令   调用Shell,并执行命令 

q       退出more

 实例

[root@localhost test]# more log2012.log


1.5 浏览文件内容 less

    less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

 less 命令用法

  less [参数] filename

 常用参数

-b <缓冲区大小> 设置缓冲区的大小

-e  当文件显示结束后,自动离开

-f  强迫打开特殊文件,例如外围设备代号、目录和二进制文件

-g  只标志最后搜索的关键词

-i  忽略搜索时的大小写

-m  显示类似more命令的百分比

-N  显示每行的行号

-o <文件名> 将less 输出的内容在指定文件中保存起来

-Q  不使用警告音

-s  显示连续空行为一行

-S  行过长时间将超出部分舍弃

-x <数字> 将“tab”键显示为规定的数字空格

/字符串:向下搜索“字符串”的功能

?字符串:向上搜索“字符串”的功能

 常用操作命令 

n:重复前一个搜索(与 / 或 ? 有关)

N:反向重复前一个搜索(与 / 或 ? 有关)

b  向后翻一页

d  向后翻半页

h  显示帮助界面

Q  退出less 命令

u  向前滚动半页

y  向前滚动一行

空格键 滚动一行

回车键 滚动一页

[pagedown]: 向下翻动一页

[pageup]:   向上翻动一页

 实例

[root@localhost test]# less log2012.log


1.6 创建新文件 touch

touch 命令用法

    touch [-acfm][-d <日期时间>][-r <参考文件或目录>][-t <日期时间>][--help]   [--version][文件或目录...] 或 touch [-acfm][--help][--version][日期时间][文件或目录...] 

 常用参数

       -a或--time=atime或--time=access或--time=use  只更改存取时间。 
      -c或--no-create  不建立任何文件。 
      -d<时间日期>  使用指定的日期时间,而非现在的时间。 
      -f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。 
      -m或--time=mtime或--time=modify  只更改变动时间。 
      -r<参考文件或目录>  把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间   相同。 
      -t<日期时间>  使用指定的日期时间,而非现在的时间。 
      --help  在线帮助。 
      --version  显示版本信息。

 实例

[root@localhost test]#touch /mnt/a.sh
[root@localhost test]#touch -a /mnt/b.sh
[root@localhost test]#touch -c /mnt/c.sh


1.7 删除文件 rm

 rm 命令用法

   rm [-dfirv][--help][--version] file

 常用参数

     -d或--directory  直接把欲删除的目录的硬连接数据删成0,删除该目录。 
    -f或--force  强制删除文件或目录。 
    -i或--interactive  删除既有文件或目录之前先询问用户。 
    -r或-R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。 
    -v或--verbose  显示指令执行过程。 
    --help  在线帮助。 
    --version  显示版本信息。

 实例

 [root@localhost test]#rm /etc/yum.repos.d/Base.repo
 [root@localhost test]#rm -rf /home/Lee


1.8 移动文件、修改文件名称 mv

 mv 命令用法

   mv filename /path/to/newpath

 常用参数

      -b或--backup  若需覆盖文件,则覆盖前先行备份。 
     -f或--force  若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文 件或目录。 
     -i或--interactive  覆盖前先行询问用户。 
     -S<附加字尾>或
     --suffix=<附加字尾>  与-b参数一并使用,可指定备份文件的所要附加的字尾。 
     -u或--update  在移动或更改文件名时,若目标文件已存在,且其文件日期比源文件新,则不覆盖目标文件。 
     -v或--verbose  执行时显示详细的信息。 
     -V=<方法>或
     --version-control=<方法>  与-b参数一并使用,可指定备份的方法。 
     --help  显示帮助。 
     --version  显示版本信息。

 实例

[root@localhost test]#mv /etc/passwd /mnt
[root@localhost test]#mv /etc/passwd /mnt/passwd.1


1.9 分隔文件 split

 split 命令用法

    split [--help][--version][-<行数>][-b <字节>][-C <字节>][-l <行数>][要切割的文件][输出文件名]

 常用参数

       -<行数>或-l<行数>  指定每多少行就要切成一个小文件。 
      -b<字节>  指定每多少字就要切成一个小文件。 
      -C<字节>  与-b参数类似,但切割时尽量维持每行的完整性。 
      --help  显示帮助。 
      --version  显示版本信息。 
      [输出文件名]  设置切割后文件的前置文件名,split会自动在前置文件名后再加上编号。

 实例

[root@localhost test]#split -l 4 /etc/passwd /mnt/passwd.new