由于集训任务要求,我不得不被迫学习如何写shell脚本并把它写好。
在Ubuntu中使用vim或者gedit新建文件,一般.sh 是后缀。
如图。
接着会弹出一个页面开始编写程序。
从最简单的来。C语言中第一个实验为hello world,那么就从这个来。
#!/bin/bash
echo "hello world!" echo命令是向窗口输出文本。应该是类似于C语言里的printf吧。
接下来运行代码,有两种运行脚本的方法,如下:
1.作为可执行程序
若以上代码保存为test.sh,就可以这样输入
chmod +x test.sh 使脚本具有执行权限
./test.sh 执行脚本
举个栗子:
运行脚本:
[root@localhost /]# ./shell.sh
hello world!
2.作为解释器参数
直接运行解释器,其参数就是shell脚本的文件名,如下:
/bin/sh test.sh
/bin/php test.php
再问:如何定义一个变量?
定义变量:
字符串变量:string="qiaokeai",string为变量名,qiaokeai为字符串
数字变量:num=0,这个时候num就是变量名,0为它对应的值
注意几点:
1、定义变量时不加$,使用时要加$,用以区别字符串,变量名用{}括来是个好习惯,shell会将花括号里面的字符解释为一个整体,后面将数组的时候会体现。
2、不要在等号两边加上空格。
再然后,来说一说for循环,我C语言第一次挂掉机测的时候就是挂在for循环上,现在内心还有一片阴影。
for循环语法一:
for 变量 in 值1 值2 值3……
do
程序块儿(还带儿化音……)
done
例如:输出3次wochaokeai
输出大概就这意思吧。
for循环语法二:
for 变量 ‘命令’
do
程序块儿
done
例如:批量解压缩当前文件夹下所有的.tar.gz 文件
结果是这样儿的:(鬼知道我当前文件夹有没有.tar.gz文件 翻白眼.GIF)
(这个我是真的没看懂,请自行翻译)
for循环语法三:
for((初始值;循环控制;变量变化))
do
程序块儿
done
例如:求1-1w的和
输出是这样子滴:
(内心OS:我还需要一个结尾……)
未完待续……请持续收看……