在写shell脚本,如何使用awk获取一行数字里的第6,12,18列。。等6的倍数的列的值。

作者&投稿:登空 (若有异议请与网页底部的电邮联系)
linux列统计不同值操作的awk或shell脚本~

!#/bin/awk -fBEGIN{ print "下面是文件对列的统计";}{ for(i=1;i<=NF;i++) ++a[i][$i];}END{ for(i=1;i<=NF;i++) { printf("第%s列",i); for(j in a[i]) printf("%s,%s次",j,a[i][j]); print ""; } print "输出完毕";}
将这个文件保存成一个文本文件,我这里举例文件名叫script,你要改成什么都可以
然后在命令行里敲
gawk -F"," -f /path/to/script /path/to/your/txt/file

比如你的test.txt和script文件都放在同一个文件夹/home/ha,那这个命令就是
gawk -F"," -f /home/ha/script /home/ha/test.txt

或者你也可以单敲一行命令
gawk -F"," 'BEGIN{ print "开始输出对列的统计"; } { for(i=1;i<=NF;i++) ++a[i][$i]; } END { for(i=1;i<=NF;i++) { printf("第%s列",i); for(j in a[i]) printf("%s,%s次",j,a[i][j]); print ""; } print "输出完毕"; }' test.txt

都是一样的,test.txt是你要统计的文件

这下面你的文件产生的输出

开始输出对列的统计
第1列1,5次10,1次
第2列2,4次20,2次
第3列3,5次30,1次
第4列4,6次
第5列5,5次50,1次
第6列6,3次60,3次
输出完毕

awk有很多很多版本,这个脚本用gawk是可以的,其他的awk不一定。

设分隔符是空格,用awk 或 cut都可以
cat file.txt | cut -d " " -f2
cat file.txt | awk '{print $2}'




如何写一个shell脚本将csv的多列合并成一列?
你可以使用awk命令来处理这个问题,创建一个Shell脚本如下:```bash !\/bin\/bash awk -v OFS=',' '{ print $1$2$3$4,$1,$2,$3,$4 }' input.csv > output.csv ```在上面的脚本中:- `#!\/bin\/bash` 表示这是一个bash脚本。- `awk` 是一个强大的文本...

怎么用shell实现,如果用户输入的不是yes\/no,就继续提示让用户输入yes\/...
1、首先打开linux系统,创建shell脚本文件,如下图所示。2、然后使用bash解释器,如下图所示。3、接着使用for语句循环,seq循环10 次,如下图所示。4、接着创建用户,用i语句接受变量,然后创建用户密码,保存shell脚本,如下图所示。5、最后修改脚本的权限,运行脚本,创建用户脚本就完成,如下图所示。

Shell脚本有哪些类型?.csh . py .sh 这些脚本有什么区别?
通常写一个shell脚本都要在第一行注明使用什么解释器来解释这个脚本,即写成:\\x0d\\x0a#!\/bin\/bash\\x0d\\x0a这样的形式,意思是告诉系统要使用\/bin\/bash这个解释器来解释下面的语句。\\x0d\\x0ashell的脚本一般用.sh作为后缀,就如1楼说的后缀名在Linux下并没有特别意义,只是便于人类区分而已,...

shell脚本创建文件并写入内容
一、cat和EOF cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的;EOF是“end of file”,表示文本结束符。结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果。二、使用 看例子是最快的熟悉方法:cat << EOF > test.sh > #!\/bin\/bash > #you Shell ...

什么是 Shell 脚本?
Shell就像是一个运行环境,支持多种类型,如Bourne shell(包括sh、ksh和bash)、C shell(如csh和tcsh),它们各自有特定的指令集。在Unix系统中,Bourne shell是最常见的,通常默认为\/bin\/sh,而C shell的默认提示符是%。Shell脚本实质上是一系列命令的有序集合,编写时需遵循良好的编程风格,包括...

如何用xshell编写脚本
1、在编写shell脚本的时候一般会先查询服务器可以使用哪种脚本,并且查看服务器使用的默认脚本方式是哪一种。2、进入shell的方式也是linux系统中经常使用的终端工具,也可以是外部链接软件,这两种方式都是可以的。3、进入终端后可以看到命令行前的提示符为$符号,这代表登录的是普通用户在创建shell脚本,...

linux shell脚本执行命令详解
\/data\/shell\/hello.sh linux shell脚本执行方法三: 直接使用bash 或sh 来执行bash shell脚本:cd \/data\/shell bash hello.sh 或 cd \/data\/shell sh hello.sh 注意,若是以方法三的方式来执行,那么,可以不必事先设定shell的执行权限,甚至都不用写shell文件中的第一行(指定bash路径)。因为方法三...

编写一个shell脚本输出$HOME,$0,$#,$$变量的值
直接在命令窗口输入:echo $HOME即可呀。!\/bin\/sh。echo $HOME #当前用户的家目录。echo $0 #调用程序第0个参数。echo $# #忘记了。echo $$ #打印父进程进程id。

