共計 2492 個字符,預計需要花費 7 分鐘才能閱讀完成。
本篇內容介紹了“linux dash 的含義是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
linux dash 是一個輕量級的 Linux 發行版系統資源監控工具,該工具中有許多額外的功能,這些功能在系統的默認系統監視器中是找不到的;你可以在系統上安裝、配置和使用 Linux Dash 工具,并通過 Web 瀏覽器界面監控參數。
linux dash 是什么?
Linux Dash 是一個簡單、強大、輕量級的 Linux 發行版系統資源監控工具。您可以在系統上安裝、配置和使用 Linux Dash 工具,并通過 Web 瀏覽器界面監控參數。最好使用 Linux Dash,因為它非常輕量級,并且該工具中有許多額外的功能,這些功能在系統的默認系統監視器中是找不到的。此外,一些輕量級的 Linux 發行版沒有預裝 GUI 系統監控工具,Linux Dash 將幫助他們很多。安裝和使用 Linux Dash 是一個簡單的過程,不需要任何編程技能。
拓展介紹:
Ubuntu 的 bash 和 dash 的區別
什么是 bash?
Bash(GNU Bourne-Again Shell)是許多 Linux 平臺的內定 Shell,事實上,還有許多傳統 UNIX 上用的 Shell,像 tcsh、csh、ash、bsh、ksh 等等。
GNU/Linux 操作系統中的 /bin/sh 本是 bash (Bourne-Again Shell) 的符號鏈接,但鑒于 bash 過于復雜,有人把 bash 從 NetBSD 移植到 Linux 并更名為 dash (Debian Almquist Shell),并建議將 /bin/sh 指向它,以獲得更快的腳本執行速度。Dash Shell 比 Bash Shell 小的多,符合 POSIX 標準。
Debian 和 Ubuntu 中,/bin/sh 默認已經指向 dash,這是一個不同于 bash 的 shell,它主要是為了執行腳本而出現,而不是交互,它速度更快,但功能相比 bash 要少很多,語法嚴格遵守 POSIX 標準。
就是這個倒霉的 dash 解釋器使得我按照 bash 語法寫的 shell 腳本不能運行。
要知道自己的 /bin/sh 指向何種解釋器,可以用 ls /bin/sh -al 命令查看:
$ ls /bin/sh -al
lrwxrwxrwx 1 root root 4 11 月 16 15:33 /bin/sh - bash
以上結果就表示當前系統用的是 dash 解釋器。
切換到 bash 的方式其實挺簡單的,關鍵是一直沒找出這個原因……
修改默認的 sh,可以采用命令 sudo dpkg-reconfigure dash
會出現一個圖片狀的配置菜單,選 no 就可以了
再次檢查一下,ls /bin/sh -al 發現軟鏈接指向 /bin/bash
lrwxrwxrwx 1 root root 4 11 月 16 15:33 /bin/sh - bash
注:dash 和 bash 語法上的主要的區別有:
1. 定義函數
bash: function 在 bash 中為關鍵字
dash: dash 中沒有 function 這個關鍵字
2.select var in list; do command; done
bash: 支持
dash: 不支持, 替代方法: 采用 while+read+case 來實現
3. echo {0..10}
bash: 支持 {n..m} 展開
dash: 不支持,替代方法, 采用 seq 外部命令
4. here string
bash: 支持 here string
dash: 不支持, 替代方法: 可采用 here documents
5. word 重定向標準輸出和標準錯誤
bash: 當 word 為非數字時,word 變成重定向標準錯誤和標準輸出到文件 word
dash: word, word 不支持非數字, 替代方法: word 2 常見用法 /dev/null 2 1
6. 數組
bash: 支持數組, bash5 支持關聯數組
dash: 不支持數組,替代方法, 采用變量名 + 序號來實現類似的效果
7. 子字符串擴展
bash: 支持 ${parameter:offset:length},${parameter:offset}
dash: 不支持, 替代方法: 采用 expr 或 cut 外部命令代替
8. 大小寫轉換
bash: 支持 ${parameter^pattern},${parameter^^pattern},${parameter,pattern},${parameter,,pattern}
dash: 不支持,替代方法: 采用 tr/sed/awk 等外部命令轉換
9. 進程替換 (command), (command)
bash: 支持進程替換
dash: 不支持, 替代方法, 通過臨時文件中轉
10. [ string1 = string2 ] 和 [ string1 == string2 ]
bash: 支持兩者
dash: 只支持 =
11. [[ 加強版 test
bash: 支持[[ ]], 可實現正則匹配等強大功能
dash: 不支持[[ ]], 替代方法,采用外部命令
12. for (( expr1 ; expr2 ; expr3 )) ; do list ; done
bash: 支持 C 語言格式的 for 循環
dash: 不支持該格式的 for, 替代方法,用 while+$((expression))實現
13. let 命令和((expression))
bash: 有內置命令 let, 也支持 ((expression)) 方式
dash: 不支持,替代方法,采用 $((expression))或者外部命令做計算
14. $((expression))
bash: 支持 id++,id--,++id,--id 這樣到表達式
dash: 不支持 ++,--, 替代方法:id+=1,id-=1, id=id+1,id=id-1
“linux dash 的含義是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!