Shell編程:return 返回腳本調用的狀態碼

  • 需求: 如何調用一個腳本或函數,並判斷任務是否執行成功
    在這裏插入圖片描述
wang@wang-T58-V:~/sh/test-invoke-scripts$ cat slave.sh 
#!/bin/bash
#name: slave.sh
test_fun(){
	ls /var/lib/docker
	return 200 #返回方法調用的狀態碼
}

test_fun 
echo "test_fun -->方法調用的狀態碼 :$?" #獲取方法執行的狀態碼

aaaa 
res=$?
echo "slave.sh 腳本的狀態碼: $res"
return $res #放回腳本執行的狀態碼



wang@wang-T58-V:~/sh/test-invoke-scripts$ cat master.sh 
#!/bin/bash
#name: master.sh
sh slave.sh #腳本中最後一行return 執行狀態碼
echo $? #獲取上一個命令的狀態碼= 上一個腳本的return 值


wang@wang-T58-V:~/sh/test-invoke-scripts$ sh -x master.sh 
+ sh slave.sh
ls: cannot open directory '/var/lib/docker': Permission denied
test_fun -->方法調用的狀態碼 :200
slave.sh: 12: slave.sh: aaaa: not found
slave.sh 腳本的狀態碼: 127
+ echo 127
127
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章