C/C++与shell的区别
C/C++是编译型 编译链接xx.c->xx 二进制机器指令
shell编程解释型 xx.sh 需要解释器(如:bash)
Java 解释器+编译 xx.java->xx.class 配置环境
输出一个hello
my.sh
#!/usr/bin/bash/
echo"hello"
exit 0
执行
方法一:bash my.sh
方法二:chmod u+x my.sh 给权限
./my.sh 运行
变量
#屏蔽--注释
#!指定解释器
用a的值,在a前面加一个$: $a
想要输出值--用双引号:echo" "
想要输出字面--用单引号:echo‘ ’
等号两边不能有空格
#本地变量
str = hello
a = "123"
echo "a=$a"
#环境变量-内部就有的
$HOME 家
$PATH
$PS1
$$ pid
$0 名字
$# 传给脚本的参数个数
#参数变量
$1 传给脚本的第一个参数
$2
$3 传给脚本的第三个参数
条件
test或[ ] 判断
[] 左右两边要有空格
if语句
if [ ]
then
...
elif [ ]
then
...
else
...
fi
字符串比较
判断里面的等号要有空格,要不然就是赋值了。
算术比较
文件测试
循环
在语句中执行命令str=$(ls)
或者str=`ls`
循环三次
#循环三次
for i in 1 2 3
do
done
#循环多次
str=$(ls)
for i in $str
do
echo i=$i
sleep
done