为了账号安全,请及时绑定邮箱和手机立即绑定
  • 1.位置参数变量 $n:n 为数字,$0 代表命令本身,$1-$9 代表第一到第九个参数,十以上的参数需要用大括号包含,如 ${10}。 $*:这个变量代表命令行中所有的参数,$* 把所有的参数看成一个整体。 $@:这个变量也代表命令行中所有的参数,不过 $@ 把每个参数区分对待。 $#:这个变量代表命令行中所有参数的个数。 2.例子1: #!/bin/bash num1=$1 num2=$2 sum=$(($num1+$num2)) #变量 sum 的和是 num1 加 num2 echo $sum #打印变量 sum 的值 执行脚本: $ ./test.sh 45 76 3.例子2 #!/bin/bash echo "A total of $# parameters" #使用 $# 代表所有参数的个数 echo "The parameters is:$*" #使用 $* 代表所有的参数 echo "The parameters is:$@" #使用 $@ 代表所有的参数 执行脚本: $ ./test.sh 11 22 33 44 4.例子3:$* 与 $@ 的区别 #!/bin/bash for i in "$*" # $* 中所有参数看成是一个整体,所以这个 for 循环只会循环一次 do echo "The parameters is:$i" done for y in "$@" # $@ 中每个参数都看成是独立的,所以 $@ 中有几个参数,就会循环几次 do echo "Parameter:$y" done
    查看全部
    8 采集 收起 来源:位置参数变量

    2018-03-22

  • W_0
    程序执行的返回值: $? :最后一次执行命令的返回状态,如果正确执行,则返回0; 如果返回为非零(具体数值由命令决定),则上一条命令执行不正确 执行完一条命令之后,立马敲入echo $?,可得到返回值。例如:ls 执行之后,再敲入echo $?,可以得到0 前门说到的逻辑或:|| -->ls || echo yes ;前面一条语句正确执行,才执行后一条语句。这里就是通过执行命令的返回值来判断的 逻辑与:&& --> ls qwe && echo no 也是同样的道理 $$:返回当前进程的PID号; $!:返回后台的进程PID号; 可以通过一个简单的shell来展示一下: sl.sh #!/bin/bash ehco "dang qian de PID: $$" find / hello.sh & echo "hou tai de PID: $!" chmod 755 sl.sh,然后再执行:./sl.sh;可以得到当前的测试的结果 read -n read -p "please input name " name #-p表示输出提示信息 read [选项] 变量名 read -t 30 #-t 表示等待时间单位为秒 -t 30 表示30秒,若30秒后没有输入数据终止执行脚本 read -s #隐藏信息 echo -e "\n" 换行符 read.sh: #!/bin/bash read -p "please input your name:" -t 30 name #等下输入,如果超过30秒不输入,就终止当前命令 echo $name read -p "please input your password:" -s pwd #输入的值是隐藏的,看不见的,但是在sh里面还是可以获取到的,并且输出的 echo -e "/n" echo $pwd read -p "please input your sex [M/F]:" -n 1 sex #意思就是只能输入一个字符,且输入之后立马执行 echo -e "/n" echo $sex chmod 755 read.sh---> ./read.sh
    查看全部
    7 采集 收起 来源:预定义变量

    2018-03-22

  • 1.环境变量与用户自定义变量的区别 环境变量是全局变量,用户自定义变量是局部变量。 用户自定义变量只在当前的 shell 中生效,环境变量在当前 shell 和这个 shell 的所有子 shell 中生效。 用户可以自定义环境变量,但对系统生效的环境变量名和变量作用是固定的。 2.用户自定义环境变量 $ export 变量名=变量值 或 $ 变量名=变量值 $ export 变量名 3.查看环境变量 $ set 查看所有变量 $ env 查看环境变量 4.删除环境变量 $ unset 环境名 5.常用的环境变量 HOSTNAME:主机名 SHELL:当前的 shell TERM:终端环境 HISTSIZE:历史命令条数 SSH_CLIENT:当前操作环境是用 ssh 连接的,这里记录客户端 ip SSH_TTY:ssh 连接的终端是 pts/1 USER:当前登录的用户 PATH:系统搜索命令的路径 要想直接通过脚本名执行自己的脚本: (1)将脚本拷贝至 PATH 中的任意目录下(不建议这样做),例如: $ cp hello.sh /bin/ (2)将脚本所在目录添加到 PATH 变量中,例如: $ PATH="$PATH":/root/sh 但系统重启后失效 PS1:命令提示符设置 \d:显示日期,格式为"星期 月 日" \H:显示完整的主机名 \t:显示 24 小时制时间,格式为"HH:MM:SS" \A:显示 24 小时制时间,格式为"HH:MM" \u:显示当前用户名 \w:显示当前所在目录的完整名称 \W:显示当前所在目录的最后一个目录 \$:提示符。root 用户为"#",普通用户为"$"
    查看全部
    5 采集 收起 来源:bash环境变量

    2018-03-22

  • 1、变量=值 e.g. x=5 注意,变量名只能是字母、下划线、数字组成且不能以数字开头,=号左右不可有空格 2、“”会解析特殊符号,例如$,‘’不会解析特殊符号 3、引用变量:$变量名 例如:$x 4、所有变量默认的值都是字符串类型,不可做Math运算 5、变量叠加 e.g y="$x"123 或者 y=${x}123 6、查看变量 set 会列出系统中所有的变量,包括环境变量和自定义变量 set -u //设定当调用不存在变量时,会提示错误 7、删除变量 unset 变量名 例如:unset x
    查看全部
  • 当前语系查询:locale //直接生效的是LANG变量(默认语系) LC_ALL:定义整体语系(不常用) echo $LANG //当前语系环境 echo $LC_ALL //整体语系环境 locale -a | more 查看Linux支持的所有语系环境 cat /etc/sysconfig/i18n //下次开机以后的系统环境 LANG=zh_CN.UTF-8 //切换成中文
    查看全部
    3 采集 收起 来源:bash语系变量

    2017-02-09

  • 变量名只能是字母、下划线、数字组成且不能以数字开头 变量等号两侧不能加空格 若变量值中间有空格,必须用双引号括起来 //变量值中的“”会解析特殊符号,例如$,‘’不会解析特殊符号 变量调用:echo $变量名 例如:echo $x 在shell中,所有变量的默认类型都是字符串型, (即系统把所有值都当作字符串放到变量中,不论这个“字符串”实际上是整数、浮点数等等) 例如: x=5 这里5是作为一个字符串而不是数值赋给x的, echo $x 5 所得出的5也是一个字符串,因此不能直接参加数学运算。 再例如: y=6 z=$x+$y echo $z 5+6 可见,z并不是11,系统只是把5+6当作了一个字符串赋给了z,赋值前并没有对5+6进行进一步地计算。 变量叠加的两种方法: x="$x"234 x=${x}234 变量的查看: 命令set set -u 调用未声明变量时会报错, 例如: echo $a set -u (报错……) (此处,a是未声明变量,而并不是在先前已经进行过赋值声明“a=(NULL_VALUE)”(即“a=”)的变量。) 变量的删除: unset 变量名
    查看全部
  • 位置参数变量:$n(n是数字,$0代表本身,10以上用${10}表示);$*显示命令行所有参数,并当时一个整体;$@显示命令行所有参数,并单独区分;$#显示命令行输入参数个数。
    查看全部
    2 采集 收起 来源:位置参数变量

    2017-08-26

  • 变量命名规则 1.开头为字符或下划线,名字中间中能有字母、数字和下划线组成; 2.变量的长度不超过255个字符; 3.变量名在有效的范围内必须是唯一的; //如再次定义则会替换上一个变量的值 4.在Bash中,变量的默认类型都是字符串型. //即系统把所有值都当作字符串放到变量中,不论这个“字符串”实际上是整数、浮点数等等 变量按照存储数据常用分类(其他语言):字符串型,整型,浮点型,日期型 变量的分类(见截图) 用户自定义变量 环境变量 位置参数变量 //实际就是预定义变量 预定义变量
    查看全部
  • 变量命名规则 1.开头为字符或下划线,名字中间中能有字母、数字和下划线组成; 2.变量的长度不超过255个字符; 3.变量名在有效的范围内必须是唯一的; 4.在Bash中,变量的默认类型都是字符串型. $a=1,$b=2,$c=$a+$b,echo $c,会输出1+2 在shell中,所有变量的默认类型都是字符串型, (即系统把所有值都当作字符串放到变量中,不论这个“字符串”实际上是整数、浮点数等等)
    查看全部
  • 预定义变量: 1.$?:最后一次执行的命令的返回状态。 如果这个变量的值为0,证明上一个命令正确执行;如果这个变量的值为非0(具体是哪个数,由命令自己来决定),则证明上一个命令执行不正确了。 2.$$:当前进程的进程号(PID)。 3.$!:后台最后一个运行的进程的进程号(PID)。 执行命令后在后面加一个& ,可以在后台进行 执行完一条命令之后,立马敲入echo $?,可得到返回值。例如:ls 执行之后,再敲入echo $?,可以得到0 接收键盘输入 read [选项] [变量名] 选项: -p "提示信息":在等待read输入时,输出提示信息 -t 秒数:read命令会一直等待用户输入,使用此选项可以指定等待时间 -n 字符数:read命令只接受指定的字符数,就会执行 -s:隐藏输入的数据,适用于机密信息的输入 read.sh: #!/bin/bash read -p "please input your name:" -t 30 name echo $name read -p "please input your passwd:" -s passwd echo -e "\n" echo $passwd read -p "please input your sex [M/F]:" sex echo -e "\n" echo $sex
    查看全部
    1 采集 收起 来源:预定义变量

    2018-03-22

  • 1.环境变量与用户自定义变量的区别 环境变量是全局变量 用户自定义变量是局部变量。 用户自定义变量只在当前的 shell 中生效,环境变量在当前 shell 和这个 shell 的所有子 shell 中生效。 用户可以自定义环境变量,但对系统生效的环境变量名和变量作用是固定的。 2.用户自定义环境变量 $ export 变量名=变量值 或 $ 变量名=变量值 $ export 变量名 3.查看环境变量 $ set 查看所有变量 $ env 查看环境变量 4.删除环境变量 $ unset 环境名 5.常用的环境变量 HOSTNAME:主机名 SHELL:当前的 shell TERM:终端环境 HISTSIZE:历史命令条数 SSH_CLIENT:当前操作环境是用 ssh 连接的,这里记录客户端 ip SSH_TTY:ssh 连接的终端是 pts/1 USER:当前登录的用户 PATH:系统搜索命令的路径 要想直接通过脚本名执行自己的脚本: (1)将脚本拷贝至 PATH 中的任意目录下(不建议这样做),例如: $ cp hello.sh /bin/ (2)将脚本所在目录添加到 PATH 变量中,例如: $ PATH="$PATH":/root/sh 但系统重启后失效
    查看全部
    1 采集 收起 来源:bash环境变量

    2018-03-22

  • 预定义变量: 1.$?:最后一次执行的命令的返回状态。 如果这个变量的值为0,证明上一个命令正确执行;如果这个变量的值为非0(具体是哪个数,由命令自己来决定),则证明上一个命令执行不正确了。 2.$$:当前进程的进程号(PID)。 3.$!:后台最后一个运行的进程的进程号(PID)。 接收键盘输入 read [选项] [变量名] 选项: -p "提示信息":在等待read输入时,输出提示信息 -t 秒数:read命令会一直等待用户输入,使用此选项可以指定等待时间 -n 字符数:read命令只接受指定的字符数,就会执行 -s:隐藏输入的数据,适用于机密信息的输入 read.sh: #!/bin/bash read -p "please input your name:" -t 30 name echo $name read -p "please input your passwd:" -s passwd echo -e "\n" echo $passwd read -p "please input your sex [M/F]:" sex echo -e "\n" echo $sex
    查看全部
    1 采集 收起 来源:预定义变量

    2018-03-22

  • PS1变量
    查看全部
    1 采集 收起 来源:bash环境变量

    2015-08-14

  • PS1环境变量的含义
    查看全部
    1 采集 收起 来源:bash环境变量

    2015-08-05

  • 老师说错了吧,unset的时候是因为加了$符号,所以unset不掉。并不存在是不是子bash的问题
    查看全部
    1 采集 收起 来源:bash环境变量

    2015-05-16

首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
小伙伴们,学习本课程需要具备Linux基础知识,请大家学习完《Linux达人养成计划I》之后学习。
老师告诉你能学到什么?
能够熟练使用shell中的用户自定义变量、环境变量、语系变量、位置参数变量和预定义变量。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!