《嵌入式操作系统》实验教学大纲:实验一-Linux基本命令及Shell编程.doc
《《嵌入式操作系统》实验教学大纲:实验一-Linux基本命令及Shell编程.doc》由会员分享,可在线阅读,更多相关《《嵌入式操作系统》实验教学大纲:实验一-Linux基本命令及Shell编程.doc(12页珍藏版)》请在咨信网上搜索。
实验一 Linux基本命令及Shell编程 第一部分:Linux常用命令及vi编辑器 一、实验目的 1、了解Linux的环境 2、熟悉Linux常用命令 3、熟悉vi编辑器的使用 二、实验设备 装有Red Hat Enterprise Linux 操作系统的PC机 三、预备知识 了解linux命令行的基本概念 四、实验内容及步骤 1、打开vmware软件,启动linux系统。 2、用root用户名和密码登入系统中。 3、打开一终端窗口,然后在其中输入以下命令进行实验。 1) 获得命令帮助 分别演示一下help --help man info 命令的用法; 2) 目录操作命令 v 用pwd命令查看当前所在的目录。 v 用ls命令列出此目录下的文件和目录。 v 列出此目录下包括隐藏文件在内的所有文件和目录并且长格式显示。 ls -al v 进入/home目录下,创建测试目录test。 mkdir /home/test v 利用ls命令列出文件和目录,确认test目录创建成功。 v 进入test目录,查看当前目录的命令,其结果为。 cd test v 回到上一次工作目录,在删除test目录。 cd ../ rm -rf test v cd /后,进入/home的命令。(分别用绝对路径和相对路径进入) cd /home 3) 文件操作命令 v 查看/etc/passwd文件类型。 ls -l /etc/passwd v 利用touch命令,在/home目录创建一个新的空文件newfile。 touch /home/newfile v 利用cp命令复制系统文件/etc/profile到/home目录下,其命令为。 cp /etc/profile /home v 在/home中复制文件profile到一个新文件profile.bak,作为备份,其命令为。 cp /home/profile /home/profilebak v 用长格形式列出当前目录下的所有文件,注意比较每个文件的长度和创建时间的不同。 ls -l v 查找 /etc下的passwd这个文件。 find /etc/passwd v 查找/home目录下的所有名为profile的文件,其命令为。 find /home/ -name *profile* v 在/home下面创建test目录,在test目录下创建目录a,在a目录下创建目录b,在b目录中创建目录c.在目录c中创建d,用一个命令完成。 mkdir -p /home/test/a/b/c/d v 进入c目录中。删除目录d cd /home cd test cd a cd b cd c rm -rf d v 回到b目录中,然后cd ../..看看到什么目录里去了。 cd . . / /home/test v 在cd ~ 回到什么目录了。 /root v 在cd –回到什么目录。 /home/test v 删除test子目录下的所有文件 rm -rf a 4) 文件查看命令 v 分别用cat,more, less,head,tail查看/etc/passwd文件,看看有什么区别? cat,more, less,head,tail /etc/passwd v 只看/etc/passwd的前5行内容。 more -5 /etc/passwd v 只看/etc/passwd的后5行内容。 tail -5 /etc/passwd 5) 文件查找命令 v 查找文件名为httpd.conf的文件。 find / -name httpd.conf v 查找文件名包含httpd的文件。 find / -name *httpd* v 查找/ 目录下的所有目录。 cd / find v 查找/root 目录下的所有目录普通文件。 find /root/ -type f v 查找/usr 目录下属主为root的文件或目录。 find /usr/ -user root v 查找/usr目录下权限为rwxrw-rw-的文件或目录。 find /usr/ -perm 766 v 查找/usr目录下权限为rwxrwxrwx的文件或目录。 find /usr/ -perm 777 v 在/usr目录下查找文件名第二个字符为h的文件,但不在/usr/b i n目录下查找。 find /usr/ -name _h* -path "/usr/bin" -prune -o 4、 打开vi编辑器。在终端中输入vi 或者vi filename名称。如果file文件不存在,将建立此文件;如该文件存在,则打开该文件。 (1)shell提示符下输入 vi命令。 (2)输入”a” 或者”i”转换到编辑模式。 (3)输入 “I am a Chinese boy.”回车。 (4)输入”I like UNIX.”。 (5)键入”Esc”,返回一般模式。 5、替换其中的文字。 (1)将光标移动到”am”的a下。 (2)键入”cw”进入编辑模式。 (3)输入”are”后,键入”Esc”键返回一般模式。 I are a Chinese boy I like UNIX 6、在上述vi文件中查找字符串”I”。 (1)在一般模式下,键入”/I”。光标即转移到字符”I”处。 (2)键入 “n”,光标到下一个”I”处。 7、将上述vi文件中的”I”替换为”You”。 (1)在一般模式下,键入”:1,$s/I/You/g”,回车。 (2)即可看到更改后的结果。 8、复制及删除。 (1)一般模式下,移动光标到第1行。 (2)输入dd命令。 (3)移动光标到”You like UNIX”行末。 (4)输入yy将其拷贝到缓冲区中。 (5)移动光标到目标位置,输入p即可将缓冲区内容粘贴到此处。结果为: You like UNIX You like UNIX (6) 输入2yy,将上述两行也复制,然后也粘贴到文末。 You like UNIX You like UNIX You like UNIX You like UNIX 9、保存及退出。 (1) 在一般模式下输入 :w a.txt,将其保存为a.txt文件。 (2)输入:q退出vi。 或者 输入q! 强制退出,不保存。 五、 思考题: 1、 如何查看隐含文件列表? 2、 如何将一个目录中的所有文件拷贝到另一个目录中,包括这个目录中的隐含文件。 3、 如何删除一个目录包括其中的所有文件,并且不显示任何提示信息? 4、 什么是绝对路径?什么是相对路径?如何表示? 5、 如何显示命令的路径? 第二部分 Shell编程实验 一、实验目的 1、了解和熟悉创建并使用脚本的步骤。 2、熟悉bash的控制结构。 3、学会简单的shell编程。 二、实验内容 三、预备知识 四、实验设备及工具 装有Red Hat Enterprise Linux 操作系统的PC机 五、实验步骤 (一)、 Shell变量 Shell有两种变量:环境变量和临时变量。在Shell脚本中临时变量又分为两类:用户定义的变量和位置参数。 1. 用户定义的变量 用户定义的变量是最普遍的Shell变量,变量名是以字母或下化线打头的字母、数字和下线符序列,并且大小写字母意义不同。变量名的长度不受限制。定义变量并赋值的一般形式是: 变量名=字符串 例如, myfile=/usr/meng/ff/m1.c在程序中使用变量的值时,要在变量名前面加上一个符号“$”。这个符号告诉Shell,要读取该变量的值。 (1)定义并显示变量的值 $ dir=/usr/mengqc/file1 $ echo $dir /usr/mengqc/file1 $ echo dir dir $ salutation=7+5 $ echo $dalutation 7+5 $ today=Sunday $ echo $ today Sunday $ str="Hapy New Year ! " $ echo "Wish You $str" Wish You Happy New Year ! 注意,如果字符串里包含着空格,就必须用引号把它们括起来。还要注意的是等号两边不能有空格。 (2)read命令 作为交互式输入手段,可以利用read命令由标准输入(即键盘)上读取数据,然后赋给指定的变量。其一般格式是:read 变量1 [变量2...] 例如: $ read name -----输入read命令 mengqc -----输入name的值 $ echo "Your Name is $name." Your Name is mengqc -----显示输出的结果 $ read a b c -----read命令有三个参数 crtvu cn edu -----输入三个字符串,中间以空格隔开 $ echo "Email : $a.$c.$b" Email : -----显示输出结果 利用read命令可交互式的为变量两赋值。输入数据时,数据间以空格或制表符作为分隔符。 2. 位置参数 执行Shell脚本时可以使用参数。由出现命令行上的位置确定的参数称做位置参数。在sh中总共有十个位置参数,其对应的名称依次是$0,$1,$2,...$9。其中$0始终表示命令名或Shell脚本名,对于一个命令行,必然有命令名,也就必定有$0;而其它位置参数依据实际需求,可有可无。 练习位置参数的作用。 (1)在你的计算机上建立以下三个文件(设建立在目录/home/username之下,其中username表示你的登陆名): 文件m1.c: main( ) { printf("Begin \n"); } 文件m2.c: # include < stdio.h > { printf("OK! \n"); } 文件ex3:依次显示指定文件的内容,并报告显示这两个文件用了多少行 # ex3: shell script to combine files and count lines cat $1 $2 $3 $4 $5 $6 $7 $8 $9 | wc -l # end (2) 将ex3改为具有执行权限: $ chmod +x ex3 (3) 利用env命令查看在环境变量PATH中是否包含你的当前工作目录(即/home/username)。如果没有包含在其中,则利用以下语句改变PATH的值: $ PATH= $ PATH:/home/username (4) 执行脚本ex3: $ ex3 m1.c m2.c 记录其运行结果 (5)利用位置参数给定变量赋值建立脚本ex5,如下所示: n1=$1 n2=$2 n3=$3 cat $n1 $n2 $n3 | wc -l (6) 将ex5改为具有执行权限: $ chmod +x ex5 (7) 执行脚本ex5: $ ex5 m1.c m2.c 记录结果 (二)、 SHELL中的特殊字符 1.通配符 通常的通配符有三种: * 星号,它匹配任意字符的0次或多次出现。但注意,文件名前面的圆点(.)和路径名中的斜线(/)必须显示匹配。 ? 问号,它匹配任意一个字符。 [] 一对方括号,其中有一个字符组。其作用是匹配该字符组所限定的任意一个字符。 应该注意:字符 * 和 ?在一对方括号外面是通配符,若出现在其内部,它们就失去通配符的能力了。 ! 叹号,若它紧跟在一对方括号的左方括号[之后,则表示不在一对方括号中所列出的字符。 2.引号 在SHELL中引号分为三种:单引号、双引号、和倒引号。 (1)双引号 由双引号括起来的字符,除$、倒引号和反斜线(\)仍保留其功能外,其余字符通常作为普通字符对待。 例1 1.建立以下文件ex8: echo"current directory is`pwd`" echo"home directory is $HOME" echo"file * . ?" echo" directory ' $ HOME ' " 2.执行ex8: $sh ex8 (2)单引号 由单引号括起来的字符都作为普通字符出现。 (3)倒引号 例2 $ today=`date` $echo Today is $today Today is Thu May 04 10 :56 :20 CST 2000 $ 又如: $ users=`who | wc -l` $ echo The number of users is $users The number of users is 5 $ (4)反斜线 转义字符,若想在字符串中使用反斜线本身,则必须采用(\\)的形式,其中第一个反斜线作为转义字符,而把第二个反斜线变为普通字符。 例3 $!/bin/sh myvar=〝Hi there〞 echo $myvar echo 〝$myvar〞 echo `$myvar` echo \$myvar echo Enter some text read myvar echo `$myvar` now equals $myvar exit 0 记录运行结果 (三) 条件判断与循环结构 1、If语句 2、while语句 (四)Shell综合编程 1、上机编写如下代码,分析下面的程序,简要说明整体功能,并解释每条语句。 #!/bin/sh val=1 while (test $val -lt 6) do touch file$val date>>file$val val=`expr $val + 1` done 2、用Shell 编程,判断一文件是不是字符设备文件,如果是将其拷贝到/dev 目录下。 实验总结 附录:vi编辑器使用简介 vi提供三种工作模式:输入模式(insert mode)、命令模式(command mode)和末行模式。 使用者进入vi后,即处在命令模式下,此刻键入的任何字符皆被视为命令,可进行删除、修改、存盘、查找、替换等操作。要输入信息,应转换到输入模式。 1、以下命令均可进入编辑模式指令。 表一 a(append) 在光标之后加入资料 A 在该行之末加入资料 i(insert) 在光标之前加入资料 I 在该行之首加入资料 o(open) 新增一行于该行之下,供输入资料用 O 新增一行于该行之上,供输入资料用 2、使用Esc命令从编辑模式进入一般或者命令模式。以下命令文件保存、退出vi。 表二 :q! 离开vi,并放弃刚在缓冲区内编辑的内容 :wq 将缓冲区内的资料写入磁盘中,并离开vi :ZZ 同wq :x 同wq :w 将缓冲区内的资料写入磁盘中,但并不离开vi :w 文件名 以文件名保持当前文件 :q 离开vi,若文件被修改过,则要被要求确认是否放弃修改的内容,此指令可与:w配合使用 3、vi下的光标移动命令。 表三 移动光标h、j、k、l。 分别控制光标左、下、上、右移一格 Ctrl+b: 上滚一屏。 Ctrl+f: 下滚一屏。 Ctrl+d: 下滚半屏。 Ctrl+u: 上滚半屏。 G: 移到文件最后。 w: 移到下个字的开头。 b: 跳至上个字的开头。 4、删除命令。 表四 x: 删除当前光标所在后面一个字符。 #x: 删除当前光标所在后面#个字符。例如,5x表示删除5个字符。 dd: 删除当前光标所在行。 #dd: 删除当前光标所在后面#行。例如,5dd表示删除自光标算起的5行。 X: 删当前光标的左字符。 D: 删至行尾。 5、更改及替代命令。 表五 cw: 更改光标处的字到此单字的字尾处。 c#w: 例如,c3w表示更改3个字。 cc: 修改行。 C: 替换到行尾。 r: 取代光标处的字符。 R: 取代字符直到按ESC为止。 6、复制及复原命令。 表六 yw: 拷贝光标处的字到字尾至缓冲区。 p: 把缓冲区的资料贴上来。 yy: 拷贝光标所在之行至缓冲区。 #yy: 例如,5yy,拷贝光标所在之处以下5行至缓冲区。 u: 复原至上一操作。 g: 列出行号,及相关信息。 7、vi查找和替换命令 表七 命令 功能 /word 向后寻找字符串”word” ?word 向前寻找字符串”word” :n1,n2s/word1/word2/g 替换n1行至n2行之间的字符串word1为word2 :1,$s/word1/word2/g 全文本替换字符串word1为word2 :g/word1/s/word2/g 将字符串word1替换为word2 ls -la | grep ^. 隐藏文件一般都是以.开头的- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式操作系统 嵌入式 操作系统 实验教学 大纲 实验 Linux 基本 命令 Shell 编程
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文