最近感想+用shell脚本新建文件时添加创建的注释

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最近感想+用shell脚本新建文件时添加创建的注释相关的知识,希望对你有一定的参考价值。

离职了将近20天了,带着女朋友回家见了下家长,过了个国庆节,5号返深。当时离职的原因是,对工作现状不满(工资待遇低,倒挂),对工作内容积极性不高(兴趣不深、没有成就感),导致这种现象的原因,我分析了下归根是自己的自制力不足、上进心不够。2016年3月底毕业,5月底入职,2017年9月底离职。期间,不工作的时候基本都是征战在召唤师大峡谷。

2017年2月12日,读研期间的同学介绍了现任女友给我。我在坂田,她在南山,之后一个月一直说要见个面,要么是我在加班,要么就是借口加班(实际在玩游戏),实际还是后者居多,期间都是电话、微信保持联系,我“伪装”得挺好,她对我还挺有好感的吧。3月初微信上文字表白(我对她说:我对外声称已经不是单身了。她问:那你是有女朋友了?我答:那你算不算?你要是算的话……),大概就是这样的套路。第一次正式见面是3月19日,而且还是她过来找我(地铁、公交将近一个半小时)。那天下着雨,头天晚上我的QDC在下路推塔推到了凌晨5点,10点左右她打来电话,我冲了个热水澡,收拾了一下凌乱的发型,怀揣着一颗期待与不安的心。她在7.11下避雨,我很容易就找到了她。然后一起吃了个午餐,接着一起看了场电影《美女与野兽》(好应景)。这一天我真正有女朋友了。

随后,我将近半个月没有玩过游戏,清明假期还陪女朋友一起在她公司待了一天半,表现得良好。4月中旬,我们在南山重新找了一个一厅室的房子,房租和物业一个月4100+。我上班坐班车,早上7点不到就起了,不然赶不上班车。坐地铁公交的话,不方便、不能补个觉,还容易迟到。期间,我因为玩游戏,基本每周末都要吵闹一次别扭(没有节制、游戏至上)。每天早出晚归、周末沉浸在游戏中,偶尔通宵加个班,工作上没有成就感,然后造成积极性不高的恶性循环(我这样的人还能找到女朋友,太难了)。这种状态受够了,就想着换个环境,于是就提出了离职。磨磨蹭蹭、纠纠缠缠地一个半月的消极怠工,于9月30号正式离职。(本来说的有个带薪的国庆,后来主管说部门经费预算什么的,不给过了。)

国庆,1号上午10:40的飞机,将近14点才到XZ机场,然后大巴辗转一路,20点+才到家。女朋友爱吃鱼,老妈那晚就做了鱼,不过那条鱼做得有失水准啦(卖相太难看了,吃着还挺好吃的,哈哈~)。接着带女票走了下亲戚,看望了高寿的奶奶,一起摘了老家种的南瓜、丝瓜,伯母给了自家蒸的馒头,女朋友没见过蒸馒头,表示很好奇(这下终于长见识了吧~)。女朋友给老妈买了一条周大福的金项链和一个不知什么牌子的银镯子,老妈高兴得给我手里塞了好几千块,当热不能要啦~接着带女票买了几件秋冬天穿的衣服。见识过深圳的消费水平,小县城的衣服要加再高也刺激不到我的神经了,再加上导购员太会讲话,把我忽悠得晕头转向的(女朋友还没从试衣间出来我就买了单),三件衣服1300+,其实算算也不比深圳低了吧~

返深之后,我仍不思进取,趁女朋友回她家的3天,玩了3天的游戏。真的是三天三夜,啊三更半夜。后来,支付宝、银行卡上的钱越来越少,心血来潮,删了MACBOOK上的win8系统,装了vmware fusion,装了个CentOS。然后看了几天的Linux、多线程、网络编程、shell,然后就有了下面的代码:

之前的工作经验,也只是在Linux上看下log,这次主动去撩了一下Linux,结果反被撩,深深被Linux给吸引住了。用女朋友的话说,Linux的水很深的。

在网易云课堂上买了一些教程,多线程/进程、TCP/IP协议、网络编程、Linux shell脚本等。边看视频边在环境上敲代码。在看Linux视频时,看到了stat结构,可以获取到文件的信息。而我每次验证一个新的函数或功能时,一般都新建一个文件,想着在最开始加上一些文件的描述信息。这些功能能够借助stat来实现,结果捯饬了一个下午,stat函数老是返回-1,搜了一下,有人说,第一个参数要是文件是绝对路径。这个嘛~之后再验证,头有点大。于是就有了下面的脚本,没什么难理解的地方,只是若干个if语句。

#!/bin/bash
#descrition: create a new shell/C/C++ file
#author:     xxx
#createtime: 2017/10/17 22:00:00
#version:    0.0.1

if [ "$#" != "3" ];then
    echo "error arglist:${0} filename mode description"
    echo "filename is string type for the file to be created"
    echo "mode is the code type of the file to be created"
    echo "mode can only be set as 0, 1"
    echo "discription is a string to tell the function of the file"
    exit 1
fi

if [ -e "${1}" ];then
    echo "the file /directory ${1} arealy exists"
    exit 2 
fi

if [ "${2}" != "0" ] && [ "${2}" != "1" ];then
    echo "mode can only be set as 0, 1"
    exit 3
fi
#create a new file named ${1}
> "${1}"

TIME=$(date +"%Y-%m-%d %H:%M:%S")
AUTHOR=$(whoami)
DESC=${2}
VERSION="0.0.1"

if [ "${2}" == "0" ];then
    echo "#!/bin/bash">>${1}
    echo "">>${1}
    echo "#description:        ${3}"       >>${1}
    echo "#author:             ${AUTHOR}"  >>${1}
    echo "#createtime:         ${TIME}"    >>${1}
    echo "#version:            ${VERSION}" >>${1}
elif [ "${2}" == "1" ];then
    echo "/******************************************"  >>${1}
    echo " ****  description:  ${3}"                    >>${1}
    echo " ****  author:       ${AUTHOR}"               >>${1}
    echo " ****  createtime:   ${TIME}"                 >>${1}
    echo " ****  version:      ${VERSION}"              >>${1}
    echo "*******************************************/" >>${1}
fi

exit 0

 

执行"chmod +x cr"给该文件所有用户加上可执行的权限。将文件命名为cr(自定义的,create的缩写吧),然后放到/usr/bin下面。标准例子如下:

技术分享

 

技术分享

 

以上是关于最近感想+用shell脚本新建文件时添加创建的注释的主要内容,如果未能解决你的问题,请参考以下文章

Shell编程—构建基本脚本

Shell脚本

十一 Shell篇——Shell脚本

创建shell脚本

ubuntu怎么保存shell脚本文件

shell脚本检测IP地址