Linux常用文件管理命令

常用文件管理命令

cat

cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容

语法

    cat(选项)(参数)

选项

    -n或-number:有1开始对所有输出的行数编号;
    -b或--number-nonblank:和-n相似,只不过对于空白行不编号;
    -s或--squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行;
    -A:显示不可打印字符,行尾显示“$”;
    -e:等价于"-vE"选项;
    -t:等价于"-vT"选项;

参数

文件列表:指定要连接的文件列表。

实例

  • 显示文本
    [root@localhost tmp]# cat /tmp/test
    hello world
    
    
    
    
    
    hello world 
    
  • 输出带编号文本
    [root@localhost tmp]# cat -n /tmp/test
         1  hello world
         2
         3
         4
         5
         6
         7  hello world 
    
  • 输出带编号文本,忽略空白行编号
    [root@localhost tmp]# cat -b /tmp/test
         1  hello world
    
    
    
    
    
         2  hello world 
    
  • 输出带编号的文本,如遇到连续空白行,就代换为一行空白行
    [root@localhost tmp]# cat -ns /tmp/test
         1  hello world
         2
         3  hello world 
    
  • 文本操作

创建文本

    [root@localhost tmp]# cat > /tmp/test2
    hello everyone

    hello world
    ^C
    [root@localhost tmp]# cat /tmp/test2
    hello everyone

    hello world

把test的文件加上行号输入到test2中

    [root@localhost tmp]# cat -n /tmp/test > /tmp/test2
    [root@localhost tmp]# cat /tmp/test2
         1  hello world
         2
         3
         4
         5
         6
         7  hello world 

把test和test2的文本内容加上行号(空白行不加)之后将内容附加到test3里

    [root@localhost tmp]# cat -b /tmp/test /tmp/test2 > /tmp/test3
    [root@localhost tmp]# cat /tmp/test3
         1  hello world





         2  hello world 
         3       1  hello world
         4       2
         5       3
         6       4
         7       5
         8       6
         9       7  hello world 

清空test2的内容

    [root@localhost tmp]# cat /dev/null > /tmp/test2
    [root@localhost tmp]# cat /tmp/test2
    [root@localhost tmp]# 

tac

tac命令用于将文件已行为单位的反序输出,即第一行最后显示,最后一行先显示。

语法

    tac(选项)(参数)     

选项

    -a或——append:将内容追加到文件的末尾;
    -i或——ignore-interrupts:忽略中断信号。

参数

文件列表:指定要保存内容的文件列表。

实例

  • 反向显示test3的文本
    [root@localhost tmp]# tac /tmp/test3
         9       7  hello world 
         8       6
         7       5
         6       4
         5       3
         4       2
         3       1  hello world
         2  hello world 
    
    
    
    
    
    
         1  hello world
    

head

head命令用于显示文件的开头的内容。在默认情况下,head命令显示文件的头10行内容。

语法

    head(选项)(参数)

选项

    -n<数字>:指定显示头部内容的行数;
    -c<字符数>:指定显示头部内容的字符数;
    -v:总是显示文件名的头信息;
    -q:不显示文件名的头信息。

参数

文件列表:指定显示头部内容的文件列表。

实例

  • 显示前5行的内容
    [root@localhost tmp]# head  -5 /tmp/test3
         1  hello world
    
    
    
    
    [root@localhost tmp]# 
    

tail

tail命令用于输入文件中的尾部内容。tail命令默认在屏幕上显示指定文件的末尾10行。

语法

    tail(选项)(参数)

