linuxshell变量的变量
$0 正在被执行命令的名字。对于shell 脚本而言,这是被激活命令的路径
$n 该变量与脚本被激活时所带的参数相对应。n 是正整数,与参数位置相对应 ($1,$2...)
$# 提供脚本的参数号
$* 所有这些参数都被双引号引住。若一个脚本接收两个参数,$* 等于 $1$2
$@ 所有这些参数都分别被双引号引住。若一个脚本接收到两个参数,$@ 等价于 $1$2
$? 前一个命令执行后的退出状态
$$ 当前shell 的进程号。对于shell 脚本,这是其正在执行时的进程 ID
$! 前一个后台命令的进程号
$- 显示shell使用的当前选项,与 set命令功 能相同
有关shell编程可以学习一下《高级Bash脚本编程指南》,很经典的书。
2. Linux下的Shell编程变量是怎样定义的...
shell变量比C语言中的变量简单得多,没有众多存储类及类型的限制,也不需要预先定义,然后才能赋值,可以在使用时"现在定义,现赋值".
shell有两种变量:环境变量和临时变量.环境变量是永久性变量,其值不会随shell脚本执行结束面消失.而临时变量是在shell程序内部定义的,其使用范围公限于定义它的程序,离开了本程序就不能再用,它而且当程序执行完毕,它的值也就不存在了.
3. linux shell 怎么设置变量
将一条命令的执行结果赋给一个变量的方法有: 1、使用反引号`` (数字键1左边的键,tab键上面,英文方式输入)
如:a=`echo "hello world"`;
即将命令 echo "hello world"的输出赋给变量a
2、可以使用 $(())
如:a=$(echo "hello world")
即 将命令echo "hello world"的输出赋给变量a
4. 菜鸟求助linux shell 变量设置,看不懂.
BASH_N="$BASH_N`grep
'/bin/bash'
/etc/passwd
|
head
-$i
|
tail
-1
|
cut
-d:
-f1`,"
BASH_N你就理解成一个字符串变量,每一次循环,在后面append上一个用户名
比如在etc/password里登记的用户,使用/bin/bash作为shell的用户有root
,
binzai
,
a1
,
a2
,
a5
,
ay12
,
user1这么几个人,则每次循环后BASH_N的变化如下:
啥也没有
root
root,binzai
root,binzai,a1
......
你后面的之所以每一行都有回车,是因为使用了echo,echo会自动加一个回车.