linux---Shell编程_linux shell编程

exit(0)

///python3 a.py :打开python文件
///或者chmod u+x a.py :增加权限打开文件


使用脚本优先完成


## shell基本语法


### 变量


#### 1.本地变量



#!/usr/bin/bash //#!有着特殊命令,/usr/bin/bash 解释器的位置

#本地变量 //#代表屏蔽
str=hello
a=“123”//1.直接赋值

echo "a= a " / / 打印 / / a" //打印// a"//打印//表名要取变量的值 a与前面无关
echo=‘a=$a’

exit 0

输出:
a=123
a=$a

str=hello
mystr= s t r / / 2. str //2. str//2.赋值

read line ///3.从键盘获取



> 
> //在定义变量的时候=左右两边不允许有空格 
> 
> 
> 



#三种赋值

str=hello
a=“123”//1.直接赋值

mystr= s t r / / 2. str //2. str//2.赋值

read line ///3.从键盘获取


####  2.环境变量



#!/usr/bin/bash

#环境变量:从父进程获取
echo psth=$PATH
// $PS1:把命令提示符改为自己喜欢的样式

echo "$0=KaTeX parse error: Undefined control sequence: \, at position 10: 0" ///使用\̲,̲让失去原有的作用
echo “$#=$#”
echo “$ = = =$”


#### 3.参数变量



#!/usr/bin/bash

#参数变量
eco psth=$PATH

echo “$1=$1” //打印出第一个参数
echo “$2=$2” //打印出第二个参数值
echo “$3=$3” //打印出第三个参数值

echo “$0=$0” //名称
echo “$#=$#” //变量个数
echo “$ = = =$” //pid的值(进程号)

#运行命令:.\my.sh hello 123 a
#输出结果:
$1=hello
$2=123
$3=a
$0=./my.sh
$#=3
$$=21372


### 条件



#!/usr/bin/bash
#三种条件

if test -f fred.c
then

fi
#还可以
if [ -f fred.c ]
then

fi
//以下为例子

echo “input”
read line

if [“KaTeX parse error: Expected 'EOF', got '#' at position 47: … echo "==" fi #̲或者 if test "line” = “123”
then
echo “==”
fi

#if else语句
if [“KaTeX parse error: Expected 'EOF', got '#' at position 66: … echo "!=" fi #̲算术运算 #语法大致和C语言一…line” -gt “0” ] && [ “line” -lt “100” ] //-gt是大于的意思 -lt是小于的意思
then
echo “0 < $line <100”
fi

#判断给入的文件名是目录还是普通文件
if [ -d “ l i n e " ] / / − d 判断是不是目录文件 t h e n e c h o " line" ] //-d判断是不是目录文件 then echo " line"]//d判断是不是目录文件thenecho"line is dirent”
elif [ -f “ l i n e " ] / / − f 判断是不是普通文件 t h e n e c h o " line" ] //-f判断是不是普通文件 then echo " line"]//f判断是不是普通文件thenecho"line is file”
else
echo “$line not find”
fi


#### 一个小小的应用


给出成绩给评分A、B、C、D



#!/usr/bin/bash

input=“请输入成绩:”
read line
echo “请稍等”

if [ “ l i n e " − l t " 0 " ] ∣ ∣ [ " line" -lt "0" ] || [ " line"lt"0"]∣∣["line” -gt “100” ]
then
echo “输入错误!”
exit 1
fi
#请你千万不要忘记写fi

if [ “KaTeX parse error: Expected 'EOF', got '&' at position 17: …ine" -gt "0" ] &̲& [ "line” -lt “60” ]
then
echo “D”
elif [ “KaTeX parse error: Expected 'EOF', got '&' at position 18: …ne" -ge "60" ] &̲& [ "line” -lt “70” ]//-ge是大于等于的意思
then
echo “C”
elif [ “KaTeX parse error: Expected 'EOF', got '&' at position 18: …ne" -ge "70" ] &̲&[ "line” -lt “80” ]
then
echo “B”
else
echo “A”
fi



> 
> 算术比较不能有字母,一有字母就崩掉 
> 
> 
> 


### 循环



#!/usr/bin/bash
#for循环
for i in 1 2 3
do
echo i=$i
sleep 1
done

for i in s t r d o e c h o i = str do echo i= strdoechoi=i
sleep 1
done

#while循环
i=0
while true#条件也可以为true,陷入死循环
do
echo “520”
done

while [ i − l t 10 ] d o e c h o " i -lt 10 ] do echo " ilt10]doecho"i"
i=expr $i + 1#执行i+=1
let “i+=1” #执行i+=1
done

#until循环
until condition
do
statement
done

#一些算术运算
i=1
let “i+=1”
i= expr $1 \* 3
echo “i=$i”



### 函数



#函数定义

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年嵌入式&物联网开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新!!

)]

[外链图片转存中…(img-n53ucxEu-1715585129529)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新!!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值