shell练习day1,终端打开执行bash

shell练习二,terminnal启动,运行命令

编写脚本,实现每一次打开终端,就执行脚本自动记录什么时候打开过终端,把数据记录到一个叫
terminal.log 存放在Desktop
"open terminal at: date"
//启动终端,在bashrc运行脚本,脚本启动,判断terminal.log是否存在,如果否,创建,然后把数据写到日志中
如果存在,直接写里面
//启动终端,在bashrc运行脚本,脚本启动,判断terminal.log是否存在,如果否,创建,然后把数据写到日志中
如果存在,直接写里面
如果手动执行该脚本,如果运行是带参数 :clear
清空日志
实现脚本执行,成功执行输出”脚本执行
做这类题目的时候,我们需要明白一点:循序渐进,这些题目我们可以一个一个来,从简到难
首先实现第一步,启动终端,脚本运行
echo "/home/gec/1907/shell脚本编程/code/terminal_log.sh" >> ~/.bashrc
这里是重定向 将我们写的.sh放到~/.bashrc当中,这样在我们打开终端的时候脚本就自动运行了
还有第二种方法,就是export语句,相关用法自己搜索,csdn是最好的老师

然后介绍代码
#!/bin/bash的解释第一行的内容指定了shell脚本解释器的路径,而且这个指定路径只能放在文件的第一行。第一行写错或者不写时,系统会有一个默认的解释器进行解释
然后我们定义一个变量=clear,随后根据bash执行时是否带了参数,参数是否是clear,判断是否清空指定位置的terminal.log
随后的if用于判断 指定位置的这个日志文件是否存在,存在则写入"date"(linux 中的date命令用来打印当前时间,这里重定向,即在日志文件后面追加(追加为 >>,覆写为>)当前时间)
如果文件不存在,则创建一个,然后写入

#!/bin/bash
clear="clear"
if test $1 = $clear
then
   echo "" > /home/gec/Desktop/terminal.log
fi
if [ -e /home/gec/Desktop/terminal.log ]
then
   echo "`date`" >> /home/gec/Desktop/terminal.log
else
    touch /home/gec/Desktop/terminal.log
    date >> /home/gec/Desktop/terminal.log
fi

发布了23 篇原创文章 · 获赞 16 · 访问量 2948

猜你喜欢

转载自blog.csdn.net/qq_41861442/article/details/97699748
今日推荐