退出专题提供退出的最新资讯内容,帮你更好的了解退出。
每次我关闭 Bash会话时,我都想运行一个脚本. 我使用XFCE和终端0.4.5(Xfce终端仿真器),我想在终端包括最后一个(当我关闭终端)时关闭一个选项卡时运行一个脚本. 像.bashrc这样的东西,但是在每个会话结束时运行. .bash_logout不起作用 你使用陷阱(见man bash): trap /u1/myuser/on_exit_script.sh EXIT 该命令可以添加到.p
我有一个Korn Shell(ksh)脚本,它登录到SQL * Plus并执行脚本.在shell脚本中,我想捕获已执行的SQL语句的状态代码.目前SQL存在错误,我无法通过检查$?来捕获它. 我如何从sql语句中捕获成功或错误代码并将其传递给shell脚本. 片段的ksh脚本: sqlplus $JDBC_FBUID_U/$JDBC_FBPWD_U@$JDBC_FBDB @${FBC_HOME}/
我不知道为什么下面指示的行返回1而((count))的后续执行返回0. [me@server ~]$count=0 [me@server ~]$echo $? 0 [me@server ~]$count++ -bash: count++: command not found [me@server ~]$(count++) -bash: count++: command not found [me@
我有一个bash脚本,它对我的​​源代码运行三次检查,然后如果所有命令都成功则退出0,如果其中任何一个失败则退出1: #!/bin/bash test1 ./src/ --test-1=option exit_1=$? test2 ./src/ test-2-options exit_2=$? test3 ./src/ -t 3 -o options exit_3=$? # Exit wi
我们最近有一次关于bash的经历,即使我们找到了一个解决方案,它仍然在扭曲我的想法. bash如何评估&&表达式的返回码? 执行此脚本,因为myrandomcommand不存在而失败: #!/bin/bash set -e echo "foo" myrandomcommand echo "bar" 结果是预期的一个: ~ > bash foo.sh foo foo.sh: line 6: m
我有一个(只读)可执行文件“myexec”,我总是执行后跟输入“input1”(一个字符串),然后我继续我的业务“”和“退出”我感觉如下: $myexec > input1 > do something else for as long as I like > exit 我想做的是使用输入“input1”自动执行“myexec”,然后能够“在我喜欢的时候做其他事情”.从我所看到的,我的选择是: $
我正在尝试编写一个tcsh脚本. 如果任何命令失败,我需要脚本退出. 在shell中我使用set -e但我不知道它在tcsh中的等价物 #!/usr/bin/env tcsh set NAME=aaaa set VERSION=6.1 #set -e equivalent #do somthing 谢谢 在(t)csh中,set用于定义变量; set foo = bar会将值bar赋给变量fo
我给了M-x shell来获取 Linux shell.如何从那里返回当前文档 您可以将缓冲区切换回之前的缓冲区:C-x b并输入 或者,如果您已完成shell,则可以键入exit以停止shell并通过以下方式终止缓冲区:C-x k
在bash上,您可以在脚本中使用set -e以便在出错时退出: set -e cd unexisting-folder echo "this line will not be printed" 但是在鱼壳上设置-e用于删除变量: set FOO bar set -e FOO echo {$FOO} # prints newline 什么相当于Bash set -e on Fish? 在鱼类中没有相
我注意到bash(())表示法的返回状态明显不一致. 考虑以下 $> A=0 $> ((A=A+1)) $> echo $? $A 0 1 但是使用其他众所周知的速记增量表示法产生: $> A=0 $> ((A++)) $> echo $? $A 1 1 如果脚本中有内置set -e,则第二种表示法将导致脚本退出,因为((A))的退出状态返回非零.这个问题在this related questio
我需要使用陷阱捕获 Bash脚本中的错误条件.出于这个原因,我在我的脚本中都设置了-e AND set -u.但是我注意到脚本中定义的陷阱没有得到错误状态.例如: set -e set -u on_exit() { exit_status=$? echo exit_status=$exit_status exit $exit_status } trap on_exit EXIT
我现在正在使用 Bash进行编程,并且我使用set -e,因为在程序失败时继续执行脚本几乎不是想要的行为. 当它是我使用||如果我不需要退出代码. 如果我需要退出代码,我将执行包装如下: set +e call_I_need_the_exit_code with few arguments RV="$?" set -e # use "$RV" somewhat 但是,它很冗长,我很少切换设置e和设
我有一个想要监视另一个程序的Bourne shell(/ bin / sh)脚本(为了便携性).它应该启动另一个程序,然后等待它退出.当第二个程序退出时,它会做一些最后的工作并退出.问题在于脚本需要响应信号(例如USR2)并在信号出现时做一些工作. 我的天真实施是: #! /bin/sh echo $$ trap 'echo Respond to USR2' USR2 /bin/sleep 120
这就是我想要做的: #!/bin/bash set -e # I can't remove this line! if [ docker inspect foo ]; then echo container is present else echo container is absent fi 可能吗? docker inspect foo在容器不存在时返回退出代码1,当它出现时返回0.
我正在尝试编写一个“live git log”bash脚本. 这是迄今为止的代码: #!/bin/sh while true; do clear git log --graph -10 --all --color --date=short --pretty=format:"%Cred%x09%h %Creset%ad%Cblue%d %Creset %s %C(bold)(%an)
我需要在脚本中依赖几个单独的执行,并且不希望将它们全部捆绑在一个丑陋的’if’语句中.我想把退出代码’$?’每次执行并添加它;最后,如果这个值超过一个阈值 – 我想执行一个命令. 伪代码: ALLOWEDERROR=5 run_something RESULT=$? ..other things.. run_something_else RESULT=$RESULT + $? if [ $R
在Mac OS上我可以使用终端,写“cd”,然后拖动&将文件夹从Finder拖放到终端.然后我获得类似“cd / Users / …”的东西,它允许我快速更改到相应的目录. 如果我用M-x shell打开一个emacs shell并拖放&删除一个文件夹,emacs在dired模式下更改并显示我删除的文件夹的内容.如何“退出”或“退出”直接模式并获取一个目录更改为我删除的文件夹的shell?这会给我
如果我有以下bash命令: for i in ./ x ; do ls $i ; done && echo OK 执行“ls ./”,然后执行“ls x”,失败(缺少x)并且不打印OK. 如果 for i in x ./ ; do ls $i ; done && echo OK 然后即使“ls x”失败,因为for循环中的最后一个语句成功,然后打印OK.在makefile中使用shell for循
我想用一个更干净,更难看的单线来完成测试: #!/bin/bash test -d "$1" || (echo "Argument 1: '$1' is not a directory" 1>&2 ; exit 1) || exit 1 # ... script continues if $1 is directory... 基本上我是在一些不复制出口的东西之后,最好不会产生一个子壳(因此看起来
当函数退出时,bash中是否有可能调用某些命令.我的意思是: function foo { # something like this maybe? trap "echo \"exit function foo\"" EXIT # do something } foo 我希望打印退出函数foo. 是的,你可以捕获RETURN: $function foo() { >