嵌入式day18

shell脚本配置

shell编程:(shell/bash(linux) ->命令解释器)

   解释类编程语言

   边翻译边执行

   擅长文件处理,系统操作

   开发效率高

   执行效率低

   移植性好

c语言:

   编程型语言

   先编译再执行

   擅长数据计算和数据处理

   开发效率低

   执行效率高

   移植性差

shell脚本的本质就是一系列shell命令的集合

shell脚本编写流程:

1、vim XX.sh #!/bin/bash(第一行)

2、编写脚本

3、chmod(改变文件权限) + x(可执行权限) XX.sh

4、./XX.sh

备注:#

echo 等同于printf

-rwx rwx r-x 1 linux linux 29 Aug 3 10:12 1.sh*

-普通文件, d 目录, b 块设备 , c 字符设备,h/L 软链接(快捷方式),p 管道 ,s 网络文件(套接字)

作者权限,r读,w写,x执行 组用户(批量用户管理) 其他人

1 硬链接(允许两个文件名关联一个文件内容)linux(作者,组) 32 字节 文件最后写入时间 文件名

shell变量:

1、环境变量:env

LANG 语言 美式英文 全球统一字符型(UTF-8)(消除乱码)(英:中=1:3)

PWD 当前工作路径

PATH 保存当前工作的默认路径(多个路径,冒号隔开)

打开PATH路径,查找可执行程序

2、位置变量:

argc 有几个 *argv 表达内容

2、位置变量:

$0:脚本文件名

$1:传入脚本的第一个参数

$2:传入脚本的第二个参数

……

$# :传入参数的个数

$?:上一句shell命令执行的效果(成功返回0,失败返回1)

$$:当前shell的PID(正在运行的程序的编码)

3、shell脚本输入输出

脚本为弱类型语言,不需要定义类型,默认为字符型

输入:read

输出:echo

“”双引,打印字符串,遇到$变量则打印变量中值

‘’单引,打印字符串,遇到$变量依然打印$变量

``反单引,将中间的字符串按照命令打印

乘法为 \ *

*(通配符)代表当前目录所有的

赋值号左右两边不能空格

分支语句:

1、if语句

if (条件)[] /test(0为真,1为假) + 表达式

then(条件为真)

语句

else(条件为假)

语句

fi(结束)

例:

2、case

*等同于deflut

循环语句:

for i in

until[条件] 条件为假,执行循环,为真,停止

--------------------

嵌入式学习第十八天,今天开始了新的一轮学习,Linux系统编程。今天学习了shell脚本,有很多有趣的新知识,其语法也与c语言不同。后面在学习系统编程的过程中也要及时复习c语言的相关知识,正所谓温故而知新,继续加油吧!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值