选项

    --retry:即是在tail命令启动时,文件不可访问或者文件稍后变得不可访问,都始终尝试打开文件。使用此选项时需要与选项“——follow=name”连用;
    -c<N>或——bytes=<N>:输出文件尾部的N(N为整数)个字节内容;
    -f<name/descriptor>或;--follow<nameldescript>:显示文件最新追加的内容。“name”表示以文件名的方式监视文件的变化。“-f”与“-fdescriptor”等效;
    -F:与选项“-follow=name”和“--retry"连用时功能相同;
    -n<N>或——line=<N>:输出文件的尾部N(N位数字)行内容。
    --pid=<进程号>:与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令;
    -q或——quiet或——silent:当有多个文件参数时,不输出各个文件名;
    -s<秒数>或——sleep-interal=<秒数>:与“-f”选项连用,指定监视文件变化时间隔的秒数;
    -v或——verbose:当有多个文件参数时,总是输出各个文件名;
    --help:显示指令的帮助信息;
    --version:显示指令的版本信息。

参数

文件列表:指定要显示尾部内容的文件列表。

实例

  • 显示最后5行的内容
    [root@localhost tmp]# tail -5 /tmp/test3
         5       3
         6       4
         7       5
         8       6
         9       7  hello world 
    
  • 从第二行开始显示整个文本
    [root@localhost tmp]# tail -n +2 /tmp/test3
    
    
    
    
    
         2  hello world 
         3       1  hello world
         4       2
         5       3
         6       4
         7       5
         8       6
         9       7  hello world 
    
  • 从第2行开始显示10条文本
    [root@localhost tmp]# tail -n +2 /tmp/test3 | head -n 10
    
    
    
    
    
         2  hello world 
         3       1  hello world
         4       2
         5       3
         6       4
    
  • 动态显示文本,先进先出
    [root@localhost tmp]# tail -f /tmp/test3
    
    
         2  hello world 
         3       1  hello world
         4       2
         5       3
         6       4
         7       5
         8       6
         9       7  hello world 
    

more

more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。

该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示的该文件的百分比:–More–(XX%)可以用下列不同的方法对提示做出回答:

按Space键:显示文本的下一屏内容。
按Enter键:只显示文本的下一行内容。 按斜线符|:接着输入一个模式,可以在文本中寻找下一个相匹配的模式。
按H键:显示帮助屏,该屏上有相关的帮助信息。
按B键:显示上一屏内容。
按Q键:退出rnore命令。

语法

    more(语法)(参数)

选项

    -<数字>:指定每屏显示的行数;
    -d:显示“[press space to continue,'q' to quit.]”和“[Press 'h' for instructions]”;
    -c:不进行滚屏操作。每次刷新这个屏幕;
    -s:将多个空行压缩成一行显示;
    -u:禁止下划线;
    +<数字>:从指定数字的行开始显示

参数

文件:指定分页显示内容的文件。

实例

  • 一次显示8行文本
    [root@localhost tmp]# more -8 /tmp/test3
         1  hello world
    
    
    
    
    
         2  hello world 
         3       1  hello world
    --More--(40%)
    
  • 一次显示8行的内容
    [root@localhost tmp]# ll /etc | more -8
    total 1088
    -rw-r--r--.  1 root root     16 Dec 23 22:07 adjtime
    -rw-r--r--.  1 root root   1518 Jun  7  2013 aliases
    -rw-r--r--.  1 root root  12288 Dec 23 22:08 aliases.db
    drwxr-xr-x.  2 root root    236 Dec 23 22:04 alternatives
    -rw-------.  1 root root    541 Mar 31  2016 anacrontab
    drwxr-xr-x.  3 root root     51 Jan  1 13:44 ansible
    -rw-r--r--.  1 root root     55 Nov  5  2016 asound.conf
    --More--
    
  • 从第3行开始显示
    [root@localhost tmp]# more +3 /tmp/test3
    
    
    
    
         2  hello world 
         3       1  hello world
         4       2
         5       3
         6       4
         7       5
         8       6
         9       7  hello world 
    

less

less命令的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览。

用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页。要退出less程序,应按Q键。

语法

    less(选项)(参数)

选项

    -e:文件内容显示完毕后,自动退出;
    -f:强制显示文件;
    -g:不加亮显示搜索到的所有关键词,仅显示当前显示的关键字,以提高显示速度;
    -l:搜索时忽略大小写的差异;
    -N:每一行行首显示行号;
    -s:将连续多个空行压缩成一行显示;
    -S:在单行显示较长的内容,而不换行显示;
    -x<数字>:将TAB字符显示为指定个数的空格字符。

