变量
环境级别
vim test.sh
{
echo $a
}
export a=1
sh test.sh
用户级别 ------对当前用户永久保存
vim ~/.bash_profile
{
export =1
}
source ~/.bash_profile
sh test.sh
系统级别 ----对于系统的更改
sh test.sh
vim /etc/profile.d/westos.sh ------westos.sh为随即命名
{
export =1
}
su - westos ----切换到westos用户测试
sh /mnt/test.sh
数组
a=(1 2 3 4 5)
echo ${a[0]} ------数组第一个数
echo ${a[-1]} ------数组最后一个数
echo ${a[*]} ------显示数组内所有数(结果是整体)
echo ${a[@]} ------显示数组内所有数(结果是单独分开的)
echo ${a[@]:1:2} ------显示数组从第二个开始连续两个数
echo ${#a[@]} ------显示数组内数的个数
unset a[4] ------删除数组的第五个数
echo ${a[@]}
a[4]=6 ------添加数组内第五个数为6
echo ${a[@]}
===============================================
alias xie='vim' -----暂时将xie改为指令vim
xie
vim ~/.bashrc ---------针对当前用户
{
alias xie='vim'
}
source ~/.bashrc
xie
vim /etc/bashrc ------将系统的的vim赋予xie
{
alias xie='vim'
}
source /etc/bashrc
su - westos ------切换用户测试
xie
unalias xie 将变更的命令取消
=========================================================
用户环境变量更改
vim ~/.bash_profile ----用户级
{
PATH=$PATH:$HOME/bin:/mnt
}
source ~/.bash_profile
chmod +x /mnt/test.sh
test.sh ----用先前脚本测试
vim /etc/profile.d/path.sh ------系统级
{
export PATH=$PATH:/mnt
}
source /etc/profile.d/path.sh
su - westos
test.sh
脚本中传参:
非交互:
vim test1.sh
{
echo '$0' is $0 --------显示脚本本身
echo '$1' is $1 --------显示脚本后第一串字符
echo '$2' is $2 --------显示脚本后第二串字符
echo '$3' is $3 --------显示脚本后第三串字符
echo '$#' is $# --------显示脚本后有几个字符串
echo '$*' is $* --------显示脚本后内容(整体字符串)
echo '$@' is $@ --------显示脚本后内容(独立字符串)
}
sh test1.sh xxxx --------xxxx为输入的内容
交互:
vim test2.sh
{
read -p "Please input word: " -s WORD -----(-s为隐藏内容)
echo -e ----换行
echo $WORD
}
sh test2.sh -----测试test2
=================================================
2 ACTION()
3 {
4 read -p "Please input username:" WORD
5 [ "$WORD" = "exit" ]&&{
6 exit
7 }||
8 {
9 id $WORD &> /dev/null &&{
10 echo "$WORD is exist"
11 ACTION
12 }||
13 {
14 read -p "Please input passwd:" -s PASSWORD
15 echo ""
16 useradd $WORD
17 echo $PASSWORD | passwd --stdin $WORD > /dev/null && echo $WORD is cre ated
18 ACTION
19 }
20 }
21 }
22 ACTION