认识bash 这个Shell

Shell :将我们输入的命令与内核通信,好让内核可以控制硬件来正确无误的工作。
Shell 本身是一个用C语言编写的程序,用户的大部分工作都是通过Shell来完成的。
Shell的功能只是提供用户操作系统的一个接口。

狭义的Shell指的是命令行方面的软件,包括linux默认的bash.广义的Shell则包括图形界面的软件,因为图形界面其实也能够操作各种应用程序来调用内核工作。


可以说Shell使用的熟练程度反应了用户对Unix/Linux使用的熟练程度。

Shell 初学者注意:在平常应用中,建议不要用root账号运行Shell。作为普通用户都无法破坏系统;但如果是root,只要敲几个字母,就可能导致灾难性的后果。


Shell有两种执行命令的方式:
   1.交互式(命令行界面的Shell):解释执行用户的命令,用户输入一条,Shell就解释一条。
   2.批处理:用户事先写一个Shell脚本(Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一条地敲。


注意:Shell脚本与编程语言很相似,也有变量和流程控制语句,但Shell脚本是解释执行的,不需要编译。


Shell是一种脚本语言,就必须有解释器来执行这些脚本。Linux上的脚本解释器有 bash,ksh,csh,zsh等。bash的内部命令共有40个。
   ???为什么要使用bash作为默认的Shell呢???
命令记忆能力(history):默认的命令记忆功能可以到达1000个,记录在主文件内的 .bash_history中;
命令与文件补全功能(Tab);
命令别名设置功能(alias);
作业控制,前台,后台控制;
通配符(*,?);
包含了自身的帮助功能;
可通过方向键快速查找和修改命令。


bash 已经“内置”了很多命令,例如 cd ,那我们怎么知道这个命令是来自外部命令(指的是其他非bash所提供的命令)或是内置在bash当中的呢?  
答案:使用type 命令
语法:type [-tpa] name
参数:
type:不加任何参数时,type会显示name是外部命令还是bash 内置命令
-t  :type会以下面这些字眼显示出它的意义:
file   :表示为外部命令
alias  :表示该命令为命令别名所设置的名称
builtin:表示该命令为bash内置的命令功能。
-p  :如果后面接的name为外部命令时,才会显示完整文件名。
-a  :会由PATH变量定义的路径中,将所有含name 的命令都列出来,包括alias


范例:
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值