容我发发牢骚,请包涵
这学校老师应该都讲过吧...
写程式时,要记得回传个有意义的 exit code
不然, 别的程式往往都要额外浪费时间处理
当然, 特别是指令行程式, GUI 就不那么在.
但是无论是用 C 来 code, 还是任何 script
都有我们应该共同遵守的交通规则.
事情是这样的
刚刚用到 pacmd(1)
这是 pulseaudio-utils 套件里的程式
$ pacmd set-default-sink 1
$ echo $?
0
$ pacmd set-default-sink 你老师
Sink 你老师 does not exist.
$ echo $?
0
对的给 0, 不对的也给 0
那我不是还要去 parse "你老师" 那一行
来判断这个指令的执行结果
(而且"你老师"也应该送到 stderr,
不是 stdout, 虽然此处并不关键...)
要是每个 CLI 程式都采这样行为
我看我这个小 script 起码变成两倍大
而且要多花一倍的时间在这上面
没记错的话, 上一次碰到的是 xrandr(1)
搞得整个地球上的人都在想办法绕道...
大家都遵守交通规则, 最后受益的也是大家
而且整体效率一定会显著提升
有一次, 搭德国人车子在县道
远看, 另一台高速从旁边冲出来
这个德国朋友却继续谈笑, 不减速
我紧张地用手指著那台车....
他只说
没关系, 我们在干道
然后继续向前冲, 眼看就...
咦? 他真的停下来了也!
这样不是大家都省事吗?
多包涵吧