linux shell 脚本实现tcp\/upd协议通讯
telnet与echo 实现 http访问,与通过打开读写socket是不一样的,打开socket通道,是可以进行交换处理的。传入命令,活动结果,再传入命令,再获得结果。telnet通过echo 就不能这样处理了。 三、通过shell脚本重定向实现监控memcache状态 复制代码     代码如下: #!\/bin\/sh    #通过传入ip 以及端口,发送指...

linux中shell脚本第一行怎么写
如果输入的命令作为参数的话需要加<<EOF等 这个是我写的简单脚本 !\/bin\/bash su - oracle <<EON export ORACLE_SID=trade lsnrctl stop sqlplus \/nolog <<EOF conn \/ as sysdba shutdown immediate exit EOF 第一行后加 -x是显示输出的意思,整体是用root执行启动数据库启动监听 学习shell可以...

朝阳市17765204107: 如何使用throughput.awk -
田净血宝: (1) awk 命令行 你可以象使用普通UNIX 命令一样使用awk,在命令行中你也可以使用awk 程序设计语言,,这种方法一般只用于解决简单的问题.当然,你也可以在shell script 程序中引用awk 命令行甚至awk 程序脚本.(2) 使用-f 选项调用awk 程序 awk 允许将一段awk 程序写入一个文本文件,然后在awk 命令行中用-f 选项调用并执行这段程序.(3) 利用命令解释器调用awk 程序 利用UNIX 支持的命令解释器功能,我们可以将一段awk 程序写入文本文件,然后在它的第一行加上#!/bin/awk –f.

朝阳市17765204107: 如何在shell调用awk定义的参数 -
田净血宝: 可以考虑将n的值放在一个文件中,下面有一个例子,可以参考:awk 'BEGIN { system("echo 1234 > tmpfile");}' test111=`cat tmpfile` echo $test111 rm -f tmpfile

朝阳市17765204107: awk 在shell命令中怎么用 -
田净血宝: 1.awk '{print$4}' spinout此命令是用来提取文本的第四列 要注意格式 awk与单引号要有空格 后面一个单引号与文件名也有空格2.如果要提取文本第四行的话awk 'NR==4{print}' spinout也可用sed来提取第四行 比较简单sed -n 4p spinou

朝阳市17765204107: awk引用shell中变量的几种方法 -
田净血宝: 一:"'$var'"这种写法大家无需改变用'括起awk程序的习惯,是老外常用的写法.如:var="test"awk'BEGIN{print "'$var'"}'这种写法其实就是把一对单引号分成了两段单引号,中间的shell变量直接按照shell变量的引用方式即可,但是如果var...

朝阳市17765204107: 如何在shell脚本里传递一个变量给awk -
田净血宝: 先说简单的,如果是只传递变量,有几种方法: awk '{print v1, v2}' v1=$VAR1 v2=$VAR2 input_file# 或者,这种方法不是所有的awk分支都支持 awk -v v1=$VAR1 -v v2=$VAR2 '{print v1, v2}' input_file# 或者,这种写法是最难受的 awk '{print "'"$VAR1"'", "'"$VAR2"'"}' input_file 把变量用在正则里面的方法: awk ' $0 ~ v1; {print v2}' v1=$VAR1 v2=$VAR2 input_file

朝阳市17765204107: 如何在AWK里使用SHELL命令 -
田净血宝: 这个就需要自己具备熟练的 SHELL 编程技术了,可以使用 awk 命令以及和各种 SHELL 命令结合,提取各种各样的字符串等等.但是具体的由于我很久已经没有编写SHELL程序了,所以已经忘得差不多了,如果要想熟练使用它,还必须要看相关的 SHELL 编程文档.

朝阳市17765204107: awk 这个脚本该怎么写 -
田净血宝: 印象中执行awk的文件应该是在命令行输入awk -f 文件名. shell脚本那个问题,需要把xx.sh设置为可执行的,chmod u+x xx.sh,然后才可以用./xx.sh

朝阳市17765204107: 如何编写一个shell脚本查看某个进程是否在运行 -
田净血宝: ^1 、编写一个shell脚本来查看某个进程是否在运行,用户可以通过ps命令获取所有的进程,然后通过awk命令提取进程名,再用grep提取相应的进程名即可. 2、参考代码如下:ps -aux |awk '{print $11}' | grep "^$1" >/dev/null case $? in0)echo "find process $1";;1)echo "$1 is not running";;*)echo "unknow error" esac3、脚本运行结果如下

朝阳市17765204107: 用awk时怎么用 - v把shell脚本的命令行参数全部传给awk -
田净血宝: $ awk -v var1=hello -v var2=world 'BEGIN{print var1,var2}'

朝阳市17765204107: 如何用shell脚本画出一个圆 -
田净血宝: 安装有awk命令的话:awk 'BEGIN{while(k<10){print sin(k),cos(k);k=k+0.01}}' | awk -f ColorPlot.awk#! /usr/bin/awk# 运行方法: awk 'BEGIN{while(k<10){print sin(k),cos(k);k=k+0.01}}' >datafile# awk -f ColorPlot.awk datafile BEGIN{ srand() xlen=35 ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网