Linux基础命令(三)——>文件过滤及内容编辑处理命令
1、cat 合并文件或查看文件内容
基本功能:cat test.txt 查看文件内容 也可以多文件显示
cat test1.txt test2.txt >test3.txt 把多个文件合并成一个
cat >test.txt 创建编辑文件,后边接要编辑的内容ctrl+d或c可结束编辑 如果错了 需要按住CTRL+退格键
cat>>test.txt<<EOF 飞交互式编辑或追加内容到文件尾部 EOF必须成对出现 也可以用别的标签替换
hello wod
EOF
cat /dev/null >test.txt 情况文件内容
参数:-n 显示行号
-b 去除空行显示行号
-E 每一行行尾带上$符号
-s 当有连续以上的空白行,就替换为一行空白行
-T Tab字符显示为 ^I
-v 除了LFD和TAB 使用^和M-引用
2、tac 反向显示文件内容 是cat的反写 连个命令都是以一行文本为单位的
参数:-b 在行前添加分割标志
-r 将分割标志视为正在我表达式来解析
-s 使用指定字符串进行分割
3、more 分页显示文件内容
语法:more 选项 文件
参数:-num 指定屏幕显示大小为num行
+num 从行号num开手显示
-s 把连续的多个空行显示为一行
-p 不滚屏 而是清楚整个屏幕 然后显示文本
-c 不滚屏,从每一屏顶部开始显示文本,每显示完一行,就清楚这一行的剩余部分
4、less 分页显示文件内容 比more更为强大
语法:less 参数 文件
参数:-i 搜索时忽略大小写
-m 显示百分比
-N 显示每行的行号
-s 将连续空行压缩成一行
-e 当显示到结尾时自动退出文件 ,若不用此选项参数,则需要输入q 退出交互模式
5、head 显示文件内容头部 不接参数 默认显示10行
参数:-n 指定显示的行数 head -5 eg1.txt
-c 指定显示的字节数
-q 不显示包含给定文件名的文件头
-v 总是显示包含给定文件名的文件头
6、tail 显示文件内容尾部 默认10行
实例:
tail -5 eg1.txt 显示后5行
tail -n +5 eg1.txt 从第5行开始显示
7、tailf 跟着日志文件 等同于 tail -f 不同的是如果文件不增长,那么她不会去访问磁盘,也不会更改访问时间
tailf -n(指定显示的行数) 文件
8、cut 从文本中提取一段文字并且输出
参数:-c 以字符单位进行分割
-d 自定义分割符,默认以tab为分割符
-f 与-d一起使用,指定显示区域
N 第N个字节或字段
N- 第N个字节或字段至末尾
N-M 第N-M个字节或字段 包含M
-M 第1到M(含)个字节或字段
实例:
cut -b 3 eg1.txt 每一行只输出第三个字节
cut -b 3-5,8 eg1.txt 输出3-5的字节和第8个字节
cut -b 3- eg1.txt 输出第2个字节至行尾
9、split 分割文件
语法:split 选项 输入文件 输入文件名前缀
参数:-b 指定分割后文件的最大字节数
-l 指定分割后最大行数
-a 指定后缀长度
-d 使用数字后缀
实例:
[root@mrxw eg]# split -l 3 eg1.txt new_ 默认字母后缀
[root@mrxw eg]# ls
eg1.txt eg2.txt eg3.txt new_aa new_ab new_ac new_ad new_ae
[root@mrxw eg]# split -l 3 -d eg1.txt new_ 数字后缀
[root@mrxw eg]# ls
eg1.txt eg2.txt eg3.txt new_00 new_01 new_02 new_03 new_04 new_aa new_ab new_ac new_ad new_ae
cut -b 100k -d eg1.txt new_ 按大小分割
10、paste 合并文件
语法:paste 选项 文件
参数:-d 指定合并的分割符 默认TAB
-s 每个文件占一行
实例:
[root@mrxw eg]# paste eg1.txt eg2.txt
1 one
[root@mrxw eg]# paste -d: eg1.txt eg2.txt
1:one
[root@mrxw eg]# cat eg1.txt
1
2
3
4
5
[root@mrxw eg]# paste -s eg1.txt
1 2 3 4 5
11、sort 文本排序
sort eg1.txt 默认升序排序
参数: -b 忽略每行开通的空格
-n 按数值大小进行排序
-r 倒序排序
-u 去除重复行
-t 指定分隔符
-k 按指定区间排序
12、join 按两个文件相同字段合并 但必须是排序过后的
join eg1.txt eg2.txt
13、uniq 去除重复行(只能是相邻的)
-c 去除重复行,并计算每行出现的次数
-d 只显示重复行
-u 只显示唯一行
sort -n eg1.txt | uniq -c
14、wc 统计文件的行数,单词数或者字节数
wc -c eg1.txt 统计字节数
wc -l eg1.txt 统计行数
wc -L eg1.txt 打印最长行的长度
15、iconv 转换文件的编码格式
语法: iconv 选项 原编码 新编码 输入文件
参数:-f encodingA 从编码A转化
-t encofdingB 转换成编码B
-l 显示系统支持的编码
-o 将输出输入到指定文件
实例:iconv -f gb2312 -t utf-8 eg1.txt
16、dos2unix 将DOS(windows)格式文件转换成UNIX格式
DOS的文件是以‘\r\n’作为转换标志 dos2unix 将‘\r\n’转换成‘\n’
UNIX是‘\n’ unix2dox 将\n 转换成 \r\n
不经过转换会出错
语法:dos2unix 文件
17、diff 比较两个文件的不同 可以逐行比较 并输出文件的差异
diff 文件1 文件2
参数:-y 以并列的方式显示 -W 使用-y参数 指定显示宽度 -c 使用上下文输出格式 -u使用统一格输出
diff 还可以比较目录
18、vimdiff 可视化比较工具
退出需要执行两次(:q)
19、rev 反向输出文件内容
rev eg1.txt
20、tr 替换或删除字符
tr 选项 字符1 字符2 <文件
参数:-d 删除字符 -s 保留连续字符的第一个字符,删除其他字符 -c 使用第一个字符串的补集 取反
[root@mrxw eg]# tr -d hell <eg1.txt 删除指定字符
word
tr -d '\n\t' <文件 删除所有换行符和TAB
tr '[0-9]' '[a-j]' <文件 数字替换成字母
tr -c '0-9' '*' <文件 除了数字外其他的都替换成*
21、od 按不同进制显示文件
22、tee 多重定向
tee 选项 文件
参数 -a 向文件追加内容 而不是覆盖
23 vi vim 文本编辑器命令
Linux基础命令(三)——>文件过滤及内容编辑处理命令的更多相关文章
- Linux基础命令之文件过滤及内容编辑处理(二)
. wc 用于统计文件的行数,单词,或字节数 -l # 统计行数 -L # 打印最长行的长度,一般脚本中判断字符长度 -c # 统计字节数 -w # 统计单词数 -m 统计字符数 . iconv 转换 ...
- Linux基础命令之文件过滤及内容编辑处理(一)
. cat 功能是连接多个文件并且打印到屏幕输出,或重定向到指定的文件 五大功能: 1.查看文件内容 cat file.txt 2.合并文件内容 cat file1 file2>newfile3 ...
- Liunx运维(三)-文件过滤及内容编辑处理
文档目录: 一.cat:合并文件或查看文件内容 二.tac:反向显示文件内容 三.more:分页显示文件内容 四.less:分页显示文件内容 五.head:显示文件头部内容 六.tail:显示文件尾部 ...
- linux命令---查找文件中的内容
linux命令---查找文件中的内容 [yang@localhost ~]$ cat 1.txt |egrep '123456789|second'-------匹配123456789或者seco ...
- Linux基础知识之文件的权限(一)
Linux基础知识之文件权限(一) Linux优点之一就是它拥有多用户多任务的环境,在提供文件共享的同时也能保证用户文件的安全性.所以,设置文件的权限管理变得尤为重要. 权限讲解 [der@Der ~ ...
- linux命令截取文件最后n行(所有命令)
linux命令截取文件最后n行(所有命令) tail -n a.txt > b.txt 联想:系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) una ...
- Linux基础-2.目录文件的浏览、管理及维护
1.Linux文件系统的层次结构 1)了解Linux文件系统的树状结构: 在Linux或UNIX操作系统中,所有的文件和目录都被组织成一个以根节点开始的倒置树状结构 2)掌握目录的定义:目录相当于Wi ...
- Linux基础之基本命令cat less more sort uniq alias 命令行 bash简单描述(三)
获取Linux当前最新的内核版本号经常关注www.kernel.org 目录管理:ls cd pwd mkdir rmdir tree 文件管理:touch stat file rm cp mv na ...
- Linux基础3(文件权限)
文件权限 1.普通权限 (登陆用户对文件或目录的读写执行的权限) 普通权限对管理员用户无效 文件和目录 都有4中类型的用户u 所有者 : 文件.目录的创建者g 所属组 : 文件.目录属于的用户组o 其 ...
随机推荐
- sql语句修改字段类型和增加字段
/*修改字段类型*/ ) go /*增加字段和说明*/ ) EXECUTE sp_addextendedproperty N'MS_Description','说明文字',N'user',N'dbo' ...
- wireshark抓包,安装及简单使用
跟着实验室师兄尝试做流量分析,趁着离期末考试还有几天,尽快把环境搭好. 采集:自动化测试monkeyrunner,ok 抓包 charles/Wireshark,ok 限制其他应用运行App Moun ...
- Linux学习之路(三)Shell脚本初探
本文参考链接:http://www.runoob.com/linux/linux-shell.html 基本说明 Shell脚本(shell script)是一种为shell编写的脚本程序.其中she ...
- css简单的一些基础知识
css层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言.CSS不仅可 ...
- openstack安装过程报错
问题一 .执行启动neutron服务报错[root@localhost ~]# systemctl start neutron-server.service Job for neutron-serve ...
- 电梯调度编写(oo-java编程)
第二单元的问题是写一个关于电梯调度的程序. 需要模拟一个多线程实时电梯系统,从标准输入中输入请求信息,程序进行接收和处理,模拟电梯运行,将必要的运行信息通过输出接口进行输出. 主要锻炼学生的多线程程序 ...
- codeforces#1139D. Steps to One (概率dp+莫比乌斯反演)
题目链接: http://codeforces.com/contest/1139/problem/D 题意: 在$1$到$m$中选择一个数,加入到一个初始为空的序列中,当序列的$gcd$和为$1$时, ...
- Linux如何在一个文件中写入内容
Linux中,在一个文件中写入内容,可以vim打开编辑模式,输入我们想要的内容,此次我们使用echo命令 来在一个文件夹中写入内容. echo命令: 第一种: echo 'i love u' > ...
- 用eclipce编写 MR程序 MapReduce
package com.bw.mr; import java.io.IOException; import org.apache.hadoop.io.IntWritable; import org.a ...
- Linux系统编程之事件驱动
通常,我们写服务器处理模型的程序时,有以下几种模型:(1)每收到一个请求,创建一个新的进程,来处理该请求:(2)每收到一个请求,创建一个新的线程,来处理该请求:(3)每收到一个请求,放入一个事件列表, ...