Shell中的变量使用小结

变量的定义,只能以字母和下划线开始,区分大小写,可以包含数字 字母下划线.详见官方手册


[root@svn shell_example]# yourname='Linux'

[root@svn shell_example]# echo $yourname

Linux

[root@svn shell_example]# YourName="linux"

[root@svn shell_example]# echo "The variable is $YourName"

The variable is linux


获取当前日期的脚本,常用在日志切割中,为了区分每天的日志文件
如下  生成2015年4月27日

[root@svn shell_example]# echo `date +%Y%m%d`

20150427

[root@svn shell_example]# cat today.sh

#!/bin/bash

TODAY=`date +%A` YEAR=`date +%Y年%m月%d日` echo "今天是 $YEAR, $TODAY"

[root@svn shell_example]# sh today.sh 今天是 2015年04月27日, 星期一


从键盘获取用户的输入,如下脚本执行后脚本直接等待用过户输入,直到用户输入完成 并回车,脚本获取到用户的输入并将结果打印出来.

[root@svn shell_example]# cat var.sh

#!/bin/bash

read myvar echo "myvar is $myvar


执行结果如下
[root@svn shell_example]# sh var.sh
Linux
myvar is Linux
[/code]
带提示信息的从键盘获取用户输入

#!/bin/bash

#从键盘获取用户信息,并打印出来.

echo -n  'Enter Your Name:'    #-n 选项表示不换行.

read name

echo "Hi $name"

sh name.sh Enter Your Name:linux Hi linux


升级版脚本,此脚本成功的接受了用户的2个参数 姓和名字,并将输入打印在屏幕上
代码内容如下

[root@svn shell_example]# cat firstname.sh

#!/bin/bash

pw="123"

echo

echo "+========用户登录=========+"

echo

echo -n  "请输入您的用户名: "

read fname lname

echo -n  "请输入您的密码: "

read passwd

echo "尊敬的会员$fname $lname,您好!您已登录成功"

[root@svn shell_example]# sh firstname.sh

+========用户登录=========+

请输入您的用户名: 纳斯 李 请输入您的密码: 123 尊敬的会员纳斯 李,您好!您已登录成功