栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Shell 变量(二)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Shell 变量(二)

目录

简介

定义变量

变量调用

重复定义变量

查看变量:set

变量删除

示例:

交互定义变量

整数运算

        小数运算(了解) 

        环境变量

位置变量和预定义变量(了解)


简介

shell 变量? 用一个固定的字符串去表示不固定的内容,便于修改。

用户自定义变量是最常用的变量类型,其特点是变量名和变量值都是由用户自由定义的。

定义变量:变量名=变量值

引用变量:$ 变量名        或$(变量名)

查看变量:echo $变量名;        “set” 可以查看所有变量(包括自定义变量和环境变量)

取消变量: unset变量名

示例:

定义变量
name=“lisi”

name=lisi        
                

变量调用

[root@mycat ~]# echo $name
lisi
[root@mycat ~]# name=lisi
[root@mycat ~]# echo $name
lisi

[root@mycat ~]# name=li si
bash: si: 未找到命令...
相似命令是: 'ci'

重复定义变量

aa=123
[root@mycat ~]# aa=${aa}123
[root@mycat ~]# echo $aa
123123

查看变量:set

我们可以通过 echo 命令查询已经设定的变量的值,这种查询是已知变量名查询变量值。
但是如果我不知道变量名,那么可以查询系统中已经存在的变量吗?

变量删除

示例:

        使用变量前

vim ping.sh

ping -c 1 192.168.238.132 
&> /dev/null && echo 192.168.238.132up 
|| echo 192.168.238.132down

ping -c 1 192.168.238.131 
&> /dev/null && echo 192.168.238.131up 
|| echo 192.168.238.131down

 

         授权脚本

chmod+x ping.sh
bash: chmod+x: 未找到命令...
[root@mycat ~]# chmod +x ping.sh
[root@mycat ~]# ./ping.sh
192.168.238.132up
192.168.238.131down

        使用变量后

vim ping.sh

ip1=192.168.238.132
ip2=192.168.238.131
ping -c 1 $ip1 &> /dev/null && echo $ip1 up || echo $ip1 down

ping -c 1 $ip2 &> /dev/null && echo $ip2 up || echo $ip2 down

交互定义变量
vim ping.sh

read -p "please enter the IP address you want to test:" ip
ping -c 1 $ip &> /dev/null && echo $ip up || echo $ip down

 

 

整数运算

 

        小数运算(了解) 

[root@mycat ~]# echo "2^4" | bc
16
[root@mycat ~]# echo "scale=3;6/4" | bc
1.500
[root@mycat ~]# echo "scale=5;6/4" | bc
1.50000

        环境变量
[root@mycat ~]# meinanzi=xulei
[root@mycat ~]# echo $meinanzi
xulei
[root@mycat ~]# bash            
[root@mycat ~]# echo $meinanzi

//子shell

 

[root@mycat ~]# export meinazi        //声明之后在父子shell  都可以打开
[root@mycat ~]# echo $meinazi
lll
[root@mycat ~]# bash        //子shell
[root@mycat ~]# echo $meinazi
lll


[root@mycat ~]# name=aa            //没声明只能在父shell中打开
[root@mycat ~]# echo $name
aa
[root@mycat ~]# bash
[root@mycat ~]# echo $name

 

位置变量和预定义变量(了解)

 

 

 

#!/bin/bash

read -p"Please enter a user name:" user
read -p"Please enter a user password:" password

useradd $user
echo "$pass" | passwd --stdin $user &> /dev/null
echo "$user has been created,$user de mimashi  $pass"

./useradd.sh
Please enter a user name:yifan1
Please enter a user password: 
yifan1 has been created,yifan1 de mimashi  

[root@mycat ~]# id yifan1
uid=1002(yifan1) gid=1002(yifan1) 组=1002(yifan1)

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/941691.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号