我需要限制一个字段的最终大小为2048.我可以使用:
ACTION_PARAMETER=substr($2,1,2048);
但有没有更好的办法?
你可以使用printf
printf "%.2048s\n", $2
备选方法:
printf "%.2048s", $2
你可以使用字段分隔符FS
作为""
,然后限制字段数NF
:
awk 'BEGIN{FS=OFS=""} NF=2048' file
$ cat a hello how are you i am ok $ awk 'BEGIN{FS=OFS=""} NF=3' a hel how you ia
甚至作为一个参数:
$ awk -v limit=2 'BEGIN{FS=OFS=""} NF=limit' a he ho yo i
如何本地bash参数切片
printf "%s" ${2:0:2048}