嵌入式培训W3D3

//磁盘挂载指令
sudo mount 设备文件名 挂载点目录
Linux并不像 Windows一样可以直接操作接入的设备。Linux下一切皆文件,需要使用一个目录文件和接入的设备建立对应关系,将接入的设备也抽象成为一个文件,通过操作挂载目录对设备进行修改。
//查看磁盘分区
sudo fdisk -l
//查看磁盘占用空间
df -h
//取消挂载文件
sudo umount 文件名

通配字符说明
*.png所有的png文件
file*.c不会包含所有的.c文件,只会包含所有以file开头的文件
file?匹配file后包含单个字符的文件
file[123].c匹配[]中的单个字符
file{1,2,3,4,5}匹配{} 中的所有字符
file{1…10}匹配1-10的文件

执行shell脚本的两种方式:
1.利用bash去执行shell脚本,此时不用给脚本权限

bash hello.sh

2.脚本本就是可执行文件,给与脚本执行权限,再执行脚本

chmod 777 hello.sh
./hello.sh

Shell脚本
shell脚本是一个弱语言,没有类型
shell中打印一个变量的时候,需要加上$,否则打印的就不是那个变量的值
定义变量的时候,中间不能有空格

#!/bin/bash
a=0
echo $a

shell使用的头文件为#!/bin/bash
shell中有一些已经定义好了的变量,用户只能使用不能更改
和c语言不同,函数名是作为第一个参数,shell中脚本名并不作为参数传递
shell中的输入为read,输出为echo

变量含义
$0脚本名
{$1…$9}分别代表命令行传递的第一到第 九个参数,空格作为分割符
$#命令行参数个数
$$进程的pid(可有ps -aux指令查看)
$*所有的命令行参数

shell脚本中的语句

  • if语句

在脚本中进行判断的时候需要利用test语句来进行判断

if 条件1
then
   语句
elif 条件2
then
   语句
else
   语句
fi
//

shell中的test命令用于检查某个条件是否成立,它可以进行数值,字符和文件三个方面的数值测试
if test $n -eq $m

参数说明
-eq等于则为真
-ne不等于为真
-gt大于为真
-lt小于为真
-le小于等于为真

字符串测试

参数说明
=等于为真
!=不等于为真
-z字符串长度为0则真
-n字符串长度不为0则真

文件测试

参数说明
-e存在为真
-r拥有读权限为真
-w拥有写权限为真
-x拥有执行权限为真
  • for语句
//循环打印数据
for var in 1 2 3 4 5
do
  语句
done
  • switch语句
case $n in
    1)  语句 ;;
    2)  语句 ;;
    *)  语句 ;;
esac
*相当于C语言中switch语句中的default

根据n的值,匹配对应的选项,如果未匹配到执行*对应的语句

  • while语句

shell中不允许直接进行自增操作,需要加上符号let

i=0
while(($i<5))
do
  echo $i
  let i++
done
//无线循环
while true
do
	command
done

shell中的运算

var1=10
var2=20
n=`expr $var1 + $var2`
m=`expr $var1 - $var2`
k=`expr $var1 \* $var2`
t=`expr $var1 / $var2`

在进行加减乘除运算的时候,首先,两个变量之间需要加上空格;第二,需要加上符号expr;第三,需要在前后加上符号``

shell中的函数

function show(){
	m=$1
	n=$2
	k=`expr $m + $n`
	return 1
}
#调用
show 23 34
#接收函数返回值
a=$?

shell中函数的调用不需要加()
定义函数的时候,function可以加,可以不加
shell中的返回值是有范围的,范围在0-255之间
函数中$1表示传递过去的第一个参数,$2同理。故m=23,n=34

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值