完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
2个回答
|
|
自动生成: CMake autotool
嵌入式Linux开发工具-shell编程(脚本:批处理) Linux系统运维工程师(嵌入式系统开发–系统移植) shell: 1.命令解析器 (将用户输入的命令解析,调用相应的命令的可执行文件) 2.脚本语言 命令:可执行文件 在这里插入图片描述 变量 if for while until case 函数 函数传参 函数返回值 键盘输入read 底层嵌入式开发: shell命令拼装、看懂shell 3.Shell是什么呢? 确切一点说,Shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向Linux发送请求以便运行程序的接口系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。 4.Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。 Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它互动式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。它虽然不是 Linux系统内核的一部分,但它调用了系统内核的大部分功能来执行程序、创建文档并以并行的方式协调各个程序的运行。因此,对于用户来说,Shell是最重要的实用程序,深入了解和熟练掌握Shell的特性极其使用方法,是用好Linux系统的关键。可以说,Shell使用的熟练程度反映了用户对 Linux使用的熟练程度。 5.shell提供了你与操作系统之间通讯的方式 这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。shell script是放在文件中的一串shell和操作系统命令,它们可以被 重复使用。 本质上,shell script是命令行命令简单的组合到一个文件里面。 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh #!用来告诉系统它后面的参数是用来执行该文件的程序。 要使脚本可执行: chmod +x filename 然后通过输入: ./filename 来执行您的脚本 (在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。如果您使用了注释,那么即使相当长的时间内没有使用该脚本,你也能在很短的时间内明白该脚本的作用及工作原理。) 6.变量: 在其他编程语言中必须使用变量。在shell编程中,所有的变量都由字符串组成,并且不需要对变量进行声明。要赋值给一个变量,可以这样写: 变量名=值 取出变量值可以加一个美元符号($)在变量前面 变量赋值时,“=两边都不能有空格 BASH中的语句结尾不需要分号 HelloWorld #!/bin/sh #对变量赋值: a=“hello world” 现在打印变量a的内容: echo “A is:” echo $a 在编辑器中输入以上内容,然后将其保存为一个文件HelloWorld。之后执行chmod +x HelloWorld 最后输入./ HelloWorld执行该脚本。 这个脚本将会输出: A is: hello world 有时候变量名很容易和其他名字混淆,比如: S13: num=2 echo “this is the $numnd” 思考:输出?Why? num=2 echo “this is the KaTeX parse error: Expected ‘}’, got ‘EOF’ at end of input: … “this is the {num}nd” 这将打印: “this is the 2nd” 7.默认变量 $#:传入脚本的命令行参数个数 $*:所有命令行参数值,在各个参数值间留有空格 $0:命令本身(shell文件名) $1:第一个命令行参数 $2:第二个命令行参数 8.局部变量 在变量首次被复制时加上local关键字可以什么一个局部变量, 例S3: #!/bin/bash hello=“var1“ echo $hello function func1 { local hello=“var2” echo $hello } func1 echo $hello 输出:? 9.If语句 If [expression] then #code block fi If [expression] then #code block else #code block fi If [expression] then #code block else if [expression] then #code block else #code block fi fi 例: 比较整数a和整数b是否相等:if[ $a = $b ] 比较整数a是否大于整数b:if[ $a –gt $b ] 比较字符串a和b是否相等: if[ $a = $b ] 判断字符串a是否为空:if[ -z $a ] 比较整数变量a是否大于b:if[ $a –gt KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 137: …对当前用户可以执行 例S5: #̲!/bin/sh folde…folder” ] && echo “Can read folder“[−f" folder“[−f"folder” ] || echo “this is not file” 10.For语句 for循环与C语言中有所不同,在BASH中for循环的基本结构是: for var in
|
|
|
|
自动生成: CMake autotool
嵌入式Linux开发工具-shell编程(脚本:批处理) Linux系统运维工程师(嵌入式系统开发–系统移植) shell: 1.命令解析器 (将用户输入的命令解析,调用相应的命令的可执行文件) 2.脚本语言 命令:可执行文件 在这里插入图片描述 变量 if for while until case 函数 函数传参 函数返回值 键盘输入read 底层嵌入式开发: shell命令拼装、看懂shell 3.Shell是什么呢? 确切一点说,Shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向Linux发送请求以便运行程序的接口系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。 4.Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。 Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它互动式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。它虽然不是 Linux系统内核的一部分,但它调用了系统内核的大部分功能来执行程序、创建文档并以并行的方式协调各个程序的运行。因此,对于用户来说,Shell是最重要的实用程序,深入了解和熟练掌握Shell的特性极其使用方法,是用好Linux系统的关键。可以说,Shell使用的熟练程度反映了用户对 Linux使用的熟练程度。 5.shell提供了你与操作系统之间通讯的方式 这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。shell script是放在文件中的一串shell和操作系统命令,它们可以被 重复使用。 本质上,shell script是命令行命令简单的组合到一个文件里面。 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh #!用来告诉系统它后面的参数是用来执行该文件的程序。 要使脚本可执行: chmod +x filename 然后通过输入: ./filename 来执行您的脚本 (在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。如果您使用了注释,那么即使相当长的时间内没有使用该脚本,你也能在很短的时间内明白该脚本的作用及工作原理。) 6.变量: 在其他编程语言中必须使用变量。在shell编程中,所有的变量都由字符串组成,并且不需要对变量进行声明。要赋值给一个变量,可以这样写: 变量名=值 取出变量值可以加一个美元符号($)在变量前面 变量赋值时,“=两边都不能有空格 BASH中的语句结尾不需要分号 HelloWorld #!/bin/sh #对变量赋值: a=“hello world” 现在打印变量a的内容: echo “A is:” echo $a 在编辑器中输入以上内容,然后将其保存为一个文件HelloWorld。之后执行chmod +x HelloWorld 最后输入./ HelloWorld执行该脚本。 这个脚本将会输出: A is: hello world 有时候变量名很容易和其他名字混淆,比如: S13: num=2 echo “this is the $numnd” 思考:输出?Why? num=2 echo “this is the KaTeX parse error: Expected ‘}’, got ‘EOF’ at end of input: … “this is the {num}nd” 这将打印: “this is the 2nd” 7.默认变量 $#:传入脚本的命令行参数个数 $*:所有命令行参数值,在各个参数值间留有空格 $0:命令本身(shell文件名) $1:第一个命令行参数 $2:第二个命令行参数 8.局部变量 在变量首次被复制时加上local关键字可以什么一个局部变量, 例S3: #!/bin/bash hello=“var1“ echo $hello function func1 { local hello=“var2” echo $hello } func1 echo $hello 输出:? 9.If语句 If [expression] then #code block fi If [expression] then #code block else #code block fi If [expression] then #code block else if [expression] then #code block else #code block fi fi 例: 比较整数a和整数b是否相等:if[ $a = $b ] 比较整数a是否大于整数b:if[ $a –gt $b ] 比较字符串a和b是否相等: if[ $a = $b ] 判断字符串a是否为空:if[ -z $a ] 比较整数变量a是否大于b:if[ $a –gt KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 137: …对当前用户可以执行 例S5: #̲!/bin/sh folde…folder” ] && echo “Can read folder“[−f" folder“[−f"folder” ] || echo “this is not file” 10.For语句 for循环与C语言中有所不同,在BASH中for循环的基本结构是: for var in
|
|
|
|
只有小组成员才能发言,加入小组>>
702 浏览 0 评论
1111 浏览 1 评论
2476 浏览 5 评论
2811 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2654 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
656浏览 9评论
651浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
786浏览 6评论
632浏览 5评论
675浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 00:37 , Processed in 1.104366 second(s), Total 82, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号