【Linux】命令写在文件中并调用awk -f

我们在使用awk命令的时候,有时候命令特别长,在终端写出来格式太乱,难以阅读,以下是一个将命令写在文件中,并使用awk调用的具体案例

1.现在有文件file3.txt,内容如下:

2.ak2.awk脚本

#打印标题并格式化打印出数量合计
BEGIN { FS="\t" #设置字段分割符
       printf("%10s %2s %5s	%s\n\n",
       "Fruits","Num","Price","Place" )
      }
      { printf("%10s %2d %3d	%s\n",$1,$2,$3,$4)
       nm = nm + $2
      }
END   { printf("\n%10s %4d\n","Total",nm) }

上面这个程序在BEGIN的动作里将字段分割符设置为制表符(\t),并在输出之前打印标题,第二个printf语句(对每一输入行都会执行),将输出格式化为一张表格,使得每一列都与标题列表头对齐,END打印数量总和。

3.执行程序

awk -f ak2.awk file3.txt

4.输出结果

原文地址:https://www.cnblogs.com/OliverQin/p/10172306.html

时间: 2024-10-09 18:00:44

【Linux】命令写在文件中并调用awk -f的相关文章

Linux命令: 查找文件中的字符串

①cat filename | grep 'string' ② 原文地址:https://www.cnblogs.com/baxianhua/p/9056643.html

Linux命令大全----常用文件操作命令

林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了Linux命令大全----常用文件操作命令,并附有实例 ls 这个命令是经常用到的,用来显示当前目录下有哪些文件 ,ls最常用的参数有三个: -a -l -F.ls -a说明:Linux上的文件以"."开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示 一般文件名外,连隐藏文件也会显示出来. ls -l(这个参数是字母L的小写,不是数

Linux命令简介(文件/目录权限操作命令)

文件/目录权限 文件/目录的属性 1.权限 读取.写入.可执行 2.归属 属主.属组 注意:root用户是系统的超级用户,拥有完全的管理权限,所以目录的权限限制对root用户将不起作用.它只是针对普通用户来说的. 权限字符表示 权限      文件                目录 r         查看文件内容        查看目录内容(显示子目录.文件列表) w         修改文件内容        修改目录内容(在目录中新建.移动.删除文件或子目录) x         执行该

Linux命令详解--文件与目录查找

一·文件搜索 which:用来查找命令的绝对路径-- 显示shell命令的绝对路径-- 仅仅会在PATH变量中搜索要查找的命令-- 搜索时先查找别名,然后从PATH中查找1.查看用户的PATH变量:命令的搜索路径# echo $PATH/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin command not found可能原因:1)敲错了2)命令没有安装3)命令

分布式进阶 十 linux命令行下载文件以及常用工具 wget Prozilla MyGet Linuxdown Cu

linux命令行下载文件以及常用工具:wget.Prozilla.MyGet.Linuxdown.Curl.Axel 本文介绍常用的几种命令行式的下载工具:wget.Prozilla.MyGet.Linuxdown.Curl.Axel 下面就为大家详细介绍一下这些工具. 1. Wget Wget是一个十分常用命令行下载工具,多数Linux发行版本都默认包含这个工具.如果没有安装可在http://www.gnu.org/software/wget/wget.html 下载最新版本. 1.1 编译安

Linux命令之大文件切分与合并

当面临将一个大文件进行切分时,linux的split命令是很好的选择.它包含多种参数,支持按行.大小进行切分. split命令的语法如下: split [--help][--version][-a ][-b][-C ][-l ][要切割的文件][输出文件名前缀] 对应的参数描述如下: -a, --suffix-length=N 使用的后缀长度 (默认为 2) -b, --bytes=SIZE 每个输出文件的字节大小 -C, --line-bytes=SIZE 每个输出文件每行的最大字节大小 -d

Linux 命令安装bin文件

Linux 命令安装bin文件 安装命令: //1,增加文件的可执行权限 chmod a+x jdk-6u30-linux-x64.bin //2,程序即安装在执行命令的文件夹下 ./jdk-6u30-linux-x64.bin 原文地址:https://www.cnblogs.com/lizm166/p/9717583.html

Linux下执行的java命令重定向到文件中的方法

在Linux下通常会执行如:java -version 的命令, 但是,命令只是打印到了屏幕上不能重定向到文件中或标准输出流中. 此时需要将错误输出流重定向到标准输出流中就可以得到了. 比如:java -version> test.log 2>&1 就可以将输出的信息重定向到test.log中,注意>与-version之间不能有空格. 再比如:java -version 2>&1 | grep "java version" | awk '{pri

Linux中通过命令直接删除文件中最后一行

何谓Sed(Stream EDitor): Sed原为UNIX系统上的非交谈式文字编辑器(non-interactive stream editor).当Sed读入待编辑文件,会依编辑命令来进行文件的编辑工作. sed -i '$d' file 如同其它UNIX的指令一般,Sed亦是由标准输入(standard input)读入欲编辑的文件,经Sed处理后,再由标准输出(standard output)送出结果.由于Sed是采逐行读入文字,并依据命令来进行编辑,因此可视作档案中的文字逐行通过Se