linux驱动开发笔记6驱动模块之makefile文件

linux驱动开发笔记6驱动模块之makefile文件

ID:26174655

大小:92.00 KB

页数:33页

时间:2018-11-24

linux驱动开发笔记6驱动模块之makefile文件_第1页
linux驱动开发笔记6驱动模块之makefile文件_第2页
linux驱动开发笔记6驱动模块之makefile文件_第3页
linux驱动开发笔记6驱动模块之makefile文件_第4页
linux驱动开发笔记6驱动模块之makefile文件_第5页
资源描述:

《linux驱动开发笔记6驱动模块之makefile文件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、linux驱动开发笔记6驱动模块之Makefile文件本来打算过几天再总结makefile文件,既然现在用到Makefile文件,就在这里把SHELL和Makefile都总结一下,因为Makefile文件中会用到Shell中的一些语法和变量。一、Shell的使用我们可以使用任意一种文字编辑器,比如gedit、kedit、emacs、vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):#!/bin/sh ... 注意:最好使用“!/bin/bash”而不是“!/bin/sh”,如果使用tcshell改为tcsh,其他类似。 符号#!用来告诉系统执行该脚本的程序,本例使用/bi

2、n/sh。编辑结束并保存后,如果要执行该脚本,必须先使其可执行:chmod+xfilename 此后在该脚本所在目录下,输入./filename即可执行该脚本。Shell编程中,使用变量无需事先声明,同时变量名的命名须遵循如下规则:首个字符必须为字母(a-z,A-Z)中间不能有空格,可以使用下划线(_)不能使用标点符号不能使用bash里的关键字(可用help命令查看保留关键字)需要给变量赋值时,可以这么写:变量名=值要取用一个变量的值,只需在变量名前面加一个$(注意:给变量赋值的时候,不能在"="两边留空格)#!/bin/sh #对变量赋值: a="helloworld" #等号两边均不能有空

3、格存在 #打印变量a的值: echo"Ais:"$a 挑个自己喜欢的编辑器,输入上述内容,并保存为文件first,然后执行chmod+xfirst使其可执行,最后输入./first执行该脚本。其输出结果如下: Ais:helloworld 有时候变量名可能会和其它文字混淆,比如:num=2 echo"thisisthe$numnd" 上述脚本并不会输出"thisisthe2nd"而是"thisisthe";这是由于shell会去搜索变量numnd的值,而实际上这个变量此时并没有值。这时,我们可以用花括号来告诉shell要打印的是num变量:num=2 echo"thisisthe${num}n

4、d" 其输出结果为:thisisthe2nd注意花括号的位置:num=2 echo"thisisthe{$num}nd" 其输出结果为:thisisthe{2}nd需要注意shell的默认赋值是字符串赋值。比如:var=1 var=$var+1 echo$var 打印出来的不是2而是1+1。为了达到我们想要的效果有以下几种表达方式:let"var+=1" var=$[$var+1]   var=`expr$var+1`#注意加号两边的空格,否则还是按照字符串的方式赋值。 注意:前两种方式在bash下有效,在sh下会出错。let表示数学运算,expr用于整数值运算,每一项用空格隔开,$[]将中括

5、号内的表达式作为数学运算先计算结果再输出。Shell脚本中有许多变量是系统自动设定的,我们将在用到这些变量时再作说明。除了只在脚本内有效的普通shell变量外,还有环境变量,即那些由export关键字处理过的变量 linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1$2…$n"的形式输出所有参数。 $@ 所有参数列表。如"

6、$@"用「"」括起来的情况、以"$1""$2"…"$n"的形式输出所有参数。 $# 添加到Shell的参数个数 $0 Shell本身的文件名 $1~$n 添加到Shell的各参数值。$1是第1参数、$2是第2参数…。 示例:?1#!/bin/bash 2# 3printf"Thecompletelistis%s""$$" 4printf"Thecompletelistis%s""$!" 5printf"Thecompletelistis%s""$?" 6printf"Thecompletelistis%s""$*" 7printf"Thecompletelistis%s""

7、$@" 8printf"Thecompletelistis%s""$#" 9printf"Thecompletelistis%s""$0"10printf"Thecompletelistis%s""$1"11printf"Thecompletelistis%s""$2结果:?[Aric@localhost~]$bashparams.sh123456QQThecompletelist

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。