当前位置:首页 » 编程软件 » 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;显示版本信息。

热点内容
单片机android 发布:2024-09-20 09:07:24 浏览:765
如何提高三星a7安卓版本 发布:2024-09-20 08:42:35 浏览:664
如何更换服务器网站 发布:2024-09-20 08:42:34 浏览:311
子弹算法 发布:2024-09-20 08:41:55 浏览:289
手机版网易我的世界服务器推荐 发布:2024-09-20 08:41:52 浏览:817
安卓x7怎么边打游戏边看视频 发布:2024-09-20 08:41:52 浏览:162
sql数据库安全 发布:2024-09-20 08:31:32 浏览:94
苹果连接id服务器出错是怎么回事 发布:2024-09-20 08:01:07 浏览:507
编程键是什么 发布:2024-09-20 07:52:47 浏览:658
学考密码重置要求的证件是什么 发布:2024-09-20 07:19:46 浏览:481