Linuxshell:shell命令的返回值和输出1. 返回值⽤$?来测试
如命令ls
[baoliw@AONTFN07 vlan_transparent]$ ls
config  not_care_pbit.sh
[baoliw@AONTFN07 vlan_transparent]$ echo $?
[baoliw@AONTFN07 vlan_transparent]$ ls -
ls: cannot access -: No such file or directory
[baoliw@AONTFN07 vlan_transparent]$ echo $?
2
2. 命令执⾏结果或输出
如果是命令⼀般⽤c语⾔printf输出,如果是shell脚本函数⼀般⽤echo输出。
可将执⾏结果赋值给变量:
[baoliw@AONTFN07 vlan_transparent]$ ls_var=`ls`
[baoliw@AONTFN07 vlan_transparent]$ echo $ls_var
config not_care_pbit.sh
注:
ls的输出其实是printf输出。
shell脚本返回执行结果命令或函数其实是将输出结果赋值给变量,⽽不是返回值。