共计 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 小编将为大家输出更多高质量的实用文章!