首页 > 代码库 > linux变量
linux变量
- linux中位置参数变量
$n | n为数字,$0代表命令本身,$1-$9代表第一至第九哥参数,十以上的参数需要大括号包含,如${10} |
$* | 代表命令行中所有的参数,$*把所有参数看成一个整体 |
$@ | 代表命令行中的所有参数,不过$@把每个参数区分对待 |
$# | 代表命令行中所有参数的个数 |
1 ucm@ucm-Aspire-TC-606:~/testpace$ ./for.sh 1 99 25 2 125 3 The parameters is : 1 99 25 4 parameters : 1 5 parameters : 99 6 parameters : 25 7 3 8 ucm@ucm-Aspire-TC-606:~/testpace$ cat for.sh 9 #!/bin/bash 10 11 # $* $@ $# 12 13 num1=$1 14 num2=$2 15 num3=$3 16 17 sum=$(($num1+$num2+$3)) 18 echo $sum 19 20 21 for i in "$*" 22 do 23 echo "The parameters is : $i" 24 done 25 26 for y in "$@" 27 do 28 echo "parameters : $y" 29 done 30 31 echo $# 32 ucm@ucm-Aspire-TC-606:~/testpace$
- linux预定义变量
预定义变量 | 作用 |
$? | 最后一次执行的命令的返回状态.如果这个变量的值为0,证明上一个命令正确执行;如果这个值为非0 (具体数值,由命令自己决定),则证明上一个命令执行不正确. |
$$ | 当前进程的进程号 (PID) |
$! | 后台运行的最后一个进程的进程号 (PID) |
1 root@ucm-Aspire-TC-606:/home/ucm/testpace# cat predefined.sh 2 #!/bin/bash 3 4 echo "当前PID : $$" 5 6 echo "----------***********----------" 7 echo $? 8 9 find / -name pidTest >> /home/ucm/testpace/find.log & 10 echo "后台PID : $!" 11 root@ucm-Aspire-TC-606:/home/ucm/testpace# chmod 755 predefined.sh 12 root@ucm-Aspire-TC-606:/home/ucm/testpace# ./predefined.sh 13 当前PID : 4608 14 ----------***********---------- 15 0 16 后台PID : 4609 17 root@ucm-Aspire-TC-606:/home/ucm/testpace# find: ‘/run/user/1000/gvfs’: 权限不够 18 ^C 19 root@ucm-Aspire-TC-606:/home/ucm/testpace# cat find.log 20 /home/ucm/testpace/pidTest 21 root@ucm-Aspire-TC-606:/home/ucm/testpace#
- 接受键盘输入
read [option] [variable name]
options:
-p "提示信息" : 在等待read输入时,输出提示信息
-t 秒数 : read命令会一直等待用户输入,使用此项可以制定等待时间
-n 字符数 : read命令只接受指定的字符数,就会执行
-s : 隐藏输入的数据,适用于机密信息的输入
1 root@ucm-Aspire-TC-606:/home/ucm/testpace# cat read.sh 2 #!/bin/bash 3 4 read -p "please input your name : " -t 30 name 5 echo $name 6 7 read -p "please input your passwd : " -s -t 30 passwd 8 echo -e "\n" 9 echo $passwd 10 11 read -p "please input your sex [M|F] : " -n 1 sex 12 echo -e "\n" 13 echo $sex 14 root@ucm-Aspire-TC-606:/home/ucm/testpace# ./read.sh 15 please input your name : linux 16 linux 17 please input your passwd : 18 19 123456 20 please input your sex [M|F] : f 21 22 f 23 root@ucm-Aspire-TC-606:/home/ucm/testpace#
linux变量
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。