当前位置: 首页 > article >正文

Linux,shell基础,变量,数值运算

linux
一.shell基础
    1.什么是shell
        在linux内核与用户之间的解释器程序,通常指/bin/bash
    2.shell的使用方式
        1.交互式
        2.非交互式
    3.Bash基本特征
        1.快捷键
        2.历史命令
        3.重定向
        4.管道
        5.别名
    4.shell脚本
        1.规范脚本构成
            (1) #!指定解释器
            (2) # 注释信息(作者信息,步骤,思路,用途,变量等)
            (3)可执行语句
        2.执行脚本
            (1)直接执行:/脚本路径/脚本名,前提是有x权限
            (2)没有权限,使用解释器执行(解释器有权限)
                解释器 + 脚本
                bash执行脚本:开子进程执行,bash-bash
                source执行脚本:不开子进程执行
        3.排错模式
            解释器 -x
二.变量
    1.变量分类
        1.环境变量:变量名通常都大写,由系统维护,用来设置工作缓解,只有个别变量用户可以直接更改
            (1)配置文件
                /etc/profile  ~/.bash_profile
            (2)相关操作
                env:列出所有的环境变量
                set:列出所有变量
            (3)常见的环境变量
                PWD,PATH,USER,HOSTNAME...
                PATH:命令的搜索路径
        2.位置变量:bash内置,用来存储执行脚本是提供的参数,类似于传参
            (1)表示位$n,n为序号:$1,$2,...,${10}
        3.预定义变量:bash内置,存一类有特殊用途的变量,可直接调用但是不能直接修改赋值
            (1)用来保存脚本程序的执行信息
            (2)直接使用这些变量
            (3)不能直接为这些变量赋值
                $0:当前所在的进程或脚本名
                $$:当前运行进程的PID号
                $?:命令执行后的返回状态,0表示正常,1或其它值表示异常
                $#:已加载的位置变量的个数
                $*或$@:所有位置变量的值
                $!:后台最后一个进程的PID号
        4.自定义变量:用户自主设置,修改及使用
            (1)数字字母下划线组成,不能以数字,特殊符号开头,等号两边不能有空格
            (2)区分变量名用{a}分隔
    2.变量值及范围控制
        1.扩展赋值操作	
            (1)双引号"":允许扩展,以$引用其它变量
            (2)单引号'':禁止扩展,即便$也视为普通字符
            (3)反撇号``=$(命令):将`命令`的执行输出
        2.read标准输入取值(自己输入数据给变量赋值)
            read:从键盘读入变量值完成赋值
            read [-p "提示信息"] 变量名
        3.stty终端显示
            (stty -echo):不显示信息
            (stty echo):显示信息
        4.变量的作用范围
            (1)局部变量:只在当前的shell环境有效(bash进程)
                export -n 名,取消全局变量
            (2)全局变量:在所有shell环境中均有效
                export 名,设置全局变量
