Shell 脚本初学

其实这个是因为服务器卡不够用,为了充分占用一块卡的资源,需要写个shell脚本帮忙运行网络= =
shell是一种脚本语言(区别于编译语言),在UNIX上基本都通用。在我看来,这个脚本主要并不是用来计算,而是用来管理打杂的。

Hello world!


第一个程序,还是输出Hello world吧。
首先建立一个脚本文件

vim hello.sh

进入vim程序,输入:

#!/bin/bash
echo "Hello World !"

“#!” 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种Shell,bash是比较通用的一个shell。echo命令用于向窗口输出文本,其实你直接在shell中输入echo Hello World!。也会有相同的效果。
即可。
之后运行需要退出,

./hello.sh

但会出现:

permission denied: ./hello.sh

没有权限,增加之后再试试:

chmod +x ./test.sh  #使脚本具有执行权限
./test.sh  #执行脚本
Hello world!

成功~
有了输出也会有输入,输入的命令是read

#!/bin/bash
echo "What is your name?"
read Name
echo "Hello, $Name"

这时候执行会等待你输入,并显示出来。

变量


shell中变量的赋值很简单,只需要=即可

variableName="value"

但是要注意:
- 变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样
- 首个字符必须为字母(a-z,A-Z)
- 中间不能有空格,可以使用下划线(_)
- 不能使用标点符号
- 不能使用bash里的关键字(可用help命令查看保留关键字)

如果观察上面读取语句,会发现使用的时候需要在变量前加上$符号:

your_name="Myname"
echo $your_name
echo ${your_name}

推荐在变量外加上大括号,用于和其他字符区分。
既然是变量,就可以多次赋值修改,但也有例外:

readonly variableName

可将变量改为只读变量(也就是常量吧……)。
最后也可以删除变量:

unset variable_name

但不能删除只读变量。

还是先干工作吧……


其实在linux中输入的命令,就是在解释器中运行程序,而shell脚本让这个过程更为集中、简单。做类比的话,shell就是python,.sh就是.py。那么我们如果想要运行程序,直接写我们在命令行里的命令就好了。

#!/bin/bash
python work1.py
python work2.py

这样就不用担心卡在完成工作前被占用了~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值