提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


第一章:子串

  • 第一章:命令、子串用法、变量、父子shell
  • 一、知识点
  • 小结
  • 二、特殊变量含义
  • 三、子串语法
  • 四、案例



第一章:命令、子串用法、变量、父子shell


提示:以下是本篇文章正文内容,下面案例可供参考

一、知识点

  1. 通过sh、bash进入一个子shell,每个子shell的作用域独立,且不能相互访问,通过pstree查看进程树
  2. 进入一个shell的环境变量加载和初始化顺序是:
    /etc/profile、/etc/bastrc(全局环境变量文件)==>~/.bash_profile~/bashrc(用户环境变量文件)
  3. name=ls,反引号的赋值意思是:
    将ls命令执行的结果赋值给name变量,例子:echo name=ls > shell.sh
  4. 通过sh、bash 执行shell脚本是开启了一个子shell因此不会保留脚本当前的变量;通过source或则点号执行脚本,意味着是在当前shell环境执行脚本,因此保存脚本变量到当前shell中
  5. 单引号变量,不识别特殊语法;双引号变量识别特殊语法
  6. 创建进程列表(一条命令行同时执行多条命令):
    在当前shell运行进程列表:ls;pwd;echo $BASH_SUBSHELL
    开启一个子shell运行进程列表:(ls;pwd;echo $BASH_SUBSHELL)
    多个子shell嵌套:(ls;(pwd;(echo $BASH_SUBSHELL))
  7. 内置命令和外置命令:
    内置命令:在系统启动时就加载到内存,执行效率更高,但是占用资源
    外置命令:系统需要时从硬盘读取程序文件,再读入内存加载(即自用户安装到程序命令)
    注意:运行外置命令必然会开启子shell执行,运行内置命令不会
小结

【Shell编程】第一章:子串_开发语言

二、特殊变量含义

【Shell编程】第一章:子串_linux_02

三、子串语法

printf:该输出会自动识别特殊符号(\n\t\r)

Echo:默认不识别特殊符号(\n\t\r)

Echo -e :识别特殊符号

echo -n :单行输出

【Shell编程】第一章:子串_开发语言_03


【Shell编程】第一章:子串_子串_04

四、案例

(1)、子串的应用:批量修改文件名

【Shell编程】第一章:子串_子串_05


(2)、拓展变量的使用:数据备份,删除过期数据‘


【Shell编程】第一章:子串_子串_06