eg:计算机输出自己需要的程序。
- 硬件:需要硬件能进行发声(声卡)。
- 核心管理:操作系统的核心可以驱动芯片程序。
- 应用程序:需要使用者输入程序。 以上为程序工作的简单流程。
操作程序是在操作硬件,防止用户随意操作产生系统崩坏,就出现了应用程序供应用户使用。
Bourne Again SHell
shell 存在多种,bash就为Bourne SHell(简称sh)的增强版.
如果有特殊的shell,那么就需要在etc/shells中进行添加,以便用于识别使用特殊的shell。
功能:主要兼容sh。
优点
命令编修能力
- 可以使用上下键翻被记住的指令,在很多的distribution默认的指令记忆达到近1000个!这么多的指令记录在.bash_history。
- 备注:~/.bash_history记录的是前一次登入所执行的命令。而至于这一次登入所执行的指令都被暂存在内存中,当成功注销系统后,该指令才会记录到.bash_history. ---- 作用:有助于查错和知道之前的指令。但是有被人利用的风险。
tab键的使用
- 第一个字母输入后点击,功能为命令补全。
- 第二个字母按,为档案补齐。
命令别名设定(alias)
- 可以将ls -al取代成自己喜欢输入的命令。例:alias lm = 'ls -al',也可输入alias查询设置已有的别名。
工作窗口的背景化
- 防止程序的停止
程序化脚本
- shell script可以参考DOS的批处理文件,可以藉由shell提供的环境变量及相关指令来进行设计。
通配符
- 在bash下使用通配符,即在某种条件下满足的多种文件。例:find *.html 发现当前目录下的所有的html文件。
type
- 用于指定是否为内部指令。type cd
指令下达
- 使用 +enter 键跳到下一行,用于指令过长的情况。(这里的\用于跳脱)
- 注:当登录到终端机上时,会根据/etc/password/档案的设定给我们一个shell,然后根据上面的指令下达
shell 变量功能
linux系统是多人多任务的系统,每个人都有自己的bash。
变量
用一些特定字符来值一些不固定的内容。 注:只有当进入到系统才能使用shell,那么在此之前的一些操作的参数/变量都放在环境变量。如背景色。 查找环境变量:echo
HOME.使用
{变量名} 设置环境变量:mail=00000000000@qq.com,然后使用echo $mail的方式进行查看
设置变量方法和注意事项
- 发量不发量内容以一个等号=连结,如下所示: myname=VBird
- 等号两边丌能直接接空格符,如下所示为: myname = VBird或myname=VBird Tsai
- 发量名称叧能是英文字母不数字,但是开头字符不能是数字,如下为: 2myname=VBird
- 发量内容若有空格符可使用双引号"单引号'将发量内容结合起杢,但
双引号内特殊字符如
LANG"则echo
LANG'则echo
LANG
- 可用跳脱字符 \ 将特殊符号(如 [Enter], $, , 空格符, '等)发成一般字符;
- 在一串指令中,还需要藉由其他的指令提供的信息,可以使用反单引号
指令戒(uname -r)再echo $version可得2.6.18-128.el5
- 若该发量为扩增发量内容时,则可用 "
{发量} 累加内容,如下所示: PATH="$PATH":/home/bin
- 若该发量需要在其他子程序执行,则需要以 export 使发量发成环境发量: export PATH
- 通常大写字符为系统默认发量,自行讴定发量可以使用小写字符,方便判断 (纯粹依照使用者兴趣 不嗜好): 10.删除变量的方法为使用 unset :unset 发量名称,例如取消 myname 的设定: unset myname
子程序
在当前shell下,启动另一个shell。称为子程序。一般情况下父程序的变量不能被子程序使用。但使用export就可以。
每个linux都有多个核心,几乎distribution的和新版本都不相同,可以使用uname -r进行查询。 范例六:如何迚入刡您目前核心癿模块目录? [root@www ~]# cd /lib/modules/
uname -r/kernel [root@www ~]# cd /lib/modules/$(uname -r)/kernel
- 注: 配置变量:name=beck;MyName=$name;
- 如果常使用一个目录:work=/lib/ee/e/e/e/e/e/e/e/e/e ---> cd $work可以进行简洁跳转