“Shell执行linux命令”的版本间的差异

来自linux中国网wiki
跳到导航 跳到搜索
docker>Evan
 
(导入1个版本)
 

2019年10月14日 (一) 13:52的最新版本

  • 第一种 注意 = 前后最好没有空格哦 不然如下面的trouble
data=`command`


  • 第二种
data=$(command)

trouble

cat mycheckbak 
#!/bin/bash
code =`/data/mon/monitor_http.py http://read.zhaituan.com/xtwlztdj_read_interface`
if [ $code -eq 200 ]
then
:
else
DATE=$(date +%Y%m%d%H%M)
echo $DATE >>/data/logs/mycheck.log
echo "read no 200" >>/data/logs/mycheck.log
fi



# bash -x mycheckbak 
++ /data/mon/monitor_http.py http://read.zhaituan.com/xtwlztdj_read_interface
+ code =200
#= 前后最好没有空格哦 原因 
mycheckbak: line 2: code: command not found
+ '[' -eq 200 ']'
mycheckbak: line 3: [: -eq: unary operator expected
++ date +%Y%m%d%H%M
+ DATE=201810131158
+ echo 201810131158
+ echo 'read no 200'

see also

shell执行linux命令