linux中cut、printf、awk、sed命令
cut、printf、awk、sed在linux中都是用来处理文本的命令,接下来一个一个看。
一、cut命令
cut [选项] 文件名
选项:

主要使用一下两个参数,若是只使用 -f 则默认的分割符为 \t
-f 列号:提取第几列
-d 分隔符:按照指定的分割符分割列
命令说明:
cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。
如果不指定 File 参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一。
例:cut -f 2,4 stu.txt // 取出第2,4列,按 \t 分割
例:cut -f 2 -d ":" stu.txt // 取出第2列,按 : 分割
注意:cut是由局限性的,若是数据中间有好多的空格,而你又是按照空格来切分的,这个时候会有好多的空白数据,但是awk可以解决这个问题。
二、printf命令
printf '输出类型输出格式' 输出内容
输出格式
%ns // 输出字符串,n为输出几个字符
%ni // 输出整数,n为输出几个数字
%m.nf // 输出浮点数,m为输出的整数位,n为输出的小数位
输出格式

使用案例
printf '%s %s %s\n' 1 2 3 4 5 6
结果:
1 2 3
4 5 6
printf '%s\t%s\t%s\n' $(cat stu.txt)
结果:
原数据

执行后

三、awk命令
AWK是一种处理文本文件的语言,是一个强大的文本分析工具。
之所以叫AWK是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的Family Name的首字符。

直接上例子:
awk '{printf $2 "\n"}' a.txta.txt // 取出第2列
BEGIN
awk 'BEGIN{printf "this is a printf \n"} {printf $2 " " $3 "\n"}' student.txt
结果:在开始先输出
this is a printf
NAME GENDER
优优 女
阿斌 男
堂哥 女
END
awk 'END{printf "this is a printf \n"} {printf $2 "\t" $3 "\n"}' student.txt
结果:在最后结束后输出
NAME GENDER
优优 女
阿斌 男
堂哥 女
this is a printf
FS=":" // 按:号切割
awk 'BEGIN{FS="-"}{printf $1 "\n"}' a.txt
条件判断
awk 'BEGIN{FS="-"}$2>10{printf $2 "\n"}' a.txt
条件1{执行1}条件2{执行2}
四、sed命令
Linux sed命令是利用script来处理文本文件。
sed可依照script的指令,来处理、编辑文本文件。
语法
sed [-hnV][-e<script>][-f<script文件>][文本文件]
参数
动作说明

例子:
sed -n '2p' student.txt // 查看第二行
sed -i '1a xxxxxxx' a.txt // -i会操作到文件,1a 追加第一行
sed -i '1c xxxxxxx' a.txt // 替换第一行的数据
sed -i '1d' a.txt // 删除第一行
sed '4s/78/98/g' // 把4列的78换成98
sed -e '1s/xxx//g;2s/xxx//g'// 把第一列的xxx和第二列的xxx替换为空
sed -i -e '1s/xxx//g;2s/xxx//g'// 把第一列的xxx和第二列的xxx替换为空,操作到文件
linux中cut、printf、awk、sed命令的更多相关文章
- [Shell]字符截取命令:cut, printf, awk, sed
------------------------------------------------------------------------------------------- [cut命令] ...
- cut printf awk sed grep笔记
名称 作用 参数 实例 cut 截取某列,可指定分隔 -f 列号 -d 分隔符 cut -d ":" -f 1, 3 /etc/passwd 截取第一列和第三列 printf pr ...
- linux中cut命令与tr命令
目录 一:linux中cut命令 1.cut 命令作用 2.参数 3.参数案例解析: 二:tr命令 1.tr命令作用 2.tr命令格式 3.tr命令参数 4.案例解析: 一:linux中cut命令 1 ...
- Linux中系统检测工具top命令
Linux中系统检测工具top命令 本文转自:https://www.cnblogs.com/zhoug2020/p/6336453.html 首先介绍top中一些字段的含义: VIRT:virtua ...
- linux中没有dos2UNIX或者UNIX2dos命令怎么解决办法
linux中没有dos2UNIX或者UNIX2dos命令怎么解决办法 http://blog.csdn.net/w616589292/article/details/38274475 dos2unix ...
- linux中常用的60个命令及作用详解
Linux 必学的 60 个命令 Linux 提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在 Linux 系统上工作离不开使用系统 ...
- Linux课程---12、linux中内存指令(top命令的作用是什么)
Linux课程---12.linux中内存指令(top命令的作用是什么) 一.总结 一句话总结: top实时观察进程.内存和CPU情况 1.电脑出现反应慢情况,最先想到的是什么? 内存 2.linux ...
- linux中Jenkins启动/重启/停止命令
简要记录一下Linux 中Jenkins启动/重启/停止命令 启动service jenkins start1重启service jenkins restart1停止service jenkins s ...
- 详解Linux中的cat文本输出命令用法
作系统 > LINUX > 详解Linux中的cat文本输出命令用法 Linux命令手册 发布时间:2016-01-14 14:14:35 作者:张映 我要评论 这篇 ...
随机推荐
- SSM_CRUD新手练习(9)显示分页数据
我们已经做好了用来显示数据的分页模板,现在只需要将我们从后台取出的数据填充好,显示出来. 我们使用<c:forEach>标签循环取出数据,所以需要先导入JSTL标签库 <%@ tag ...
- .NET Core微服务之路:利用DotNetty实现一个简单的通信过程
上一篇我们已经全面的介绍过<基于gRPC服务发现与服务治理的方案>,我们先复习一下RPC的调用过程(笔者会在这一节的几篇文章中反复的强调这个过程调用方案),看下图
- Varnish实现Web站点加速
Varnish 是一款高性能的开源HTTP加速器,挪威最大的在线报纸 Verdens Gang使用3台Varnish代替了原来的12台Squid,性能比以前更好. Varnish 的作者Poul-He ...
- XCode 无法识别设备
XCode 取消Unpair Device 后不能读取设备 1:退出XCode 2:断开设备连接 3:在终端执行‘sudo pkill usbmuxd’ 4:重启XCode 5:连接设备即可
- jzoj5929. 【NOIP2018模拟10.26】情书
动态规划: #include<bits/stdc++.h> using namespace std; int n,iv[30]; #define mo 998244353 typedef ...
- harbor镜像仓库-02-https访问配置
harbor镜像仓库-02-https访问配置 harbordockerhttps harbor搭建部署参考上一章节 harbor镜像仓库-01-搭建部署 Harbor默认使用http,给harbor ...
- mybatis 详解(一)
http://www.cnblogs.com/ysocean/p/7271600.html 1.什么是MyBatis? MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目 ...
- LeetCode:21_Merge Two Sorted Lists | 合并两个排序列表 | Easy
题目:Merge Two Sorted Lists Merge two sorted linked lists and return it as a new list. The new list sh ...
- 微信开发之获取openid及推送模板消息
有很多的朋友再问我怎么获取code,openid之类的问题,在这里我就给大家分享一下. 在做微信支付是需要获取openid的,推送模板消息也是需要openid包括其他一些功能分享等也都是需要的,ope ...
- android开发学习——day8
关于UI学习的总结 EditText的练习 MainActivity.java代码 package test.example.com.ch02_button; import android.suppo ...
