0
的返回值,雖然你可以內嵌一個程序的輸出參數語法內聯調用
$ echo $(ls)
cpp python bash
或作爲臨時文件
$ echo <(ls)
/proc/self/fd/63
我不知道你如何內嵌有返回值類似的語法,以便它回顯ls
的返回值,它的工作原理是這樣的:
$ ls
$ echo $?
0
的返回值,雖然你可以內嵌一個程序的輸出參數語法內聯調用
$ echo $(ls)
cpp python bash
或作爲臨時文件
$ echo <(ls)
/proc/self/fd/63
我不知道你如何內嵌有返回值類似的語法,以便它回顯ls
的返回值,它的工作原理是這樣的:
$ ls
$ echo $?
0
ls_retval=$(ls >/dev/null 2>&1; echo "$?")
如果你想封裝是:
# define a function...
retval_of() { "[email protected]" >/dev/null 2>&1; echo "$?"; }
# and use it
ls_retval=$(retval_of ls)
至於「有類似的語法」,雖然 - 殼有它的語法;不存在「RETVAL取代」(如bash的4.4,或POSIX SH的如在POSIX問題7標準化的)。
內嵌意味着要抑制或重定向的返回值? – Azeem
'LS>的/ dev/null的; echo $?'?我不知道你正試圖在這裏實現什麼? –
@Azeem是,該方案''ls''應執行和返回值,這是在大多數情況下0,應該被重定向到回聲作爲一個正常的參數 – cmdLP