Linux常用基本命令:三剑客命令之-awk输入输出分隔符
输入分隔符,英文原文为field separator,此处简称为FS,默认是空白字符(即空格),awk默认以空白字符为分隔符对每一行进行分割。
输出分割符,英文原文为output field separator,此处简称为OFS,awk将每行分割后,输出在屏幕上的时候,awk默认的输出分割符也是空格。
1,用F选项,指定输入分隔符
ghostwu@dev:~/linux/awk$ cat ghostwu.txt
ghostwu--man
zhangsan--woman
lisi--woman
ghostwu@dev:~/linux/awk$ awk '{print $1, $2, $3}' ghostwu.txt
ghostwu--man
zhangsan--woman
lisi--woman
如果不指定分隔符,默认用空格,是不能切割ghostwu-20-man 这一行的 每一列的
ghostwu@dev:~/linux/awk$ awk -F- '{print $1, $2, $3}' ghostwu.txt
ghostwu man
zhangsan woman
lisi woman
F指定'-'为分隔符,同理,先利用sed把ghostwu.txt分割符变成#,然后再用awk的F选项指定分隔符#来进行切割
ghostwu@dev:~/linux/awk$ sed -i 's/\-/#/g' ghostwu.txt
ghostwu@dev:~/linux/awk$ cat ghostwu.txt
ghostwu##man
zhangsan##woman
lisi##woman
ghostwu@dev:~/linux/awk$ awk -F# '{print $1, $2, $3}' ghostwu.txt
ghostwu man
zhangsan woman
lisi woman
也可以使用内置变量FS 配合-v选项指定输入分隔符
ghostwu@dev:~/linux/awk$ awk -v FS='#' '{print $1, $2, $3}' ghostwu.txt
ghostwu man
zhangsan woman
lisi woman
而-F,就是options的一种,用于指定输入分隔符。
-v也是options的一种,用于设置变量的值。
2,使用OFS指定输出分隔符,OFS是内置变量,配合v选项一起使用
ghostwu@dev:~/linux/awk$ cat ghostwu.txt
ghostwu##man
zhangsan##woman
lisi##woman
ghostwu@dev:~/linux/awk$ awk -v FS='#' '{print $1, $2, $3}' ghostwu.txt
ghostwu man
zhangsan woman
lisi woman
ghostwu@dev:~/linux/awk$ awk -v FS='#' -v OFS='--->' '{print $1, $2, $3}' ghostwu.txt
ghostwu--->--->man
zhangsan--->--->woman
lisi--->--->woman
注意的在输出列的时候,列与列之间要用逗号,如果不用逗号,就变成连接在一起输出
ghostwu@dev:~/linux/awk$ awk -v FS='#' -v OFS='--->' '{print $1 $2 $3}' ghostwu.txt
ghostwu20man
zhangsan22woman
lisi23woman
ghostwu@dev:~/linux/awk$
Linux常用基本命令:三剑客命令之-awk输入输出分隔符的更多相关文章
- Linux常用基本命令:三剑客命令之-sed
sed是一个很强大的文件处理工具,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作 格式:sed [option] [command] [file] 常用命令: a ∶新 ...
- Linux常用基本命令(less)
转: Linux常用基本命令(less) LESS:跟more命令的功能类似,都是用于分页显示内容,但是他的性能比more更高,功能比more更丰富,他读取文件是按需加载 格式: less [opti ...
- Linux 常用基本命令及应用技巧
需要pdf 版 联系我 我的文件中有目录一.Linux 的常用基本命令................................................................. ...
- ## 本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘
本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘一,磁盘管理1.显示当前目录位置 pwd2.切换目录 cd ...
- Linux中使用sed命令或awk命令修改常规配置文件
一.方案: Linux中使用sed命令或awk命令修改常规配置文件 二.步骤: 1.假设有一个a.txt,内容如下: #!/bin/bash aa= bbb= ccc= #ddd= 2.如果想要把里面 ...
- Linux 常用的压缩命令有 gzip 和 zip
Linux 常用的压缩命令有 gzip 和 zip,两种压缩包的结尾不同:zip 压缩的后文件是 *.zip ,而 gzip 压缩后的文件 *.gz 相应的解压缩命令则是 gunzip 和 unzip ...
- Linux常用基本命令:三剑客命令之-awk基础用法
awk是一个超级强大的文本格式化处理工具,他与grep, sed命令被成为linux 三剑客命令 三剑客命令的特点: grep:只要用来匹配和查找文本 sed: 编辑匹配到文本 awk: 格式化文本, ...
- Linux常用的基础命令总结
man 查看英文命令帮助 可以看作--help 拷贝目录的命令cp -a 包含所有 ls -a 显示所有文件包括隐藏文件 -ld ls -F 过滤目录文件(给不同类型文件结尾加上不同的符号) ...
- Linux常用97条命令
1.ls [选项] [目录名 | 列出相关目录下的所有目录和文件 -a 列出包括.a开头的隐藏文件的所有文件 -A 通-a,但不列出"."和".." -l ...
随机推荐
- [转]WordPress“添加媒体”文件时只显示上传到当前文章的附件图片
使用WordPress的朋友应该都清楚,特别是喜欢图文并茂的网站,肯定离不开的就是WordPress文章编辑页面的“添加媒体”按钮,每次点击就能弹出一个插入多媒体的界面,然后页面默认就会列举加载所有最 ...
- modelsin联合仿真
1-选择eda仿真工具 tool->options->eda tool options 2-assignments->settings->eda tool settings- ...
- Vuejs——(1)入门(单向绑定、双向绑定、列表渲染、响应函数)
版权声明:出处http://blog.csdn.net/qq20004604 目录(?)[+] 参照链接: http://cn.vuejs.org/guide/index.html [起步]部 ...
- [Unity插件]DOTween基础
官方文档链接:http://dotween.demigiant.com/documentation.PHP#globalSettings 普通版下载地址:http://dotween.demigian ...
- JavaScript实现LUHN算法验证银行卡号有效性
一般验证银行卡有效性用到一种叫做LUHN的算法,简介请参考这篇博客:基于Luhn算法的银行卡卡号的格式校验 注意: 1.LUHN算法只是能校验卡号是否有效,并不能校验卡号和用户名是否一致. 2.如果有 ...
- Spring,为内部方法新起一个事务,此处应有坑。
事务的作用,使我们操作能够连贯起来.而spring则是提供了一个更简单的方法,只要使用 @Transactional 一个注解,就可以保证操作的连贯性了. 普通用法,稍后再说,这里要说的是: 在最外面 ...
- Java匹马行天下之JavaSE核心技术——面向对象
面向对象 注: 看此篇时强烈建议有一定的面向对象思想基础,有一定的基础后先翻到下面看第九条: 9.面向对象: 从未封装→封装→继承→多态→抽象类→接口的代码演变 按这个逻辑去看,,哪有不理解 ...
- String类、常量池、字符串比较
String类.常量池.字符串比较 一:String类 1.String类又称作不可变字符序列 2.String位于java.lang包中,Java程序默认导入 ...
- Liferay7 BPM门户开发之3: Activiti开发环境搭建
下载地址: http://activiti.org/download.html 源码: https://github.com/Activiti/Activiti 环境准备(检查项): JDK 1.7 ...
- vue安装及axios、stylus、iview的安装流程整理
现在做的项目中主要用到以下几个安装包,所以整理下流程: 使用命令行工具npm新创建一个vue项目 vue中axios的安装和使用 在vue项目中stylus的安装及使用 如何在vue中全局引入styl ...