一般编程语言执行多行代码,比如java
public void methodA(){
int i = a.read();
System.out.println(i);
}
如果 1 步 a.read()执行不成功,抛出了异常,那么程序不会执行第2步
如果是shell两条命令
#!/bin/sh
rm a.txt
mv c.txt b.txt
假如第 1 步执行失败,那么第 2 步也会执行,两条命令没有必然的关系
如果要让 1成功之后才执行 2要怎么做?或者 1失败才执行2
1、用 && 让1 成功之后才执行 2
rm a.txt && mv c.txt b.txt
2、用 || 让 1失败之后 2才执行 用
rm a.txt || mv c.txt b.txt
或者用条件判断,shell指令执行完之后,指令会有返回值,用 $? 获取上一条指令的返回值,然后根据返回值判断是否执行下一条指令
#!/bin/sh
rm a.txt
if [[ $? != 0 ]]; then
echo 'fail'
else
mv c.txt b.txt
fi