關於"行18: 未預期的符號 `fi' 附近有語法錯誤"


最近有個定時執行的腳本,校驗服務是否在啟動狀態

寫好腳本總是報錯

#!/bin/sh
# 在這修改程序名和程序所在目錄,其他不用改
name="carte"
path="/app/bigdata/data-integration/"
pid=`ps -A |grep $name| awk '{print $1}'`
now=`date  "+%Y-%m-%d %H:%M:%S"`
# 檢測是否在運行
if [ ! $pid ]
then
	echo "$now $name is not running, start it now..."
	# 啟動程序命令
	cd $path
	nohup /app/bigdata/data-integration/carte.sh  /app/bigdata/data-integration/pwd/carte-config-master-8080.xml >> /data/bigdata/kettle/log/spoon.log 2>&1 &
	new_pid=`ps -A |grep $name| awk '{print $1}'`
	# 檢測是否啟動成功
else
	echo "$now $name is running, pid is $pid"
fi

結果sh執行的時候總是報錯

關於"行18: 未預期的符號 `fi' 附近有語法錯誤"

然后問人得知,腳本規范嚴重

於是嘗試下列方法,終是成功

sed -i 's/\r$//'     xxxx.sh


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM