awk命令可以执行,在SHELL脚本不能执行。

命令很简单,就是查看当前的服务器处理的进程数:#uptime|awk'{printf$(NF-2)}'|cut-d.-f1可以正常执行。但是写成脚本,用来判断服务器性能的... 命令很简单,就是查看当前的服务器处理的进程数:
# uptime |awk '{printf $(NF-2)}'|cut -d . -f1
可以正常执行。
但是写成脚本,用来判断服务器性能的时候,不能出来预想的效果,给变量赋值不成功。
1 #!/bin/bash
2 a=`uptime|awk '{pringf $(NF-2)}' |cut -d . -f1`
3 #负载就是进程数,每个CPU内核小于等于3时是良好性能,大于5时是性能差
4 if [[ $a -le 3 ]] ; then
5 printf {"\tProcess per CPU core is %s less than 3,Performs is good\n",$a}
6 elif [[ $a -gt 5 ]] ; then
7 printf {"\tProcess per CPU core is %s than 5,Performs is bad\n",$a}
8 fi
9 exit 0
展开
 我来答
良玉小帝
2018-01-22 · 个人日常精心汇总合集
良玉小帝
采纳数:5925 获赞数:9451

向TA提问 私信TA
展开全部
sh -x yourshell
可以查看执行过程
# sh -x 1
++ cut -d . -f1
++ awk '{pringf $(NF-2)}'
++ uptime
+ a=
+ echo

这里pringf写错了应该是printf
[root@iZ259r7h4pfZ ~]# cat 1
a=`uptime|awk '{printf $(NF-2)}' |cut -d . -f1`
echo $a
[root@iZ259r7h4pfZ ~]# sh -x 1
++ cut -d . -f1
++ awk '{printf $(NF-2)}'
++ uptime
+ a=0
+ echo 0
0
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式