Chapter 11 BASH

1. 认识 BASH 这个 Shell

1.1 硬件、核心与 Shell

Chapter 11 BASH_第1张图片

man, chmod, chown, fdisk, vi, mkfs等指令都是独立的应用程序,通过shell来操控。

1.2 为何要学文字接口的 shell

  • 不同的distribution设计的X windows接口不同,但是bash一样。
  • 远程联机,比图形界面快
  • 学习linux

1.3 系统的valid shell 与 /etc/shells 功能

Chapter 11 BASH_第2张图片
/etc/shells
  • sh:第一个流行的shell,Steve Bourne开发
  • csh:Sun公司创始人,也是BSD的最早开发者 Bill Joy设计,语法类似C语言而得名C shell
  • bash:Linux预设


    Chapter 11 BASH_第3张图片
    为什么要记录valid shells
Chapter 11 BASH_第4张图片
/etc/passwd

登录系统时,系统会给一个shell来工作,并记录在passwd文件中,每一行的最后就是所使用的shell

1.4 Bash shell 的功能

  • history:上下键
  • tab键
  • alias,命令别名

alias lm='ls -al'

  • job control, foreground, background 见 chapter 17
  • shell scripts 见 chapter 13
  • 通配符 wildcard

1.5 Bash shell 的内建命令: type

告诉你某个指令是 bash的built-in指令,还是外部命令


Chapter 11 BASH_第5张图片
  • type -a <指令名>
    若为外部指令,还会显示外部治理

1.6 指令的下达

2. Shell 癿发量功能

2.1 什么是发量?
2.2 发量癿叏用不讴定:echo, 发量讴定觃则, unset
2.3 环境发量癿功能: env 不常见环境发量说明, set, export
2.4 影响显示结果癿诧系发量 (locale)
2.5 发量癿有效范围:
2.6 发量键盘读叏、数组不宣告: read, declare, array
2.7 不文件系统及程序癿限刢关系: ulimit
2.8 发量内容癿初除、叏代不替换:, 初除不叏代, 测试不替换

  1. 命令删名不历史命令
    3.1 命令删名讴定: alias, unalias
    3.2 历史命令: history, HISTSIZE
  2. Bash shell 癿操作环境
    4.1 路径不挃令搜寻顺序
    4.2 bash 癿迚站不欢迎讯息: /etc/issue, /etc/motd
    4.3 环境配置文件: login, non-login shell, /etc/profile, ~/.bash_profile, source, ~/.bashrc
    4.4 终端机癿环境讴定: stty, set
    4.5 通配符不特殊符号
  3. 数据流重导向 (Redirection)
    5.1 何谓数据流重导向?
    5.2 命令执行癿刞断依据: ; , &&, ||

6. 管线命令 (pipe)

6.1 撷取命令: cut, grep

cut是分析每一行的信息,取出我们需要的部分
  • 例1:delimiter和field的配合,根据分割符好选取第几列


    Chapter 11 BASH_第6张图片
    cut -d : -f 选取的列数
  • 例2:保留每行第几到第几的字符
    -c 适合处理比较有规律的整齐的文本,这是是选取每行第12到最后的字符

Chapter 11 BASH_第7张图片
export
Chapter 11 BASH_第8张图片
export | cut -c 12-
  • 例3:还是delimiter和field的配合使用,以空格作为分隔符
Chapter 11 BASH_第9张图片
Chapter 11 BASH_第10张图片
cut -d ‘ ’ -f 1
grep是分析每一行的信息,如果有我们需要的部分,整行取出
Chapter 11 BASH_第11张图片
Chapter 11 BASH_第12张图片
grep和cut的组合
Chapter 11 BASH_第13张图片
--color=auto

6.2 排序命令: sort, uniq, wc

6.3 双向重导向: tee
6.4 字符转换命令: tr, col, join, paste, expand
6.5 分割命令: split
6.6 参数代换: xargs
6.7 关亍减号 - 癿用途

你可能感兴趣的:(Chapter 11 BASH)