LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1003|回复: 10

巧用 PS1 来判断命令的返回状态。

[复制链接]
发表于 2006-6-20 18:28:46 | 显示全部楼层 |阅读模式
设置成这样,就好了,大家试试?

export PS1="\$? - [\u@\h \w]\\$ "


一般来说:成功就返回0,不成功就返回非0数值。判断起来容易多了。
发表于 2006-6-20 19:39:51 | 显示全部楼层
不错!不过还是喜欢echo $? 直接看──提示行简洁些比较舒服
$? 还是很好用的,shell C asm 写的程序返回值都可以用它来看
回复 支持 反对

使用道具 举报

发表于 2006-6-20 19:54:36 | 显示全部楼层
又长知识了.
回复 支持 反对

使用道具 举报

发表于 2006-6-20 19:58:51 | 显示全部楼层
哈哈,又学一招!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-6-21 01:56:05 | 显示全部楼层
Post by Lolita
不错!不过还是喜欢echo $? 直接看──提示行简洁些比较舒服
$? 还是很好用的,shell C asm 写的程序返回值都可以用它来看

我懒,不想没事打 echo $?。

主要是打起来不顺手,,嘿嘿。(我是懒到家了的人。)
回复 支持 反对

使用道具 举报

发表于 2006-6-21 02:28:24 | 显示全部楼层
In login shell, "echo $?" returns zero.  However, in non-login shell, it returns 100, what does it mean?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-6-21 02:39:22 | 显示全部楼层
Give me a context? I am not sure what you are talking about.
  1. [william@fantasy ~]$ echo $?
  2. 0
  3. [william@fantasy ~]$ bash
  4. [william@fantasy ~]$ echo $?
  5. 0
  6. [william@fantasy ~]$   
复制代码
回复 支持 反对

使用道具 举报

发表于 2006-6-21 02:44:40 | 显示全部楼层
In non-login shell, e.g. su to become root, it returns 100.

In login shell, e.g. login as user or su - to become root, it returns zero.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-6-21 02:58:54 | 显示全部楼层
  1. $ su
  2. Password:
  3. Last login: Tue Jun 20 11:36:55 BST 2006 on pts/3
  4. [root@fantasy /home/william]# echo $?
  5. 0
复制代码
回复 支持 反对

使用道具 举报

发表于 2006-6-21 07:45:15 | 显示全部楼层
It is quite strange.  It only returns 100 when I am running a session with a LiveCD.

All other cases return zero.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表