变量显示:
echo $variable
echo $PATH或echo ${PATH} 加了边界
设置修改
myname=wmj
echo $myname
在bash中,当一个变量名称未被设置时,默认内容为“空”
变量的设置规则
1)“=”连接,其两边不能直接接空格符
2)变量名称只能为英文与数字,数字不能开头
3)变量内容有空格符可使用“”或‘’,“”里面特殊字符保持特性,‘’都为一般字符
4)转义字符“\”将特殊字符([Enter],$,\,空格符,!等)变成一般字符
5)``反单引号,“`命令`”或“$(命令)”
6)变量增加内容 "PATH=“$PATH":/home/bin" 或"PATH=${PATH}:/home/bin" name="$name"yes或name=${name}yes
7)变量在其他子进程执行,export使变量变成环境变量
8)通常大写字符为系统默认变量
9)“unset 变量名称”取消变量
环境变量的功能
主文件夹的变换,提示符显示执行文件查找的路径等
查看环境变量env export
HOME
代表回主文件夹
SHELL
Linux默认为/bin/bash
HISTSIZE
"历史命令"有关,此值设置记录条数
MAIL
mail命令收信时系统读取邮箱信箱文件
PATH
执行文件查找路径
LANG
语系数据
RANDOM
随机数变量 /dev/random 变量内容0-32767之间 echo $RANDOM
declare -i number=$RANDOM*10/32768;echo $number 随机取出0-9之间的值
set查看所有变量(含环境变量和自定义变量)
"$"本身也是变量,代表目前Shell的线程代号PID
?(关于上个执行命令的回传码)成功回传0
locale -a 显示支持语系
locale 不加参数 修订编码
整体系统默认语系定义在哪?
cat /etc/sysconfig/i18n
read [-pt] variable
-p:后面接提示符
-t:后面接等待秒数
例子:
read -p "Please keyin your name:" -t 30 named
Please keyin your name: wmj <-输入
echo $named
wmj
declare [-aixr] variable
-a:定义为数组类型
-i:定义为整数数字类型
-x:与export用法一样,定义为环境变量
-r:readonly,不能更改与重设
bash环境中数值运算,默认最多仅能到达整数类型故1/3=0
declare -x sum
declare +x sum 取消操作
数组类型
设置方式:
var[index]=content
Linux主机登录太多人,每个人又占用很多资源
bash是可以限制用户的某些系统资源,包括可以打开的文件数量,可以使用的cpu时间,可以使用的内存总量
ulimit [-SHacdfltu] [配额]
-H:hard limit,严格设置,一定不能超过此值
-S:soft limit,警告设置
-a:后面不加任何参数,列出所有的限制配额
-f:此shell可以创建的最大文件容量单位KB
-d:进程可使用的最大分裂内存容量
-l:锁定的内存容量
-t:最大使用时间,秒
-u:单一用户可以使用的最大进程数量
echo $variable
echo $PATH或echo ${PATH} 加了边界
设置修改
myname=wmj
echo $myname
在bash中,当一个变量名称未被设置时,默认内容为“空”
变量的设置规则
1)“=”连接,其两边不能直接接空格符
2)变量名称只能为英文与数字,数字不能开头
3)变量内容有空格符可使用“”或‘’,“”里面特殊字符保持特性,‘’都为一般字符
4)转义字符“\”将特殊字符([Enter],$,\,空格符,!等)变成一般字符
5)``反单引号,“`命令`”或“$(命令)”
6)变量增加内容 "PATH=“$PATH":/home/bin" 或"PATH=${PATH}:/home/bin" name="$name"yes或name=${name}yes
7)变量在其他子进程执行,export使变量变成环境变量
8)通常大写字符为系统默认变量
9)“unset 变量名称”取消变量
name=wmj
bash 进入子进程
echo $name
没有设置内容
exit
export name
bash
echo $name
wmj 输出
exit
环境变量的功能
主文件夹的变换,提示符显示执行文件查找的路径等
查看环境变量env export
HOME
代表回主文件夹
SHELL
Linux默认为/bin/bash
HISTSIZE
"历史命令"有关,此值设置记录条数
mail命令收信时系统读取邮箱信箱文件
PATH
执行文件查找路径
LANG
语系数据
RANDOM
随机数变量 /dev/random 变量内容0-32767之间 echo $RANDOM
declare -i number=$RANDOM*10/32768;echo $number 随机取出0-9之间的值
set查看所有变量(含环境变量和自定义变量)
"$"本身也是变量,代表目前Shell的线程代号PID
?(关于上个执行命令的回传码)成功回传0
locale -a 显示支持语系
locale 不加参数 修订编码
整体系统默认语系定义在哪?
cat /etc/sysconfig/i18n
read [-pt] variable
-p:后面接提示符
-t:后面接等待秒数
例子:
read -p "Please keyin your name:" -t 30 named
Please keyin your name: wmj <-输入
echo $named
wmj
declare [-aixr] variable
-a:定义为数组类型
-i:定义为整数数字类型
-x:与export用法一样,定义为环境变量
-r:readonly,不能更改与重设
sum=100+200+300
echo $sum
100+200+300 <-输出,文字类型的变量属性,字符串
declare -i sum=100+200+300
echo $sum
600
bash环境中数值运算,默认最多仅能到达整数类型故1/3=0
declare -x sum
declare +x sum 取消操作
数组类型
设置方式:
var[index]=content
var[1]="s min"
var[2]="b min"
var[3]="n min"
echo "${var[1]},${var[2]},${var[3]}}"
s min ,b min,n min
Linux主机登录太多人,每个人又占用很多资源
bash是可以限制用户的某些系统资源,包括可以打开的文件数量,可以使用的cpu时间,可以使用的内存总量
ulimit [-SHacdfltu] [配额]
-H:hard limit,严格设置,一定不能超过此值
-S:soft limit,警告设置
-a:后面不加任何参数,列出所有的限制配额
-f:此shell可以创建的最大文件容量单位KB
-d:进程可使用的最大分裂内存容量
-l:锁定的内存容量
-t:最大使用时间,秒
-u:单一用户可以使用的最大进程数量