Bash的学习

  
Bash的学习
    本文的所有内容都可以在《鸟哥的Linux私方菜 基础学习篇》中找到。在此感谢鸟哥。
1.     Shell的历史
Shell的英文意思为:贝壳, 壳, 外形, 炮弹。我们在装有Linux系统的计算机上的文字界面操作时,实际上是我们操作Shell,Shell操作Kernel,Kernel操作计算机硬件。
第一个流行的Shell是由Steven Bourne开发出来的,为了纪念他所以称为Bourne shell。Linux使用的是Bourne Again Shell(BASH),这个Shell是Bourne Shell的增强版本,是基于GNU的架构下发展而来的。
2.     Shell的主要功能
1)     历史命令编辑
您曾经使用过的命令都会被记录下来,您只要在命令行中按下“↑”和“↓”键就可以在曾曾输入过的命令中切换。历史命令被存储在“~/.bash_history”文件内。
2)     补全功能
补全功能主要分为指令补全和文件名补全。
指令补全:在执行命令时不想按太多按键的时候。例如指令pcfrofiledump够长,如果在输入pcfrofile后按下Tab键,bash会将后面的dump补上来。如果有重复的指令,按下两次Tab键,bash会将所有的重复指令都列出来。
文件名补全:如果您想用vi读取某个文件,例如/etc/man.config。您可以在输入vi /etc/man.之后直接按下Tab键,那么该文件名称会被自动补全。
3)     命令别名设定功能
在命令行输入alias(英文“别名”的意思),就可以知道当前的命令别名都有哪些。设定别名的命令为:
Alias rm=’rm -i’
这样在删除文件时都会得到bash的提示确认,可以避免误删文件的情况。
4)     作业的前背景控制
在命令行后加“ &”就将该执行程序丢到背景执行,即
Find / -name testing & <==将该执行程序丢到背景执行
让该程序重新在屏幕上运行,则使用fg。另外,在程序的执行过程中,按下Ctrl + z也会使该程序切换到背景中。
jobs 命令、fg 命令、bg 命令
jobs可以知道当前背景下的都有哪些job在工作。bg是将背景中的程序由stopped变成Running的一个手段,至于fg,则是将背景中的指令移到屏幕上。
执行jobs可以查看背景程序的代号,然后用bg %number将数据放在背景中执行,而fg %number则是将代号为number的程序移到屏幕前操作。
3.     Bash Shell的配置文件
1)     系统设定值
每个用户(everyone)进入到bash shell后先读取的配置文件有:/etc/profile,/etc/bashrc,/etc/man.config。
/etc/profile:这个文件设定了几个重要变量,例如PATH, USER, MAIL, HOSTNAME, HISTSIZE, umask等,也同时规划出/etc/inputrc这个针对键盘热键设定的文件数据内容。您可以在这里设定总体的PATH等信息。同时,这个文件还规划出/etc/profile.d及/etc/inputrc这两个文件,其中,inputrc作用于history(历史命令)。
/etc/bashrc:这个文件用于规划umask,同时规划提示符的内容(就是里面那个PS1)。特别留意的是,这个文件在不同的Linux版本里摆放的位置可能不太一样,所以需要查询。
/etc/man.config:这个文件的内容规范了使用man时man page的路径,即这个文件指定了输入man时查看数据的路径设定。如果您是以Tarball方式安装数据,那么您的man page(指令说明文件)可能会放在/usr/local/softpackage/man中,其中的softpackage是套件名称,这时您得以手动方式将该路径加到/etc/man.config中,否则使用man时会找不到相关的说明文档。
2)     用户设定值
用户的自定义设置在个人根目录下的几个隐藏文件中,分别会用到下面的几个文件(“~”代表的时用户根目录)
~/.bash_profile:里面定义了个人路径(PATH)与环境变量的文件名称。您可以在这里修改您的个人路径,当然,也可以在~/.bashrc这个个人设定的变量中修改。有的时候可以用~/.profile或~/.bash_login等文件来取代这个文件。
~/.bashrc:这个文件对于个人喜好的bash设定是最重要的,可以设置个人喜好的命令别名,进行路径的重定义等。
~/.bash_history:这个文件用于将您曾经用过的命令记录下来,而当您再次以“↑”和“↓”键搜寻或者直接以history搜寻时就可以找到曾经用过的指令。这个文件的指令记录数量与HISTSIZE有关,您可以自行在~/.bashrc中设定,或者直接由root在/etc/profile中统一设定。
~/.bash_logout:这个文件则是在您注销shell的时候BASH为您所做的事情。通常默认是只有清楚清楚屏幕这件事,不过,您也可以建一些备份或其他您认为重要的工作鞋在这个文件中(例如清空暂存空间),那么当您推出Linux时,就可以解决一些烦人的事情。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值