Shell 目录中的长列表值和计算值
编写一个shell脚本,使用Shell 目录中的长列表值和计算值,shell,unix,awk,Shell,Unix,Awk,编写一个shell脚本,使用awk命令显示长列表值,但打印字段的双倍值并存储为单独的字段, 例: 我有 预期成果: 所需实际产出 这里我需要的40是单独字段中20的两倍值这是您所期望的吗 /tmp> ls -l vgrs.txt data.csv -rw-r--r-- 1 xxxx yyyy 96 Dec 24 08:10 data.csv -rw-r--r-- 1 xxxx yyyy 148 Dec 24 08:02 vgrs.txt /tmp> ls -l vgrs.txt d
awk
命令显示长列表值,但打印字段的双倍值并存储为单独的字段,
例:
我有
预期成果:
所需实际产出
这里我需要的40是单独字段中20的两倍值这是您所期望的吗
/tmp> ls -l vgrs.txt data.csv
-rw-r--r-- 1 xxxx yyyy 96 Dec 24 08:10 data.csv
-rw-r--r-- 1 xxxx yyyy 148 Dec 24 08:02 vgrs.txt
/tmp> ls -l vgrs.txt data.csv | awk ' $(NF+1)=$5*2 '
-rw-r--r-- 1 xxxx yyyy 96 Dec 24 08:10 data.csv 192
-rw-r--r-- 1 xxxx yyyy 148 Dec 24 08:02 vgrs.txt 296
/tmp>
说明:
如果有n列,则可以通过操纵现有列,使用$(NF+1)再添加一列 您好,欢迎光临,您是否希望正确地编写您的问题,以便用户能够帮助您解决问题?参见此处请编写一个shell脚本,通过将字段值加倍来显示,并使用awk命令将其存储在另一个字段中您有
print{2*$2}
-也许可以考虑哪个字段是$2
,哪个字段需要加倍。这不是一个家庭作业网站,所以我不会给你完整的解决方案。请阅读,然后问一个关于你想做什么的问题,而不是你想如何做的问题(另请参阅)。
ls -l -g | awk print{ 2 * $2}
-rw-r--r-- 1 root.usersgrp 120 dec 24 11.21 a.txt
-rw-r--r-- 2 root.usersgrp 20 dec 24 11.22 b.txt
-rw-r--r-- 1 root.usersgrp 20 dec 24 11.22 b.txt 40
/tmp> ls -l vgrs.txt data.csv
-rw-r--r-- 1 xxxx yyyy 96 Dec 24 08:10 data.csv
-rw-r--r-- 1 xxxx yyyy 148 Dec 24 08:02 vgrs.txt
/tmp> ls -l vgrs.txt data.csv | awk ' $(NF+1)=$5*2 '
-rw-r--r-- 1 xxxx yyyy 96 Dec 24 08:10 data.csv 192
-rw-r--r-- 1 xxxx yyyy 148 Dec 24 08:02 vgrs.txt 296
/tmp>