shell脚本实现自动生成文件并更改其权限-创新互联
在学习shell的时候,会不断的创建新文件,然后在新文件中的编写shell脚本学习。于是就有如下几个步骤:
创新互联是专业的鱼峰网站建设公司,鱼峰接单;提供成都做网站、网站制作、成都外贸网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行鱼峰网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!1、 使用touch命令新建shell脚本
2、 编写shell脚本
3、 使用chmod更加shell脚本权限,使其具有可执行权限,然后执行
当多写几个脚本后,就发现这个过程很繁琐,而且新建的shell脚本是以数字升序进行创建的。为什么不写一个脚本来实现上述三个过程了。于是就开始了,结果花了好长一段时间才弄出来,真实惭愧,还是对shell不熟悉了。
先说说实现的思路:
1、 先得到目录下最新的脚本名,提取数字
2、 将数字加1,然后和.sh进行拼接,得到新的脚本名
3、 使用touch创建新脚本
4、 使用chmod更改权限
对于第一步:
使用ls –t参数, 以时间排序显示。
要提取第一行数据,需要使用head –n 1,因此使用管道,将两个命令拼接。
要提取其中的数字。使用tr –cd ‘[0-9]’,将处理字符串中的除0-9之外的所有字符删除掉,还是需要使用管脚,与之间的命令拼接。
这里后面加echo只是为了让得出来的数字显示在一行。
所以在脚本中,就下面一句代码就搞定了。将提取出来的数字保存在变量number中。
第二步:
使用$(( 表达式 )) 进行数学运算。
拼接,直接将字符串连写一起即可。
第三步:
使用bash的 `命令` 来执行shell命令。
第四步:
还是使用bash的 `命令` 来执行shell命令
所以,只需要如下几句代码即可实现想要的功能了。
number=`ls -t | head -n 1 | tr -cd '[0-9]'` number=$(( $number + 1 )) new_sh_file="$number"".sh" `touch $new_sh_file` `chmod a+x ./ -R`
还可以将该脚本赋值到/usr/bin目录下,这样,以后在什么地方都可以直接执行该脚本了。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享名称:shell脚本实现自动生成文件并更改其权限-创新互联
文章来源:http://scjbc.cn/article/cdppdg.html