bash程式設計讀書筆記(基礎篇II)

2021-06-04 06:27:26 字數 2565 閱讀 2569

24.  $ 也是變數。

echo $
解釋:$ 也是變數代表當前shell執行的pid(process id)。通過 echo $$ 既可以看到或者用 ps -e | grep bash。

25. ? 也是變數

username=john

echo $?

012name=vasdf

echo $?

13026. locale 檢視 linux語系。

locale -a

解釋:locale可以檢視計算機可以使用的語系。

27. /etc/issue 和 /etc/issue.net

解釋:如同ps1一樣,這些文件包含了登入時,計算機出現的歡迎訊息。/etc/issue.net 是在telnet遠端登入到計算機的時候,出現的歡迎訊息。最後,他們都有特殊的字元,如下列表。

issue 內的各程式碼意義

\d 本地端時間的日期;

\l 顯示第幾個終端機介面;

\m 顯示硬體的等級 (i386/i486/i586/i686...);

\n 顯示主機的網路名稱;

\o 顯示 domain name;

\r 作業系統的版本 (相當於 uname -r)

\t 顯示本地端時間的時間;

\s 作業系統的名稱;

\v 作業系統的版本。

28. /etc/motd

解釋:/etc/motd文件裡面包含了login以後,螢幕上顯示的訊息。而且不能使用像 /etc/issue 和 /etc/issue.net 裡如上所使用的變數。

29. login 和 none-login shell

解釋:login shell 是需要完整登入的流程,例如從tty1~tty6 登入。none-login shell 是不需要登入的bash介面。例如在圖形化介面下開啟乙個shell視窗。不論那種,如果想把自己定義的變數變成開機以後自動裝載的環境變數。就必須把變數的設定寫入文件內。如 /etc/profile, ~/.bash_profile 等。

30. /etc/profile ~/.bash_profile (這兩個都只有 login shell 才會讀取)

解釋:不論 ~/.bash_profile、~/.bash_login 或者 ~/.profile 都是屬於使用者個人設定。而 /etc/profile 是每個伺服器使用者登入取得bash時一定會讀取的設定檔。不經如此。

/etc/profile 還會呼叫外部的設定資料:  

/etc/inputrc 此文件內容為 bash的熱鍵,[tab] 要不要有聲音等等。關於shell輸入的引數。

/etc/profile.d/*.sh 凡是profile.d 目錄所有以 sh 結尾的指令碼都會被呼叫執行。

/etc/sysconfig/i18n 這個是 /etc/profile.d/lang.sh 呼叫進來的。用 locale 檢視的 bash 所使用的語系。

讀取的流程圖:

實線是主線流程,虛線是呼叫設定。同時,從這副圖可以看到,/etc/bashrc 同樣也會呼叫 /etc/profile.d 目錄下的 sh 指令碼。

31. source 和 「.」

cat ~/.bash_profile | grep bashrc·if [ -f ~/.bashrc ]; then

. ~/.bashrc

這裡,」.「 和 source 是一樣的。都是把文件裡的設定讀到當前的 shell 環境中去。

32. ~/.bashrc (non-login shell 會讀取)

解釋:上一副只是 login shell 讀取文件的流程圖。 在桌面環境下,開啟乙個shell,其只會讀取 home目錄下的 .bashrc 設定文件。然而,~/.bashrc 設定文件一般會招呼讀取 /etc/bashrc 中的設定。 這樣來看, /etc/bashrc 和 /etc/profile 是對等的。只是乙個服務於 login shell,而另乙個服務於 non-login shell。如果你想做一些個人的設定,把設定的內容放在 ~/.bash_prfile 裡. ~/.bashrc 行的下面就可以了。

下次有機會對這些llinux bash啟動指令碼做詳細的分析!

33. ~/.bash_logout

解釋:這個文件裡記錄了使用者登出後,系統為使用者還需完成的任務。比如,清空暫時檔案,備份檔案等。

34. stty 和 set

解釋: stty 是列印或修改熱鍵的命令。 例如,

intr = ^c。

eof : 結束輸入。

erase : 向後刪除字元。

intr : 送出乙個中斷型號給正在跑的程式,通常為當前程式。

kill : 刪除在目前指令列上的所有文字。

quit : 送出乙個quit命令給正在跑的程式,通常為當前程式。

start : 在某個程式停止後,重新啟動它的output。

stop : 停止目前螢幕的輸出。

susp : 送出乙個 terminal stop 的訊號給正在跑的程式。

資料:

Bash 讀書筆記(三)

36.資料流重導向 標準輸入 stdin 0,使用 或者 標準輸出 stdout 1,使用 或者 標準錯誤輸出 stderr 2,使用 2 或者 2 1 把正確的資料以覆蓋的方式輸出到指定的檔案或裝置上 1 把正確的資料以累加的方式輸出到指定的檔案或裝置上 2 把錯誤的資料.2 把錯誤的資料以累加的...

《知性力II》讀書筆記

1 21世紀需要的新技能 英語,計算機,邏輯思考,eq 網路團隊合作能力和領導力,理財技能 2 不要過於放縱自己和孩子 3 優秀的學生標準 能夠學習,體育也很好,具備領導能力,有明確的理想和追求,人格優秀,參與社群活動。4 開著電視吃飯會影響家庭成員的交流,意味著對家庭的放棄。5 不要按部就班的學習...

《Effective C 》讀書筆記 條目篇

文 seraph 條目篇主要是記錄得出的結果,用作以後翻查遵循。以下是本書的翻譯中英術語表 英文術語 中文譯詞 abstract 抽象的abstraction 抽象性 抽象件 本書的目的是強調那些常常被漠視的c 程式設計方向與觀點。定義式 definition 的任務是提供編譯器一些宣告式所遺漏的細...