怎么写脚本代码(阿里疯传!小白也能操作Linux,简单的shell脚本编写边学边用)




在软件测试之初,shell脚本就是为了理解这个概念而设计的。那时候这个技能基本不用,大部分工作都是一点一点做的。

现在因为行业原因,我们经常要在Linux服务器上做一些常见的操作。

如果没有遇到百度,你会慢慢学习一些以前没有接触过的Linux命令,也会开始阅读关于shell脚本的书籍。如果你没有阅读的实际经验或实践,你就会有一个概念。

怎么写脚本

Linux命令应用广泛,自然想到shell脚本,想用它来解决工作中的一些重复性操作,于是边学边用,效果还不错。


工作场景


测试的时候,我们会把软件包复制到管理平台的软件仓库,如果仓库里有,我们会覆盖。


手动操作的过程如下:

Wget【url】:下载软件包,压缩包格式;


Tar-zxvf xxx.tar.gz:将软件包解压到当前文件;


进入解压文件,包含2个文件夹,然后依次复制。这里使用的是scp命令,-r表示递归目录,scp-rxxxx//opt/xxx。


为什么这里没有cp?因为找到cp覆盖的时候总是提示手动确认,太繁琐了。所以这里用的是scp命令,常用于两台服务器之间的远程拷贝。


这个软件包更换过程做了很多次,已经熟悉和熟悉了。突然有一天,要告诉一个不懂Linux命令的人去完成软件包替换,会变得稍微困难一点。


考虑到我经常做这个操作,又不想白教别人,就写个简单的shell脚本吧。

设计理念


将下载地址作为位置参数传递到脚本中。


根据当前时间,具体到分钟,在脚本所在的文件中创建一个文件夹,用那个时间做名字,避免重复文件夹名什么的。


进入这个文件夹,下载压缩包。


解压压缩包,然后删除压缩包,为下一步做准备。


解压后就是一个文件夹。让我们得到这个文件夹的名字,然后进去。


复制文件,完成。


实现如下:

#!/bin/bash #获取当前时间 Cur _ date = ` date+% y % m % d-% h-% m ` tmp _ dir = service _ $ Cur _ date #根据时间创建一个文件夹。访问目录:& # 34;$ tmp _ dir # Download echo & # 34;将文件下载到& # 34;$tmp_dir wget #解压缩 echo & # 34;解压缩文件& # 34; 睡眠3 tar-zxvf * . tar . gz echo & # 34;解压完成,压缩包删除& # 34; RM-RF * . tar . gz for I in ` ls ` do echo & # 34;包的文件夹名:& # 34;$ I tmp _ dir _ package = $ I done CD $ tmp _ dir _ package echo & # 34;输入软件包目录:& # 34;$ tmp _ dir _ package echo & # 34;开始将软件包复制到ole depot/opt/& # 34; scp -r包/ /opt/ scp -r存储库//opt/ echo & # 34;拷贝软件包,别忘了在sole软件仓库刷新!!!" 睡眠3(左右滑动查看完整代码)


好了,写了一个简单的脚本。


编写知识点


  • 反引号的使用,反引号的作用是先执行反引号中的Linux命令,然后将执行结果赋给变量。
  • 位置参数的使用。
  • 创建文件夹,删除,解压,回显,睡眠。
  • Scp副本,远程副本。
  • For循环。
  • Wget下载。
  • 您可以还会对下面的文章感兴趣

    使用微信扫描二维码后

    点击右上角发送给好友