红帽Linux Bash shell的知识点总结

2020-02-26

名师导读

红帽Linux Bash shell的知识点总结~~~

  一、概述
  1.红帽企业版Linux默认的Shell是bash Shell。
  2.bash Shell可以交互使用,或者作为一种强大的脚本语言使用;
  3.bash启动时执行~/.bashrc文件中的命令,允许用户自定义其Shell;
  4.bash Shell保存它所执行的命令到历史记录中。在命令行可以使用以“!”开头的各种历史记录替换在历史记录中进行检索。
  历史替换:
  !!:前一个命令
  !n:历史记录中的第几条命令
  !-n:历史记录中的倒数第n条命令
  !cmd:最后启动cmd的命令记录
  history命令的技巧:
  Esc+.和Alt+.:代表前一条输入的命令行中的最后一个单词。
  Ctrl+R:相当于!cmd。
  fc:允许用户通过打开用户的默认编辑器把之前键入的命令作为文本进行“整理”。推出编辑器时,新文本会立刻执行。
  二、命令列表和脚本
  1.多个命令间可以用;隔开;
  2.退出命令时,每个命令向父命令返回一个整数,称作返回值;
  3.Shell变量$?表示先前执行命令的返回值。
  4.&&和||有条件地运行多个命令。
  命令A&&命令B:表示命令A成功的话,则运行命令B。
  命令A||命令B:当命令A失败时,才执行命令B。
  5.shell脚本编程的几个知识点:
  1)脚本的第*行必须指定向哪个解释器发送指令,可以用一个名叫“shebang”的特殊字符串来完成,这个字符串是#!。shebang之后是该脚本解释器的名称。大多数脚本只用#!/bin/sh。
  2)在运行脚本前必须赋予它“可执行的”权限。用来赋予权限的命令是 chmod u+x <scriptname>,这样就可以来运行该脚本了,或者使用命令source(。)来get该脚本文件,也可以的。
  三、bash变量
  1.shell变量用A=apple语法来赋值;
  2.用$字符来解析变量,例如echo $A。*保险的引用方式是:${A}
  3.在内核层,每个进程有一个由子进程继承的环境变量集合。
  4.export命令将Shell变量转化为环境变量。
  5.set和env命令分别用于列出shell变量和环境变量。可以通过export命令把shell变量提升为环境变量。
  四、命令行替换
  1.bash shell在解释命令前替换某些命令行元字符。
  2.代字号替换将用户主目录替换为以代字号(~)开始的标记。
  3.大括号替换将带有大括号{}的标记替换为多个字,每个字都含有一个来自指定列表上的字。
  4.命令替换把反引号(??)或美元圆括号($())中的文本替换为括号内的命令产生的输出结果。
  5.双引号(“。。。”)、单引号(‘。。。’)和反斜线字符可以用来避免元字符被shell替换。
  五、自定义shell
  1.bash shell本身即实现某些简单命令,这些命令与shell的行为紧密相连,被称为内置命令。
  2.shell别名可创建扩展为任意文本的命令
  3.用alias命令简历和检查shell命令别名。
  4.用unalias命令删除shell别名。
  5.用PS1变量自定义bash shell提示符。
  6.shell标记可以用set -f命令设定,用set +f命令删除。
  7.shell选项用shopt命令检查、设置(-s)和复位(-u)。
  六、获得shell脚本和shell初始化
  1。shell脚本用source或.命令获得
  2.shell脚本在执行获得脚本的同一个shell中执行,并且可能会修改当前shell的变量。
  3.bash shell既可以是登录shell,也可以是非登录shell;
  4.在启动每个登录shell时可获得/etc/profile、/etc/profile.d目录中的文件,以及~/.bash_profile。
  5.在每次shell启动时可获得/etc/bashrc和~/.bashrc。
  6.在每次退出shell时可获得~/.bash_logout。
  

E N D

免责声明:机构动态部分文章信息来源于网络以及网友投稿,本网站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。

上一篇

什么样才是适合KTV的好服务器?【硬件篇】

什么样才是适合KTV的好服务器?【硬件篇】

下一篇

网络及网络安全类技术岗位薪资看涨,拥有思科认证及培训更优

  网络及网络安全类技术岗位薪资看涨,拥有思科认证及培训更优~~~

我的位置: 首页 专题详情

本网站的所有信息为机构或个人在本站免费发布,该信息的真实性、准确性和合法性由机构或个人负责,本站对此不承担任何保证责任!电子邮件:15621852701@163.com