博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux -- ubuntu dash bash
阅读量:7015 次
发布时间:2019-06-28

本文共 846 字,大约阅读时间需要 2 分钟。

终端:即所谓的命令行界面,又称命令终端,用户输入shell命令用的窗口,跟Windows里的DOS界面差不多。

shell:意为“壳”,是操作系统与用户交互用的接口,在命令终端里可以使用shell。shell将用户输入翻译为操作系统能处理的指令。shell提供了一些内置命令,也支持调用外面工具。

dash:是ubuntu里默认的shell。shell有好多种,除支持默认的POSIX标准外还支持不同的扩展语法,目前最常用的是bash,很多shell学习的教程都是针对bash的。dash除了不支持数组外,其实和bash差别也不大。ubuntu里可以将默认shell由dash改为bash。

 

buntu的 shell 默认安装的是 dash,而不是 bash。

运行以下命令查看 sh 的详细信息,确认 shell 对应的程序是哪个:
$ls -al /bin/sh
dash 比 bash 更轻,更快。但 bash 却更常用。
如果一些命令、脚本等总不能正常执行,有可能是 dash 的原因。
比如编译 Android 源代码的时候,如果使用 dash,则有可能编译出错,或者编译的系统不能启动。
通过以下方式可以使 shell 切换回 bash:
$sudo dpkg-reconfigure dash
然后选择 no 或者 否 ,并确认。
这样做将重新配置 dash,并使其不作为默认的 shell 工具。
也可以直接修改 /bin/sh 链接文件,将其指定到 /bin/bash:
$sudo ln -fs /bin/bash /bin/sh
还有一种解决方法是,在脚本文件中直接指定使用的 shell,而不是指定 sh:
例如使用 #!/bin/bash 或者 #!/bin/dash 而不是#!/bin/sh。
但这样将丧失脚本的通用性,使其在不具备所指定脚本的系统下不能被执行。

转载于:https://www.cnblogs.com/hf8051/p/4538986.html

你可能感兴趣的文章
【原】浅谈测试和产品
查看>>
tomcat 容器生命周期lifecycle
查看>>
VC调用javascript的几种方法
查看>>
Entity Framework简介
查看>>
图片轮播小列子
查看>>
趣文分享:有人将Android开发环境比作女人
查看>>
ASP.NET MVC 使用TryUpdateModel 更新的技巧
查看>>
构建最小根文件系统
查看>>
用法规则记录
查看>>
ESXi安装实录
查看>>
Leetcode: Roman to Integer
查看>>
Tomcat 配置加密的服务器连接器
查看>>
jQuery 学习笔记1 弹出一个对话框
查看>>
GCD介绍(二): 多核心的性能
查看>>
Openfire开发配置,Openfire源代码配置,OpenFire二次开发配置
查看>>
转 CentOS开启FTP及配置用户
查看>>
前端文摘:Web 开发模式演变历史和趋势
查看>>
win7的优化-1:隐藏我的电脑导航栏里的收藏等项目
查看>>
Consequence of Point-by-Point Bounds
查看>>
c# 封装的7zip压缩 (全源码,不含任何类库)
查看>>