参数

文件:指定要分屏显示内容的文件。


sed

显示中间文本的内容

语法

sed [-hnV][-e<script>][-f<script文件>][文本文件]

选项

    -e<script>或--expression=<script>:以选项中的指定的script来处理输入的文本文件;
    -f<script文件>或--file=<script文件>:以选项中指定的script文件来处理输入的文本文件;
    -h或--help:显示帮助;
    -n或--quiet或——silent:仅显示script处理后的结果;
    -V或--version:显示版本信息。

参数

文件:指定待处理的文本文件列表。

动作

    a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
    c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
    d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
    i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
    p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
    s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

实例

  • 显示第4行文本
    [root@localhost tmp]# sed -n '8p' /tmp/test3
         3       1  hello world
    
  • 显示第8行到第11行文本
    [root@localhost tmp]# sed -n '8,11p' /tmp/test3
         3       1  hello world
         4       2
         5       3
         6       4
    
  • 显示第8行到最后一行文本
    [root@localhost tmp]# sed -n '8,$p' /tmp/test3
         3       1  hello world
         4       2
         5       3
         6       4
         7       5
         8       6
         9       7  hello world 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/92054

(0)
eighteenxueighteenxu
上一篇 2018-03-11 13:26
下一篇 2018-03-11 16:12

相关推荐

  • 1.计算机的组成原理与linux初识

    计算机的组成原理 抽象 具体 Linux初识 负责与硬件交互,并向外提供系统调用 Linux大家庭 suse系列: opensuse suse enterprise redhat系列: centos redhat Debian系列: ubuntu debian 命令总结 显示本机IP(需要root权限) [root@localhost dev]# ifcon…

    Linux干货 2017-07-02
  • sed命令、crontab任务、简单脚本练习(21期网络班第六周博客作业)

    vim使用: 直接使用sed模式空间演示,基本语法与vim命令模式类似(需注意vim默认定界为当前行,一般需要在前面加1,$定界为全文,而sed不需要) 1、 复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;      sed &#03…

    Linux干货 2016-08-22
  • DHCP简介及简单实践

    一、引言 DHCP全称Dynamic Host Configure Protocol,动态主机配置协议,用于向网络中的计算机分配IP地址及一些TCP/IP配置信息。DHCP提供了安全,可靠且简单的TCP/IP网络设置,避免了TCP/IP网络地址的冲突,同时大大降低了工作负担。 二、DHCP工作流程 DHCP采用C/S架构,即Server/Client,它的简…

    Linux干货 2017-01-10
  • 救援模式安装RPM

    救援模式安装RPM 步骤如下: (1)先让RPM“自杀”掉,必须要使用忽略依赖选项—nodeps,否则卸载不了RPM程序。 (2)卸载完成后,将机器重启,按F2键进入机器的BIOS模式,如下图选择CD-ROM启动,最后按F10保存退出。 (3)机器将会从光驱上使用光盘文件做引导启动,如下图界面,相信大家都非常熟悉,该界面在我们安装新系统的时候,也会见到。啰嗦…

    Linux干货 2016-08-26
  • RAID介绍及软RAID实现

    RAID RAID:Redundant Arrays of Inexpensive(Independent)Disks1988年由加利福尼亚大学伯克利分校(University of California-Berkeley)“A Case for Redundant Arrays of Inexpensive Disks”。多个磁盘合成一个“阵列”来提供更好…

    Linux干货 2016-09-02
  • 博客作业网络班22期+第5周(9.5-9.11)

    1、显示当前系统上root、fedora或user1用户的默认shell [root@MyCloudServer wjb]# egrep '^(root|fedora|user1)\>' /etc/passwd | cut -d: -f7/bin/bash 2、找出/etc/rc.d/init.d/functions文件中某单词后面…

    Linux干货 2016-09-15