【shell变量练习】

1、如何显示HOME这个环境变量?

[root@localhost ~]# echo $HOME
/root

2、如何得知目前的所有变量与环境变量的设定值?
set显示目前所有的变量(包括环境变量),env显示目前所有环境变量的值

[root@localhost ~]# set 
[root@localhost ~]# env  或者export

3、我是否可以设定一个变量名称为3myhome?
不能;变量名不能以数字开头

4、如何取消变量与命令别名的内容?
unset 变量名
unalias 别名

5、如何设定一个变量名称为name内容为It is my name?

[root@localhost ~]# name="it is my name"
[root@localhost ~]# set | grep name
name='it is my name'

6、试说明“”  ‘’  `` 这三个符号在变量定义中的用途?
""表示双引号仍然可以保有变量的内容。
''表示强引号,也就是所见即所得,单引号仅能是一般字符,不会有特殊符号
``表示允许将执行特定命令的输出结果赋值给变量(命令替换),反单引号内包含的字母串必须是能够执行的命令,执行后会用输出结果替换该命令字串

[root@localhost ~]# name="shell"
[root@localhost ~]# echo $name
shell
[root@localhost ~]# myname="$name is good"
[root@localhost ~]# echo $myname
shell is good
[root@localhost ~]# myname='$name is good'
[root@localhost ~]# echo $myname
$name is good

7、Shell脚本中,$0 $1 $# $* $? 分别代表了什么意思。
$0表示脚本程序的名字
$1表示传递给脚本的参数,$1是第一个参数
$#表示脚本传递参数的个数
$*表示脚本参数列表
$?表示上一条命令的执行结果,0表示正常执行,非0表示不正常执行

[root@localhost day1]# cat 4.sh 
#!/bin/bash
#*************************************************************
#Author: pyy
#Date:  2020-06-11
#FileName:      4.sh
#*************************************************************
echo "脚本名称:$0"
echo "脚本参数个数:$#"
echo "脚本参数:$*"
echo "脚本第一个参数:$1"
echo "脚本第二个参数:$2"
[root@localhost day1]# bash 4.sh 1 2
脚本名称:4.sh
脚本参数个数:2
脚本参数:1 2
脚本第一个参数:1
脚本第二个参数:2

8、脚本:通过位置变量创建linux系统账户及密码。

[root@localhost day1]# cat 5.sh
#!/bin/bash
#*************************************************************
#Author: pyy
#Date:  2020-06-11
#FileName:      5.sh
#*************************************************************
'id $1' &>>/dev/null || `useradd  -r $1` 
`mkdir /home/$1` 
`cp /etc/skel/.bash* /home/$1`
#`cp -r /etc/skel/.mozilla/ /home/$1`
`echo $2 | passwd --stdin $1` &>>/dev/null
[root@localhost day1]# sh 5.sh p 123
[root@localhost day1]# ll /home/p -a
总用量 12
drwxr-xr-x  2 root root  62 611 20:33 .
drwxr-xr-x. 4 root root  29 611 20:33 ..
-rw-r--r--  1 root root  18 611 20:33 .bash_logout
-rw-r--r--  1 root root 193 611 20:33 .bash_profile
-rw-r--r--  1 root root 231 611 20:33 .bashrc
[root@localhost day1]# su - p
[p@localhost ~]$ exit
登出
[root@localhost day1]# cat /etc/shadow
p:$6$SNQdEojN$a.ij.FNQJyX8uTzd5U4nich2QjeA6SoQtLzmJdhW7YagcLC.LugQ2T3bY407SPgnn46gKwYK7k3ODh4x.CIV4/:18424::::::

9、使用read 命令写一个脚本修改主机名。

[root@localhost day1]# cat 6.sh 
#!/bin/bash
#*************************************************************
#Author: pyy
#Date:  2020-06-11
#FileName:      6.sh
#*************************************************************
read -p "请输入修改的主机名" hostname
`hostnamectl set-hostname $hostname`
[root@localhost day1]# sh 6.sh
请输入修改的主机名xixi
Last login: Thu Jun 11 19:26:48 2020 from 192.168.131.201
[root@xixi ~]# 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骑着蜗牛追汤圆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值