awk不加参数时,默认以空格为分割符;awk -F “:”(以:为分隔符);sed指令;echo xxxx | awk '{print $n}' # 第一个xxxx部分是命令行打印出来的东西,第二个n是指打印空格分割后的第几个内容
Example:# 以:为分隔符,并打印第部分元素
echo "a:b:c:d" | awk -F ":" '{print $1}'

# 以空格为分隔符,并打印第2部分元素
echo "a:b c:d" | awk '{print $2}'

# 默认处理多行信息,如果需要指定某一行,需要加上sed指令,可以继续往下看
gpustat | awk '{print $1}'

sed -n 'xp',x是指指定的行数,从1开始计数,第一行即为1;command sed -n 'xp' # 这里的command是指能返回多行信息的命令
Example:# 取出第一行内容
gpustat | sed -n '1p'
分别取出指定行内容:

# 命令 第一行 以空格为分割的第2个单元内容
command | sed -n '1p' | awk '{print $2}'
Example:gpustat | sed -n '1p' | awk '{print $2}' # 取出第1行第2个内容,Sun
gpustat | sed -n '2p' | awk '{print $7}' # 取出第2行第7个内容,89°
完了它居然降温了,本来应该是89°的QAQ…

-eq:等于-ne:不等于-le:小于等于-ge:大于等于-lt:小于-gt:大于用if条件举例使用方法:
if [ num1 compare num2 ]
thenxxx # do something
fi# example 1:
if [ 1 -lt 2 ]
thenecho "1 < 2"
fi

if condition
thenxxx # do something
fi
Example:if true
thenecho "if I love you"
fi

while condition
do xxxif condition2thenbreak # 退出while循环fi
done
Example:while true
doecho "I love you"if truethenbreakfi
done

var=$(command) # var为command命令的返回值
# 需要注意的点:
# 1. =不能有空格
# 2. command需要用$()的形式包起来
首先在命令行中直接执行命令查看结果:
ps -ef | grep python | grep -c train.py

随后我们在bash文件中使用该命令获取返回值:
num_process=$(ps -ef | grep python | grep -c train.py) #
echo "num_process is $num_process"

sleep second # 此处填写秒数# 例子
sleep 5 # 等待5s
echo $(date +%Y-%m-%d\ %H:%M:%S)

参考文章: