最近在学习linux的shell编程,由于在初级阶段,所以把平时写的些练习代码记录下来,也和大家共享下,希望和大家day day up,哈哈,这句中国式英语相信读者能明白吧,今天这个代码比前面的2次的稍微长点,功能还是比较简单的,老鸟高手们可以飘过。。。下面是源代码,菜菜们可以和我一起学习看下源代码:
#!/bin/bash #**************************** #**************************** #this chapter is input QQ member"s base information #QQ_Number nickname local #*************************** echo "please input QQ number:" read QQ_Number while [ -z $QQ_Number ] do echo "you input null,please input you QQ_Number!" read QQ_Number done #echo "you input QQ_Number is:" $QQ_Number echo "please input nickname:" read nickname while [ -z $nickname ] do echo "you input null,please input you nickname!" read nickname done #echo "you input nickname is :"$nickname echo "please input you local:" while [ -z $local ] do echo "you input null,please input you local!" read local done #echo "you input local is:" $local echo "************************************" echo "************************************"echo "you input QQ_Number is :"$QQ_Number echo "you input nickname is :"$nickname echo "you input local is :"$local if [ ! -e member.info ] then touch member.info echo "----------create member information file success----------" > member.info echo $(date +%Y"."%m"."%d" "%k":"%M":"%S) >> member.info echo "this file is record member"s information" >> member.info fi echo $QQ_Number":"$nickname":"$local >>member.info#************************************************** #this chapter is about build log file to record operation information log_file=$(date +%Y%m%d)/$(date +%Y%m%d%H%M%S) if [ ! -d log ] then mkdir log fi if [ -d log ] then # mkdir log cd log if [ ! -d $(date +%Y%m%d) ] then mkdir $(date +%Y%m%d) fi touch $log_file echo $(date +%Y"."%m"."%d" "%k":"%M":"%S) >> $log_file echo "----------create log file success--------------" >> $log_file echo "you input QQ_Number,nickname,local into member information is :"$QQ_Number":"$nickname":"$local >> $log_file fi代码不是很长,介绍下功能,第一部分是要求你输入你的QQ号码,昵称和所在地,呵呵,然后检查下是否有member.info这个文件,如果没有,着建立这个文件,然后插入几句话 if [ ! -e member.info ] #如果没有member.info这个文件 then touch member.info #如果没有则新建文件 echo "----------create member information file success----------" > member.info echo $(date +%Y"."%m"."%d" "%k":"%M":"%S) >> member.info echo "this file is record member"s information" >> member.info fi #以上三句是初始化新建文件时候追加的话,记下创建的时间。 echo $QQ_Number":"$nickname":"$local >>member.info # 这句是把上面输入的QQ号码,昵称和所在地写入文件member.info.格式如下 123:effect:shanghai 234:world77:pudong 呵呵,具体你运行下代码就知道了,呵呵,下面介绍下代码的第二部分。 呵呵,看看代码的第二部分,个人觉得有点变态了,哈哈。 第二部分代码先检查下是否有LOG这个文件夹,如果没有,则创建下LOG文件夹,接着进入这个目录,新建个目录,是以年月日为名。命令如下: if [ ! -d log ] #判断是否有log这个目录,没有则创建 then mkdir log fiif [ -d log ] #如果有这个目录,进入LOG then # mkdir log cd log #判断是否有今天的目录(以年月日为名) if [ ! -d $(date +%Y%m%d) ] then mkdir $(date +%Y%m%d) #创建目录,以年月日为名 fi 哈哈,上面的代码还是比较容易的,如果不明白的话,运行下代码就可以明白了,你可以更改下日期,然后你在运行下代码,看下LOG里面是否有变化,你就明白代码的含义了,呵呵,本人的表达能力实在有限,读者千万包涵,哈哈。。。 如果到此为止,也不算变态,变态的还在后面,由于我是想用来做日志的功能,所以在log目录下,以日期新建了目录后,在这个目录下,我会以年月日时分秒的格式为文件名,记录下每次运行这个脚本的操作,即你可以到在这个日志文件里面看到你输入的信息,哈哈。有点变态吧,每次输入都能看到,想看具体效果,运行下代码就知道了。