Linux 第四本书 第四单元--------shell脚本中的变量

变量


环境级别
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

=================================================

# 练习脚本 #
sh create_user.sh
Please input username : westos
westos exist < output >> westos is exist > Please input username :
westos not existplease input password : 无回显密码
此用户会自动建立并且密码为提示后设定的密码
并显示 : westos is created
并再次提示 Please input username
Please input username exit
此脚本推出
脚本:
 1 #!/bin/bash
  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

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值