我需要从这个命令的字符串中删除最后一个字符:
sudo docker stats --no-stream 39858jf8 | awk '{if (NR!=1) {print $2}}'
结果是5.20%
,我需要%
在最后删除,给5.20
. 是否可以在同一命令中执行此操作?
我需要awk
用不同的情况替换脚本中的一部分命令,如下所示:
CONTAINER=$1
RESULTS=$(ssh -o LogLevel=QUIET -t -i ~/key.pem user@server sudo docker stats --no-stream $CONTAINER | awk '{if (NR!=1) {print substr($2, 1, length($2)-1)}}')
Run Code Online (Sandbox Code Playgroud)
对此:
#!/bin/bash
CONTAINER=$1
TYPE=$2
case "${TYPE}" in
cpu)
AWK="'{if (NR!=1) {print substr($2, 1, length($2)-1)}}'"
;;
esac
RESULTS=$(ssh -o LogLevel=QUIET -t -i ~/key.pem user@server sudo docker stats --no-stream $CONTAINER | awk $AWK)
Run Code Online (Sandbox Code Playgroud)
但我总是收到语法错误。