Linux shell 复习知识点—— 第一章

1、shell的种类

  • sh
  • bash
  • ksh
  • csh

2、shell的命令种类

  • 内建命令
  • shell函数
  • 外部命令

3、 变量

  • 规范使用

    • 一个字母/ 下划线+ 任意长度字母、数字、下划线
    • (值)没有长度限制
    • 一切值都是字符串
    • 变量“裸体”(没有$前缀): $a——>${a}
      • 变量被声明或赋值
      • 变量被unset
      • 变量被export(环境变量)
    • “ ”弱引用 ‘ ’强引用
  • 全局变量(默认)和局部变量

    • 不能写成: var = “a”!! 等号左右不能有空格
    • local声明局部变量 ,全局变量不加修饰词
    #! /bin/bash
    #测试全局变量和局部变量的适用范围
    num=123
    func1(){
          
          
    	num=321
    	echo $num
    }
    func2(){
          
          
    	local num=456
    	echo $num
    {
          
          
    
    echo $num        #123
    func1			 #321
    echo $num		 #321
    func2			 #456
    echo $num		 #321
    
  • echo输出环境变量

    • echo “a” ——> echo a 可忽略 “ ”
    • echo -n
    #!/bin/bash
    echo -n "123"
    echo "456"
    	
    echo "123"
    echo "456"
    

    运行结果:

    123456
    123
    456
    
    • echo -e
    #显示换行
    echo -e "OK! \n" # -e 开启转义
    echo "It is a test"
    
    OK!
    
    It is a test
    
    #显示不换行
    echo -e "123\c" # -e 开启转义 \c 不换行
    echo "456"
    
    123456
    
    #显示结果定向至文件
    echo "It is a test" > myfile
    
    #引用所有参数
    echo "$*"  #多个参数当做一个参数传递
    echo "$@"  #多个参数多次传递
    
  • 环境变量

  • export:设置或显示环境变量

  • env:删除环境变量

  • unset:删除变量、函数
    -v(默认)
    -f

  • 查看变量:
    env:显示环境变量
    set:显示所有变量和函数
    使用var=123,var是本地变量而不是环境变量
    若使用export var=123,则set和env都可以显示var

    在这里插入图片描述

4、编译和解释语言

编译型 解释型
执行前 要编译为机器语言 不用编译
运行时 不用翻译(已翻译一次) 要翻译
优缺点 执行效率高
难以执行简单操作
执行效率低
Java、C python、sell、awk
区别 翻译的时间不同

5、Linux shell的优势

  • 简洁性
  • 开发容易
  • 便于移植

source命令:source执行脚本时,因没有子进程产生,此时脚本的export命令会影响到父进程的环境。

猜你喜欢

转载自blog.csdn.net/txmmy/article/details/122029620