今天偶然研究awk,有一个文件,文件内容是全篇的1 2 3 4 5 6 7 8 9 0

现在想打印除了第一列意外的所有列

文件内容:

[root@localhost ~]# cat test.txt
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0

执行代码:

awk '{ $1=""; print $0 }' test.txt 

执行的结果是:

[root@localhost ~]# awk '{ $1=""; print $0 }' test.txt 
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0
 2 3 4 5 6 7 8 9 0

发现,果然少了第一列

但是如果想少去第二列,可以将$1修改为$2

[root@localhost ~]# awk '{ $2=""; print $0 }' test.txt 
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0
1  3 4 5 6 7 8 9 0

同样,最后一列的话,可以把$2修改为$NF

[root@localhost ~]# awk '{ $NF=""; print $0 }' test.txt 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 
1 2 3 4 5 6 7 8 9 

还有一种方法是在awk中写一个循环即可

[root@localhost ~]# awk '{ for(i=1; i<=1; i++){ $i="" }; print $0 }' test.txt
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0
2 3 4 5 6 7 8 9 0

同样,如果你想输出$6到最后的话,可以这样写

[root@localhost ~]# awk '{ for(i=1; i<=5; i++){ $i="" }; print $0 }' test.txt
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0
6 7 8 9 0

【Linux】awk想打印制定列以后的所有列的更多相关文章

  1. awk中打印连续多列,或者删除多列的技巧

    问题:比如有一个文件是20列,你只要后面的18列,怎么打印. 方法:把第一列和第二列做空:用print打印 [wangjq@mgmt humandb]$ cat test 1 2 3 4 5 6 7 ...

  2. linux awk命令详解,使用system来内嵌系统命令, awk合并两列

    linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...

  3. [Linux] AWK命令详解(大全)

    转载自:http://caoyanbao.iteye.com/blog/570868 什么是awk? 你可能对UNIX比较熟悉,但你可能对awk很陌生,这一点也不奇怪,的确,与其优秀的功能相比,awk ...

  4. linux awk浅析(转)

    Awk 是一种非常好的语言,同时有一个非常奇怪的名称.在本系列(共三篇文章)的第一篇文章中,Daniel Robbins 将使您迅速掌握 awk 编程技巧.随着本系列的进展,将讨论更高级的主题,最后将 ...

  5. Linux awk学习

    零.awk标准语法 [root@wohaoshuai1 bbb]# echo "abcd" |awk 'BEGIN{print "wohaoshuai"} /a ...

  6. linux awk 常见字符串处理

    awk指定输出列: awk '{print $0} file' #打印所有列awk '{print $1}' file #打印第一列 awk '{print $1, $3}' file #打印第一和第 ...

  7. Linux awk命令使用方法

    awk是linux上非常好用的文本处理工具,常用于指定列的处理,包括获取指定列的内容.根据指定列匹配关系输出等文本处理.本文主要描述awk命令的基本语法.正则表达式与操作符的使用.常用内置变量的含义和 ...

  8. linux awk,sort,uniq,wc,cut命令详解

    1.awk awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息 $ 表示当前行 $ 表示第一列 NF 表示一共有多少列 $NF 表示最 ...

  9. Linux awk命令 --三剑客老大

    Linux awk命令 --三剑客老大 基本用法: awk  [参数]  ['找谁{干啥}']  文件 参数: -F 分隔符 -v 创建或修改awk变量 OFS 输出分割符 awk显示每一列的时候分隔 ...

随机推荐

  1. CentOS6下的ElasticSearch运行步骤

    如何运行ElasticSearch: 1.首先安装jdk1.8版本或以上. 2.下载elasticsearch的压缩包.(我下载的是elasticsearch-6.3.2.tar.gz) 3.使用命令 ...

  2. Spring(一)--简介

    一.概述(什么是spring): Spring是分层的Java SE/EE应用full-stack(一站式)轻量级开源框架.他解决的是业务逻辑层和其他各层的松耦合问题,将面向接口的编程思想贯穿整个系统 ...

  3. 移动端 CSS3动画属性

    一.transform 转换属性 #1. translate位移 transform : translate(50px,100px); //把元素水平移动 50 像素,垂直移动 100 像素 tran ...

  4. CSS练习 —— css选择器

    CSS选择器就是 通过选择器来 定位 你要控制的样式的部分,分为以下几种 1.HTML选择符(标签选择器) 就是把HTML标签作为选择符使用 如 p {.......} 网页中所有的P标签采用此样式 ...

  5. C# 学习第七天

    P96 面向对象的概念 ①先有的 面向过程 --------> 然后才衍生出面向对象的思想 ②面向过程:面向的是完成这件事儿的过程,强调的是完成这件事儿的动作 比如说 把大象塞进冰箱去 ③面向过 ...

  6. Python编程基础:循环结构

    一.为什么要用循环 现在有一个任务,要求你输出一百遍"好好学习,天天向上!",想一想,你会怎么做? (一)老老实实的笨方法 print("第1遍写:好好学习,天天向上!& ...

  7. NET 5 原子操作、接口限流Semaphore以及性能测试JMeter

    一.Semaphore 限流也可使用令牌桶算法+redis 1.Semaphore定义 类似互斥锁,但它可以允许多个线程同时访问一个共享资源 通过使用一个计数器来控制对共享资源的访问,如果计数器大于0 ...

  8. C#中 Thread,Task,Async/Await 异步编程

    什么是异步 同步和异步主要用于修饰方法.当一个方法被调用时,调用者需要等待该方法执行完毕并返回才能继续执行,我们称这个方法是同步方法:当一个方法被调用时立即返回,并获取一个线程执行该方法内部的业务,调 ...

  9. 【红日安全-VulnStack】ATT&CK实战系列——红队实战(二)

    一.环境搭建 1.1 靶场下载 靶场下载地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/3/ 靶机通用密码:  1qaz@WSX 1.2 环境配置 ...

  10. java.io.IOException: Target host must not be null, or set in parameters. scheme=null, host=null, path=/

    使用的 xutils 出现标题中的错误 原因:没有添加 Cookie 1 params.addHeader("Cookie", CurrentUserSettings.getCoo ...