查看: 68199|回复: 439

详解Linux bash中的变量

[复制链接]
  • TA的每日心情
    擦汗
    2018-9-7 21:51
  • 签到天数: 54 天

    [LV.5]常住居民I

    发表于 2015-8-15 22:26:47 | 显示全部楼层 |阅读模式
    在Linux系统中进行日常运维或者是编写脚本时,变量是再熟悉不过的了,但这些变量都有哪些类型,具体的用法又有哪些差异呢?本文整理分享给大家:

    0x1:bash变量类型

       本地变量

       局部变量

       环境变量

       位置变量

       特殊变量(内置)

    0x2:本地变量

       varname=value:作用域为整个bash进程可以使用;

       变量命名规范:

       1. 只能含字母、数字和下划线,并且以字母和下划线开头

       2. 最好不要跟系统已有的环境变量重名

       3. 见名知意

    0x3:局部变量

       local varname=value:作用域为当前代码段

    0x4:环境变量

       作用域为当前shell进程及其子进程,不能影响到其父进程;

       export varname=value “导出”,如果变量已经定义可以只是用变量名 export varname,即

       1. export varname=value

       2. varname=value

       export varname

       脚本在执行命令时会启动一个子shell环境变量:

       系统自动执行的脚本(非命令行启动)就需要自我定义需要的个环境变量

    0x5:位置变量

       $1,$2,$3,……

       cat first.sh test.txt hello

       $1: first.sh

       $2: test.txt

       $3: hello

       shift:踢掉参数

       shift n:踢掉n个参数,默认踢掉一个参数

    0x6:特殊变量

       $?:上一个命令执行状态的返回值:

       程序执行可能有两种返回值:

       1. 程序执行结果

       2. 程序状态返回吗(0-255)

       0 则为执行正确

       1-255 则执行出错(1,2,127系统预留);

       $#:获取当前shell命令行中参数的总个数

       $*:获取当前shell的所有参数 “$1 $2 $3 …,受IFS控制

       $@:这个程序的所有参数 “$1″ “$2″ “$3″ “…”,不受IFS控制

       $0 获取当前执行的shell脚本的文件名

       $n 获取当前执行的shell脚本的第n个参数值,n=1..9

       $$ 获取当前shell的进程号(PID)

       $! 执行上一个指令的PID

    回复

    使用道具 举报

    该用户从未签到

    发表于 2015-8-16 09:40:11 | 显示全部楼层
    学习学习技术,加油!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2015-8-16 18:14:36 | 显示全部楼层
    支持,看起来不错呢!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2015-8-17 08:37:38 | 显示全部楼层
    还是不错的哦,顶了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2015-8-17 10:12:20 | 显示全部楼层
    学习学习技术,加油!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2015-8-17 13:23:33 | 显示全部楼层
    感谢楼主的分享~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2015-8-19 00:06:14 | 显示全部楼层
    支持,看起来不错呢!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2015-8-19 03:21:32 | 显示全部楼层
    支持中国红客联盟(ihonker.org)
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2019-2-12 22:05
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2015-8-19 06:17:20 | 显示全部楼层
    支持中国红客联盟(ihonker.org)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2015-8-19 11:53:08 | 显示全部楼层
    学习学习技术,加油!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    指导单位

    江苏省公安厅

    江苏省通信管理局

    浙江省台州刑侦支队

    DEFCON GROUP 86025

    旗下站点

    邮箱系统

    应急响应中心

    红盟安全

    联系我们

    官方QQ群:112851260

    官方邮箱:security#ihonker.org(#改成@)

    官方核心成员

    Archiver|手机版|小黑屋| ( 苏ICP备2021031567号 )

    GMT+8, 2024-12-26 16:46 , Processed in 0.036642 second(s), 16 queries , Gzip On, MemCache On.

    Powered by ihonker.com

    Copyright © 2015-现在.

  • 返回顶部