linux 编辑文件 cat 跳到指定行,Linux-(touch,cat,nl,more|less,head|tail)

touch命令

1.命令格式:

touch [选项]... 文件...

2.命令参数:

-a   或--time=atime或--time=access或--time=use  只更改存取时间。

-c   或--no-create  不建立任何文档。

-d  使用指定的日期时间,而非现在的时间。

-f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。

-m   或--time=mtime或--time=modify  只更改变动时间。

-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

-t  使用指定的日期时间,而非现在的时间。

3.命令功能:

touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间。

4.使用范例:

更新log.log的时间和log2012.log时间戳相同

命令:touch -r log.log log2012.log

[root@localhost test]#ll-rw-r--r-- 1 root root 0 10-28 16:01 log2012.log-rw-r--r-- 1 root root 0 10-28 14:48 log.log[root@localhost test]#touch -r log.log log2012.log[root@localhost test]#ll-rw-r--r-- 1 root root 0 10-28 14:48 log2012.log-rw-r--r-- 1 root root 0 10-28 14:48 log.log

设定文件的时间戳

命令:touch -t 201211142234.50 log.log

[root@localhost test]#ll-rw-r--r-- 1 root root 0 10-28 14:48 log.log[root@localhost test]#touch -t 201211142234.50 log.log[root@localhost test]#ll-rw-r--r-- 1 root root 0 2012-11-14 log.log

说明:-t  time 使用指定的时间值 time 作为指定文件相应时间戳记的新值.此处的 time规定为如下形式的十进制数:      [[CC]YY]MMDDhhmm[.SS]

cat命令

1.命令格式:

cat [选项] [文件]...

2.命令功能:

cat主要有三大功能:一次显示整个文件:cat filename

从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.

将几个文件合并为一个文件:cat file1 file2 > file

3.命令参数:

-A, --show-all           等价于 -vET

-b, --number-nonblank    对非空输出行编号

-e                       等价于 -vE

-E, --show-ends          在每行结束处显示 $

-n, --number     对输出的所有行编号,由1开始对所有输出的行数编号

-s, --squeeze-blank  有连续两行以上的空白行,就代换为一行的空白行

-t                       与 -vT 等价

-T, --show-tabs          将跳格字符显示为 ^I

-v, --show-nonprinting   使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

4.使用实例:

把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里

命令:cat -b log2012.log log2013.log log.log

[root@localhost test]#cat -b log2012.log log2013.log log.log1 2012-012 2012-023 ======4 2013-015 2013-026 2013-037 ======

把 log2012.log 的文件内容加上行号后附加到 log2013.log 这个文件里

命令:cat -n log2012.log log2013.log

[root@localhost test]#cat log2012.log2012-012012-02======

[root@localhost test]#cat log2013.log2013-012013-022013-03======

[root@localhost test]#cat -n log2012.log log2013.log1 2012-012 2012-02345 ======6 2013-017 2013-028910 2013-0311 ======

使用here doc来生成文件

[root@localhost test]#cat >log.txt <Hello>World>Linux> PWD=$(pwd)> EOF[root@localhost test]#ls -l log.txt-rw-r--r-- 1 root root 37 10-28 17:07 log.txt[root@localhost test]#cat log.txtHelloWorldLinuxPWD=/opt/soft/test

nl命令

1.命令格式:

nl [选项]... [文件]...

2.命令参数:

-b  :指定行号指定的方式,主要有两种:-b a :表示不论是否为空行,也同样列出行号(类似 cat -n);

-b t :如果有空行,空的那一行不要列出行号(默认值);

-n  :列出行号表示的方法,主要有三种:-n ln :行号在萤幕的最左方显示;

-n rn :行号在自己栏位的最右方显示,且不加 0 ;

-n rz :行号在自己栏位的最右方显示,且加 0 ;

-w: 行号栏位的占用的位数。默认6位

-p: 在逻辑定界符处不重新开始计算。

more|less命令

more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读。more命令从前向后读取文件,因此在启动时就加载整个文件。less 命令也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。less 查看之前不会加载整个文件。最基本的指令就是按空白键(space)就往下一页显示,d往下半页,按 b 键就会往回(back)一页显示,u回半页。

1.命令格式:

more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]

less [参数]  文件

2.命令参数:

more:

+n      从笫n行开始显示

-n       定义屏幕大小为n行

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

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

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

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

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

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

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

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

Ctrl+F   向下滚动一屏

空格键  向下滚动一屏

Ctrl+B  返回上一屏

=       输出当前行的行号

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

V      调用vi编辑器

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

q       退出more

less:

-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]:   向上翻动一页

3.命令实例:

显示文件中从第3行起的内容

命令:more +3 log2012.log

[root@localhost test]#cat log2012.log2012-012012-022012-032012-04-day1======[root@localhost test]#more +3 log2012.log2012-032012-04-day1======[root@localhost test]#

浏览多个文件

命令:less log2013.log log2014.log

说明:

输入 :n后,切换到 log2014.log

输入 :p后,切换到log2013.log

4.附加备注

1.全屏导航ctrl + F - 向前移动一屏

ctrl + B - 向后移动一屏

ctrl + D - 向前移动半屏

ctrl + U - 向后移动半屏

2.单行导航j - 向前移动一行

k - 向后移动一行

3.其它导航G - 移动到最后一行

g - 移动到第一行

q - 退出 less 命令

4.其它有用的命令v - 使用配置的编辑器编辑当前文件

h - 显示 less 的帮助文档

&pattern - 仅显示匹配模式的行,而不是整个文件

5.标记导航

当使用 less 查看大文件时,可以在任何一个位置作标记,可以通过命令导航到标有特定标记的文本位置:ma  - 使用 a 标记文本的当前位置

'a    - 导航到标记 a 处

head|tail命令

1.命令格式:

head [参数]... [文件]...

tail   [必要参数]  [选择参数]  [文件]

2.命令参数:

head:

-c  显示字节数

-n  显示的行数

tail:

-f 循环读取

-q 不显示处理信息

-v 显示详细的处理信息

-c  显示的字节数

-n  显示行数

--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.

-q, --quiet, --silent 从不输出给出文件名的首部

-s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

3.使用实例:

文件的除了最后n个字节以外的内容

命令:head -c -32 log2014.log

输出文件除了最后n行的全部内容

命令:head -n -6 log2014.log

[root@localhost test]#cat log2014.log2014-012014-022014-032014-042014-052014-062014-072014-08==============================[root@localhost test]#head -c -32 log2014.log2014-012014-022014-032014-042014-052014-062014-072014-08[root@localhost test]#head -n -6 log2014.log2014-012014-022014-03

显示文件末尾内容

命令:tail -n 5 log2014.log

从第5行开始显示文件

命令:tail -n +5 log2014.log

[root@localhost test]#cat log2014.log2014-062014-072014-082014-092014-102014-112014-12==============================[root@localhost test]#tail -n 5 log2014.log2014-092014-102014-112014-12==============================[root@localhost test]#tail -n +5 log2014.log2014-102014-112014-12==============================

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值