三.数值运算
    1.计算符号
        +,-,*,/(取整),%(取余)	
    2.计算格式
        (1)整数计算
            1.$[]或者$(()):如果括号里面有变量,变量的$取值可以省略
            2.let:只算不显示,i=1 ,let i+=1,echo $i=2
        (2)小数计算:bc
            echo "scale=2;10.0/3" | bc :sacle表示保留小数点后几位
  • 一.shell基础
    • 1.什么是shell
      • 在linux内核与用户之间的解释器程序,通常指/bin/bash
    • 2.shell的使用方式
      • 1.交互式
      • 2.非交互式
    • 3.Bash基本特征
      • 1.快捷键
      • 2.历史命令
      • 3.重定向
      • 4.管道
      • 5.别名
    • 4.shell脚本
      • 1.规范脚本构成
        • (1) #!指定解释器
        • (2) # 注释信息(作者信息,步骤,思路,用途,变量等)
        • (3)可执行语句
      • 2.执行脚本
        • (1)直接执行:/脚本路径/脚本名,前提是有x权限
        • (2)没有权限,使用解释器执行(解释器有权限)
          • 解释器 + 脚本
          • bash执行脚本:开子进程执行,bash-bash
          • source执行脚本:不开子进程执行
      • 3.排错模式
        • 解释器 -x
  • 二.变量
    • 1.变量分类
      • 1.环境变量:变量名通常都大写,由系统维护,用来设置工作缓解,只有个别变量用户可以直接更改
        • (1)配置文件
          • /etc/profile ~/.bash_profile
        • (2)相关操作
          • env:列出所有的环境变量
          • set:列出所有变量
        • (3)常见的环境变量
          • PWD,PATH,USER,HOSTNAME...
          • PATH:命令的搜索路径
      • 2.位置变量:bash内置,用来存储执行脚本是提供的参数,类似于传参
        • (1)表示位$n,n为序号:$1,$2,...,${10}
      • 3.预定义变量:bash内置,存一类有特殊用途的变量,可直接调用但是不能直接修改赋值
        • (1)用来保存脚本程序的执行信息
        • (2)直接使用这些变量
        • (3)不能直接为这些变量赋值
          • $0:当前所在的进程或脚本名
          • $$:当前运行进程的PID号
          • $?:命令执行后的返回状态,0表示正常,1或其它值表示异常
          • $#:已加载的位置变量的个数
          • $*或$@:所有位置变量的值
          • $!:后台最后一个进程的PID号
      • 4.自定义变量:用户自主设置,修改及使用
        • (1)数字字母下划线组成,不能以数字,特殊符号开头,等号两边不能有空格
        • (2)区分变量名用{a}分隔
    • 2.变量值及范围控制
      • 1.扩展赋值操作
        • (1)双引号"":允许扩展,以$引用其它变量
        • (2)单引号'':禁止扩展,即便$也视为普通字符
        • (3)反撇号``=$(命令):将`命令`的执行输出
      • 2.read标准输入取值(自己输入数据给变量赋值)
        • read:从键盘读入变量值完成赋值
        • read [-p "提示信息"] 变量名
      • 3.stty终端显示
        • (stty -echo):不显示信息
        • (stty echo):显示信息
      • 4.变量的作用范围
        • (1)局部变量:只在当前的shell环境有效(bash进程)
          • export -n 名,取消全局变量
        • (2)全局变量:在所有shell环境中均有效
          • export 名,设置全局变量
  • 三.数值运算
    • 1.计算符号
      • +,-,*,/(取整),%(取余)
    • 2.计算格式
      • (1)整数计算
        • 1.$[]或者$(()):如果括号里面有变量,变量的$取值可以省略
        • 2.let:只算不显示,i=1 ,let i+=1,echo $i=2
      • (2)小数计算:bc
        • echo "scale=2;10.0/3" | bc :sacle表示保留小数点后几位

http://www.kler.cn/a/383674.html

相关文章:

  • 职场逆袭!学会管理上司,你也能成为职场赢家
  • Navicat for MySQL 错误:1251
  • 纯前端生成PDF(jsPDF)并下载保存或上传到OSS
  • 【ChatGPT】如何通过逐步提示提高ChatGPT的细节描写
  • 进程与线程+多线程优势
  • 二开CS—上线流量特征shellcode生成修改模板修改反编译打包
  • 矩阵论 •「线性变换」
  • Linux系列-进程的状态
  • 动态规划理论基础和习题【力扣】【算法学习day.25】
  • apache poi 实现下拉框联动校验
  • MySQL表转移数据的三种方式
  • 【Python进阶】Python中的网络爬虫策略:高效数据抓取与解析
  • 数据库优化指南:如何将基本功能运用到极致?
  • Qt(程序打包)
  • ubuntu 异常 断电 日志 查看
  • 半导体设备行业,多单收购
  • 微信小程序大学生闲置物品交易平台+ssm(lw+演示+源码+运行)
  • 势不可挡 创新引领 | 生信科技SOLIDWORKS 2025新品发布会·苏州站精彩回顾
  • vue实现websocket实时短消息通知
  • 完全背包模板总结
  • 设计者模式之策略模式
  • 《构建一个具备从后端数据库获取数据并再前端显示的内容页面:前后端实现解析》
  • 集中管理用户名和密码,定期修改密码快捷方便
  • 参数跟丢了之JS生成器和包装器
  • PostgreSQL核心揭秘(三)-元组结构
  • 【科普】conda、virtualenv, venv分别是什么?它们之间有什么区别?