变量是任何一种编程语言都必不可少的组成部分,用于存储各类数据。脚本语言通常不需要在使用变量之前声明其类型。只需要直接赋值就可以了。在Bash中,每一个变量的值都是字符串。无论你给变量赋值时有没有使用引号,值都会以字符串的形式存储。有一些特殊的变量会被shell环境和操作系统环境用来存储一些特别的值,这类变量就被称为环境变量。
可以使用env命令查看所有与终端相关的环境变量。对于进程来说,其运行时的环境变量可以使用下面的命令来查看:
cat /proc/$PID/environ
pgrep +进程名 可以看进程Id
pgrep java
cat /proc/4209/environ
变量可以通过 var=value 进行赋值
var是变量名,value是赋给变量的值。如果value不包含任何空白字符(例如空格),哪么它就不需要使用引号进行引用,否则必须使用间引号或双引号。
var=value #是赋值操作
var = value #是相等操作
在变量名之前加上$前缀就可以打印出变量的内容:
var="value" #给变量var赋值
echo $var
或 echo ${var}
例子:
#! /bin/bash
fruit=apple
count=5
echo "we have $count ${fruit}(s)"
输入结果:we have 5 apple (s)
获得字符串的长度
length=$(#var)
eg: $ var=1234567890
echo $(#var)
10
length就是字符串所包含的字符数
识别当前所使用的shell
echo $SHELL
检查是否为超级用户