我在Mac上运行终端版本2.6.1。 我正在编写一个bash脚本,如果满足某个条件,我想退出脚本。
我用这个命令做到了:
exit 1
完成后,脚本退出,我在终端上看到了这个:
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
[Process completed]
之后,我的终端被冻结了,我再也无法做任何事了。
有没有办法否定每次脚本退出时都必须打开一个新终端?
我正在从我的终端运行脚本,如下所示:
. script.sh
答案 0 :(得分:3)
不要使用
. script.sh
运行脚本。这将在您在终端会话中使用的相同交互式shell中运行脚本,并且当脚本使用exit
时,它也会退出交互式shell。
使用此行启动脚本,告诉操作系统使用bash
执行脚本:
#!/bin/bash
使用以下命令授予执行权限:
chmod 755 script.sh
然后用
运行它./script.sh
这会在自己的进程中运行脚本。