我希望有人帮助编写一个脚本(应该在 FreeBSD 上工作,我默认使用 sh ),当我ps ax | grep bhyve
从终端执行命令时,该脚本应该抓取精确的字符串。例如 :
# ps ax | grep bhyve
43137 - Is 0:00.00 bhyve: system.pwd (bhyve)
43138 - Is 0:00.00 bhyve: system.grp (bhyve)
43132 0 IC 2:06.86 bhyve: vm0:18 (bhyve)
43234 1 D+ 0:00.00 grep bhyve (csh)
当我做 :
ps ax | awk '/bhyve: vm/{print $6}'
它给 :
vm0:18
/bhyve:
当我做 :
ps ax | awk '/bhyve: [vm]/{print $6}'
它给 :
vm0:18
但他们都错了。结果应该是:0:18
谢谢。
答案1
此代码可能有效(从字符串中删除前两个符号):
ps ax | awk '/bhyve: [vm]/{print substr($6,3)}'