shell-基础入门

实际上是我们写了一行命令,将这个命令发给shell shell可以看作一个翻译官
shell的意思是包裹操作核心的壳

shell包含 比如 bash解释器,或者zsh解释器

在window中是.bat 批处理脚本
在linux是.sh脚本文件

shebang是#! 表示脚本要用哪个解释器去读
#! /user/bash 表示用bash解释器
如果没写 默认使用shell

单双引号

单引号不会识别特殊符号

name='${hello}' #输出出来的是${
    
    hello}

name="${hello}" #输出出来的是hello

反引号

反引号中代码执行的结果会被保留

name='ls'#ls获取的信息都会给到name

通过source运行脚本和bash,sh运行的区别

sh,bash会创建一个子shell,并不会存储相关变量到当前shell环境中
而通过source或者直接太通过./hello.sh调用则在当前shell中加载,会保存变量
比如如果hello.sh中定义了name=Abc
则通过source运行hello.sh后再执行echo name就会得到Abc 而通过bash或者sh就不会

执行顺序

bash会读取若干个系统环境文件,检查环境变量设置

  1. /etc/profile #全局环境变量文件
  2. /etc/profile.d目录下的脚本文件 #有系统诸多脚本 也放入自定一需要登录加载的脚本 便于登录后立即运行的脚本
  3. 运行$HOME/.bash_profile(用户环境变量文件)
  4. 运行/etc/bashrc 或者是zshrc这种

猜你喜欢

转载自blog.csdn.net/qq_43535469/article/details/131142443