如何查看上次命令执行是否成功?

sh/bash/dash/ksh/zsh等Shell脚本
回复
qq405165798
帖子: 79
注册时间: 2008-02-24 14:39
送出感谢: 0
接收感谢: 0

如何查看上次命令执行是否成功?

#1

帖子 qq405165798 » 2010-11-07 18:56

如何查看上次命令执行是否成功?
如果我
cd到一个存在的路径
cd到一个不存在的路径

我如何查看上次cd成功了没有?
view source
print?
01 ~/.bashrc文件中,追加下记代码,可执行完cd命令后,自动执行ls命令
02 cl()
03 {
04 if [ -d "$1" ]; then
05 cd "$1"
06 ls -l
07 else
08 ls -l
09 fi
10 }
11 alias cd=cl
12 alias ls='ls --color=auto'
这里需要加入一个判断,不如路径错了.cd都不会给提示.
头像
HuntXu
论坛版主
帖子: 5778
注册时间: 2007-09-29 3:09
送出感谢: 0
接收感谢: 6 次

Re: 如何查看上次命令执行是否成功?

#2

帖子 HuntXu » 2010-11-07 19:02

这里已经用[ -d "$1" ]判断了目录是否存在啊...
HUNT Unfortunately No Talent...
qq405165798
帖子: 79
注册时间: 2008-02-24 14:39
送出感谢: 0
接收感谢: 0

Re: 如何查看上次命令执行是否成功?

#3

帖子 qq405165798 » 2010-11-08 11:48

HuntXu 写了:这里已经用[ -d "$1" ]判断了目录是否存在啊...
我知道了

cl()
{


if [ -d "$1" ]; then
cd "$1"
ls -l
else if [ -z "$1" ]; then
ls -l
fi

echo "error!"
fi
}


alias cd=cl
alias ls='ls --color=auto'
tusooa
帖子: 6546
注册时间: 2008-10-31 22:12
系统: 践兔
送出感谢: 6 次
接收感谢: 10 次
联系:

Re: 如何查看上次命令执行是否成功?

#4

帖子 tusooa » 2010-11-08 18:01

代码: 全选

command xxx
ret=$?
case "$ret" in
    0)echo ok;;
    *)echo err;;
esac

代码: 全选

] ls -ld //
qq405165798
帖子: 79
注册时间: 2008-02-24 14:39
送出感谢: 0
接收感谢: 0

Re: 如何查看上次命令执行是否成功?

#5

帖子 qq405165798 » 2010-11-09 0:07

tusooa 写了:

代码: 全选

command xxx
ret=$?
case "$ret" in
    0)echo ok;;
    *)echo err;;
esac
:-),多谢.
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

Re: 如何查看上次命令执行是否成功?

#6

帖子 eexpress » 2010-11-09 11:01

cd ttt; echo $?

多看man bash。
● 鸣学
qq405165798
帖子: 79
注册时间: 2008-02-24 14:39
送出感谢: 0
接收感谢: 0

Re: 如何查看上次命令执行是否成功?

#7

帖子 qq405165798 » 2010-11-09 12:32

eexpress 写了:cd ttt; echo $?

多看man bash。
多谢.
5300+行,有点吓人.
回复

回到 “Shell脚本”