Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试使用 awk 的输出格式,以便输出用逗号分隔。现在我有这个:
ids ="`smartctl -A /dev/ssd |awk '/^[0-9]/ {if ($4 < $6) {print $1}}'`"
我的输出如下所示:
111 222 333
但我想要这样的东西:
111,222,333
另外我的正则表达式与数字 1 到 99 不匹配,为什么?
又快又脏:
your command|awk...|paste -s -d','
例如:
kent$ paste -s -d',' <<< "a b c d" a,b,c,d
刚刚修复了您awk要使用的命令printf:
awk
printf
smartctl -A /dev/ssd |awk '/^[0-9]/ {if ($4 < $6){printf "%s%s",sep,$1;sep=","}}'
如果你想在末尾添加一个尾随换行符END{print ""}。
END{print ""}