Linux(三):shell基础

脚本执行

  • 赋予执行权限,直接运行

chmod  755  hello.sh

./hello.sh        #或者直接输入全路径名称

  • 通过bash调用执行脚本

bash hello.sh

Bash的基本功能

命令的别名与快捷键

  • alias     #查看系统中所有的命令别名
  • alias  别名=‘原命令’       #设定命令别名

别名永久生效与删除别名

  • vi ~/.bashrc     #写入环境变量配置文件
  • source .bashrc   #使文件立即生效且重启不会丢失。如果不执行这一步,执行上一步以后需要重新登录配置文件才会生效
  • unalias  别名   #删除别名

常用快捷键

历史命令

  • history [选项] [历史命令保存文件]
  • 选项:

-c :清空历史命令

-w  :  把缓存中的历史命令写入历史命令保存文件 ~/.bash_history

我觉得比较好的一个用处:出现问题时,排查自己之前执行的命令,是否出错了。

输出重定向

/dev/null    #linux中的回收站,可以将不需要看到的输出都重定向到这里 

管道符

多命令顺序执行

  •  data ; tar -zcvf etc.tar.gz  /etc    ;  date      #可以计算打包的时间
  • ls && echo yes || echo no        #通过这个命令判断ls命令是否正确执行,正确执行输出yes,错误输出no

管道符

  • 命令格式:命令1   |    命令2     #命令1的正确输出作为命令2的操作对象
  • netstat -an  |grep   ESTABLISHED    #判断正在连接中的端口
  • netstat -an  |grep   ESTABLISHED   |   wc  -l     #wc命令统计输出的行数

通配符

 

run文件

run文件很简单,它的结构是shell+压缩包(当然也可以是其它文件)的格式,制作的时候用cat命令把shell(shell一定要在前面)和压缩包同时重定向到另一个文件(linux中统一给后缀run给它,就是本文中说的run文件),在shell内记录压缩包的大小等信息,运行的时候shell就可以用linux里面的tail或head等命令很容易地把压缩包从run文件切分出来,后面的操作就跟shell+压缩包的操作类似了,但这其中用户只需执行它就行,剩下的都是shell自己的操作,对用户来说是不是自动省事了很多?

1. 制作:使用linux的cat命令: cat install.sh ProjectDir.tar.gz > setup.run  
2.修改属性: chmod u+x setup.run  
3.最后测试: ./setup.run

实际应用举例:将一个导入sh脚本和一个docker镜像tar包制作成一个run文件,实现docker镜像的自动导入。导入操作所在的当前目录可能会出现空间不足,可以用bash xxx.run --target /data/tmp重定向目标目的到大存储,在导入成功后删除该目录下的临时文件(在run文件所在目录下执行run文件时,不会出现制作run文件的原始文件)

参考原文链接:https://blog.csdn.net/chenchong08/article/details/7683945/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值