當前位置:首頁 » 編程軟體 » shell腳本退出

shell腳本退出

發布時間: 2022-01-08 12:51:48

linux shell如何取消出錯退出

開頭加上:
trap "" 6

其中,
6) SIGABRT 程序自己發現錯誤並調用abort時產生。

⑵ 一個linux shell腳本 為什麼 不能自動退出呢

因為循環體裡面num變數沒有遞增,一直是0啊。
在if之前(或者done之前)加上 let num++

⑶ 怎麼在shell腳本中加入自己的退出狀態

#!/bin/bash
if [ "$1" = "y" ];then
exit 0
elif [ "$1" = "yes" ];then
exit 0
elif [ "$1" = "Yes" ];then
exit 0
elif [ "$1" = "YES" ];then
exit 0
else
exit 1
fi

#!/bin/bash
case "$1" in
y) exit 0
;;
yes) exit 0
;;
Yes) exit 0
;;
YES) exit 0
;;
*) exit 1
;;
esac

⑷ linux shell 腳本運行完畢後不能自動停止

最簡單方法:
其實,你按一下回車就可以知道是否"結束"了吧?

更好的辦法:
你在done後面加多兩行:

------------代碼開始------------
wait
echo "All is ok"
exit 0
------------代碼結束------------

參考資料:
wait 命令
http://book.51cto.com/art/201205/338877.htm

⑸ linux中編寫完一個腳本怎樣退出

使用vi/vim編輯的:
直接先ESC退出編輯狀態,再按:冒號,就是進入命令狀態;wq是保存退出。

⑹ shell:為什麼循環內調用腳本,遇到exit會退出循環

[root@localhost~]#cata.sh
#!/bin/sh
whiletrue
do
echo"loop"
../b.sh
echo"loop100"
done
echo"endloop"
[root@localhost~]#catb.sh
#!/bin/sh-x
echo"b.shisprocess"
exit0
echo"B.SHisprocess"
[root@localhost~]#sha.sh
loop
b.shisprocess

我的結果是正常的。。。

⑺ bash shell 自動退出man命令

使用expect工具很簡單. 如果你還想查看man which的內容的話:

#!/usr/bin/expect
#只能顯示man which第一頁
set manw [ exec man which ] #定義變數manw, 內容為man which的結果
spawn man which
send_user $manw # 顯示$manw
expect ":"
send "q\r"
expect eof
~
或者:
#!/usr/bin/expect
#顯示man which 全部內容
set manw [ exec man which ]
send_user $manw
expect "*"
send "\003"
在centos上測試通過.
如果你是centos或者RHEL 可以使用YUM或者光碟, 安裝tcl 和expect兩個rpm包

⑻ 哪個命令用於退出linux shell

輸入exit就可以。

⑼ shell腳本expect自動登錄後,怎麼又自動退出了

1.安裝expect
需要先安裝tcl:apt-get install tcl
apt-get install expect
2.expect使用
2.1一個簡單的輸入密碼操作
#!/usr/bin/expect
set timeout 100
set password "123456"
spawn sudo rm -rf zzlogic
expect "root123456"
send "$password\n"
interact
說明:
第一行#!/usr/bin/expect表示使用expect的shell交互模式
set是對變數password賦值
set timeout 100:設置超時時間為100秒,如果要執行的shell命令很長可以設置超時時間長一些。expect超過超時時間沒有監測到要找的字元串,則不執行,默認timeout為10秒
spawn在expect下執行shell腳本
expect對通過spawn執行的shell腳本的返回進行判斷,是否包含「」中的欄位
send:如果expect監測到了包含的字元串,將輸入send中的內容,\n相當於回車
interact:退出expect返回終端,可以繼續輸入,否則將一直在expect不能退出到終端
2.2expect的命令行參數
[lindex $argv n]獲得index為n的參數(index從0開始計算)
$argc為命令行參數的個數
[lrange $argv 0 0]表示第一個參數
[lrange $argv 0 3]表示第1到第3個參數
例如scp_service.sh文件,可以./scp_service.sh -rm來執行,這時是賦值了一個參數
set option [lindex $argv 0](獲得第一個參數存到變數option中,參數是的index是從0開始計算的)
2.3if...elif...else...
expect支持if語句,
if {條件1} {
條件1執行語句
} elif {條件2} {
條件2執行語句
} else {
其他情況執行語句
}
說明:
1.if的條件用{}來包含條件
2.if和後面的{}必須有空格隔開
3.兩個花括弧之間必須有空格隔開,比如if {} {},否則會報錯 expect:extra characters after close-brace
3.使用{來銜接下一行,所以if的條件後需要加左花括弧{
4.else不能單獨放一行,所以else要跟在}後面
2.4 expect {},多行期望,匹配到哪條執行哪條
背景:有時執行shell後預期結果是不固定的,有可能是詢問是yes/no,有可能是去輸入密碼,所以可以用expect{}
花括弧內放多行語句,從上至下匹配,匹配到哪個expect執行哪句。
3.shell中調用expect來實現登錄
我是通過在shell腳本中執行expect腳本的方式來實現的。當然可以將shell中定義的一些變數傳遞給expect腳本作為參數輸入。

⑽ linux 用戶退出怎麼命令

用戶退出登錄的方法有以下三種:

1、在shell提示符下輸入 exit 按回車確認

2、在shell提示符下輸入 logout 按回車確認

3、按快捷鍵crtl+d (此方法同logout效果)

(10)shell腳本退出擴展閱讀:

Linux常用命令之——退出、切換用戶exit、su

exit命令同於退出shell,並返回給定值,在shell腳本中可以終止當前腳本執行,執行exit可使shell以指定的狀態值退出。

若不設置狀態值參數,則shell以預設值退出,狀態值0代表執行成功,其他值代表執行失敗。

su命令用於切換當前用戶身份到其他用戶身份,變更時須輸入所要變更的用戶帳號與密碼。

選項:

-c<指令>或--command=<指令>:執行完指定的指令後,即恢復原來的身份;

-f或——fast:適用於csh與tsch,使shell不用去讀取啟動文件;

-l或——login:改變身份時,也同時變更工作目錄,以及HOME,SHELL,USER,logname。此外,也會變更PATH變數;

-m,-p或--preserve-environment:變更身份時,不要變更環境變數;

-s<shell>或--shell=<shell>:指定要執行的shell;

--help:顯示幫助;

--version;顯示版本信息。

熱點內容
不加域電腦怎麼訪問域伺服器文件 發布:2024-12-25 14:57:02 瀏覽:128
java線程機制 發布:2024-12-25 14:56:24 瀏覽:736
搭建本地表格伺服器 發布:2024-12-25 14:51:06 瀏覽:851
網路應用中ftp指什麼 發布:2024-12-25 14:45:36 瀏覽:453
廣工如何修改密碼 發布:2024-12-25 14:29:18 瀏覽:487
電腦配置不高怎麼玩守望先鋒 發布:2024-12-25 14:15:42 瀏覽:262
合法伺服器地址 發布:2024-12-25 14:15:32 瀏覽:425
linuxip腳本 發布:2024-12-25 14:04:00 瀏覽:417
c語言最短路徑 發布:2024-12-25 14:03:52 瀏覽:623
c語言考點 發布:2024-12-25 14:03:13 瀏覽:614