Linux系统编程shell脚本的学习

shell脚本一系列命令的集合,做操作系统配置

shell编程:解释型语言,边翻译边执行,擅长文件处理,操作系统管理,开发效率高  cp 1  2,执行效率低,移植性好
.c :编译型语言,先编译再执行,擅长数据计算和数据处理,开发效率低,执行效率高,移植性差

shell命令解释器,bash
shell脚本的本质就是一系列shell命令的集合

1.shell脚本编写流程:
(1.vim XX.sh  #!/bin/bash(顶行用bash解释)      .sh后缀区分.c,确认脚本文件
(2.编写脚本
(3.chmod +x XX.sh        +x为添加执行权限
(4. ./XX.sh 

ll:ls详细显示

-rwxr-xr-x

2.shell变量
1.环境变量: env
PATH:保存当前工作的默认路径      系统路径,多个路径以:隔开
PWD:当前所在的工作路径
HOME:当前登录用户的家目录
...
main(int argc,char* argv[])


2.位置变量:  ./3.sh /etc/passwd 123  456 内置变量
$0:脚本文件名
$1:传入脚本的第一个参数
$2:传入脚本的第二个参数
...
$9:

$(10)

$#:传入参数的个数
$?:上一句shell命令执行的结果
$$:当前shell的PID
a=123
3.shell脚本输入输出
read  a 
echo  '$a'

4."":打印字符串,遇到$变量则打印变量中的值
  '':打印字符串,遇到$变量依然打印$变量
  ``:将中间的字符串按照命令打印

变量赋值两边不打空格   a=b

数学运算a=2 b=3 c=`expr $a \* $b`       \*代表*

分支语句:
1.if语句
if 条件
then
        语句
else
        语句
fi

if  []
then

elif []
then 
elif []
then
else 

fi


if []
then
fi;
 -a and 
-o or 
test -eq 相等   test 10 -eq $i     [ $i -eq 10 ]      if( a == 10)
-ne 不相等
-gt 大于
-lt 小于
-ge 大于等于
-le  小于等于
[ $i ge 0  -a $i lt 59 ]
-b 块设备文件   test -b /dev/usb0
-c 字符设备文件
-d 目录文件
-f  普通文件
-L 链接文件
-S  套接字文件
-p 管道文件

2.case
case $num in       (num默认为字符串)
9)语句
;;
8|||)语句
;;
7)语句
;;
*)语句
;;
esac

循环语句
(1)while [  条件    ]
do
        语句
        ...
done

(2)for i in 1 2 3 4 5

do

        语句

done

(3)until  [条件]

do

        语句

done

  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值