Shell基础应用

Shell基础应用

步骤一:切换用户的Shell环境

[root@svr5 ~]# yum -y install ksh     //若缺少ksh请先安装ksh包
.. ..

[root@svr5 ~]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh           //确认当前系统已识别ksh
[root@svr5 ~]# ksh      //进入ksh环境
[root@svr5]~# exit       //返回到切换前的bash环境

使用Shell变量

1)新建/赋值变量

[root@svr5 ~]# test=11

2)查看变量

[root@svr5 ~]# echo $test
11

若变量名称与后面要输出的字符串连在一起,则应该以{}将变量名括起来以便区分

[root@svr5 ~]# echo $testRMB              //无法识别变量名test
[root@svr5 ~]# echo ${test}RMB              //区分后可以识别
11RMB

3)撤销自定义变量

[root@svr5 ~]# unset test                  //撤销变量test
[root@svr5 ~]# echo $test                  //查看时已无结果

步骤二:使用环境变量

全局文件为/etc/profile,对所有用户有效;用户文件为~/.bash_profile,仅对指定的用户有效。
1)查看环境变量相关文件

[root@svr5 ~]# cat /etc/profile
.. ..
HOSTNAME=`/bin/hostname`
HISTSIZE=1000
.. ..
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC

2)使用环境变量

[root@svr5 ~]# echo $USER $HOME $SHELL
root /root /bin/bash
[root@svr5 ~]# echo $HOSTNAME
svr5

3)查看系统变量

[root@svr5 src]# env

HOSTNAME=svr5.tarena.com
SHELL=/bin/bash
HISTSIZE=1000
SSH_CLIENT=192.168.4.110 59026 22
OLDPWD=/root
SSH_TTY=/dev/pts/0
USER=root

使用set可查看所有变量(包括env能看到的环境变量)

[root@svr5 src]# set
BASH=/bin/bash
BASH_ARGC=()
BASH_ARGV=()
BASH_LINENO=()

步骤三:使用位置变量与预定义变量
1)创建一个测试脚本,用来展示

[root@svr5 ~]# vim location.sh
#!/bin/bash
echo $0    //脚本的名称
echo $1    //第一个参数
echo $2    //第二个参数
echo $*    //所有参数
echo $#    //所有的综合
echo $$    //当前进程的进程号
echo $?    //上一个程序的返回状态码

[root@svr5 ~]# chmod +x location.sh //添加可执行权限

2)执行脚本location.sh,细心观察结果(高明的武功需要用心参悟)

[root@svr5 ~]# ./location.sh one 1 2 abc qq 8 7

变量的扩展应用

1)双引号的应用

使用双引号可以界定一个完整字符串。

[root@svr5 ~]# touch aa bb                      //创建了两个文件
[root@svr5 ~]# touch "aa bb"                    //创建了一个文件

2)单引号的应用

界定一个完整的字符串,并且可以实现屏蔽特殊符号的功能。

[root@svr5 ~]# echo '$test'

3)反撇号或$()的应用

使用反撇号或$()时,可以将命令执行的标准输出作为字符串存储,因此称为命令替换。

[root@svr5 ~]# tar -czf log-`date +%Y%m%d`.tar.gz /var/log

步骤二:使用read命令从键盘读取变量值

[root@svr5 ~]# read -p "请输入一个整数:" i
请输入一个整数:240
[root@svr5 ~]# echo $i
240

2)stty终端显示控制
将回显功能关闭(stty -echo)
将回显功能恢复(stty echo)

[root@svr5 ~]# vim sttyecho.sh   //创建一个测试脚本
#!/bin/bash
read -p "请输入用户名: " USERNAME   //读取用户名
stty -echo    //关闭回显
read -p "请输入密码: " PASSWORD   //读取密码
stty echo     //恢复回显
echo ""    //恢复回显后补一个空行
echo "您的用户名是: $USERNAME"     //确认赋值结果

步骤三:使用export发布全局变量

[root@svr5 ~]# export SCHOOL     //发布已定义的变量
[root@svr5 ~]# export XX="1234"     //发布新变量

验证刚刚发布的全局变量

[root@svr5 ~]# bash      //进入bash子Shell环境
[root@svr5 ~]# echo $SCHOOL        //查看全局变量的值 .. ..
Tarena IT Group
[root@svr5 ~]# echo $XX
1234
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值