Linux 下 2 1 和 1 2 的區別

2021-10-03 21:19:02 字數 756 閱讀 5136

近日在網上看題時遇到這麼一條題目:

下面兩條命令分別會有怎樣的輸出

echo hello 1>&2 | grep aaa

echo hello 2>&1 | grep aaa

a、兩個均輸出hello

b、第乙個無輸出,第二個輸出 hello

c、第乙個輸出hello,第二個無輸出

d、兩個均輸出hello

正確答案是c

這題的考點包括檔案描述符重定向管道符以及grep

echo hello 1>&2最終輸出資訊型別為 stderr , 管道符不會對其進行傳遞,grep aaa沒有找到對應字串, 無輸出

最終輸出為 左邊命令的 stderr , 即 hello

echo hello 2>&1最終輸出資訊則為 stdout , 管道符對其傳遞,grep aaa沒有找到對應字串, 無輸出

最終輸出沒有任何資訊

關於檔案操作符的高階操作可以閱讀

shell exec命令操作檔案描述符

Linux下「 」和「 」的區別

在linux中,代表根目錄,是代表目錄。linux儲存是以掛載的方式,相當於是樹狀的,源頭就是 也就是根目錄。而每個使用者都有 家 目錄,也就是使用者的個人目錄,比如root使用者的 家 目錄就是 root,普通使用者zyh的家目錄就是 home zyh 可以看到 建立使用者就會在根目錄下的home...

Linux下「 」和「 」的區別

在linux中,代表根目錄,是代表目錄。linux儲存是以掛載的方式,相當於是樹狀的,源頭就是 也就是根目錄。而每個使用者都有 家 目錄,也就是使用者的個人目錄,比如root使用者的 家 目錄就是 root,普通使用者zyh的家目錄就是 home zyh 可以看到 建立使用者就會在根目錄下的home...

Linux下「 」和「 」的區別詳解

是根目錄,是家目錄。linux儲存是以掛載的方式,相當於是樹狀的,源頭就是 程式設計客棧也就是根目錄。而每個使用者都有 家 目錄,也就是使用者的個人目錄,比如root使用者的 家 目錄就是 root,普通使用者a的家目錄就是 home a.可以程式設計客棧看到 使用者建立完後,我們就可以在 home...