linux习题参考答案.pdf_第1页
linux习题参考答案.pdf_第2页
linux习题参考答案.pdf_第3页
linux习题参考答案.pdf_第4页
linux习题参考答案.pdf_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 2 3 4 5 章答案 第 1 页 共 7 页 习题答案习题答案 第一章第一章 1 Linux 产生和发展的五大因素是什么 略 见讲义 2 什么是 GNU GNU 开发的软件有哪些 什么是 GPL GNU GNU s Not Unix 工程 开始於一九八四年 旨在发展一个类似 Unix 且为自由软件的完整操作 系统 GNU 系统 到上世纪 90 年代初 GNU 项目已经开发出许多高质量的免费软件 其中包括有名的 emacs 编辑系统 bash shell 程序 gcc 系列编译程序 gdb 调试程序等 为保证用户有无限复制和修改的权利 创设了 GPL General Public License 通用公共许可协议 3 Linux 内核版本假设为 2 3 11 含义是什么 核心 2 3 版本的第 11 次修订 而且这是一个测试版本 4 列举一些著名的 Linux 发行版 并说明各自的特点 略 见讲义 第二章第二章 1 有几种安装和使用 Linux 的方法 略 见讲义 2 KDE 和 GNOME 是什么 两个非常有名的桌面环境 3 vmware 有几种网络连接方式 vm tools 是什么 有什么作用 略 见讲义 4 Windows 如何与虚拟机上的 Linux 系统实现文件共享 略 见讲义 第三章第三章 1 假设你的用户名为 student 那你的主目录为 home student 如果你的用户名为 root 则主目录为 root 2 系统的配置文件一般放到了哪个目录下 etc dev 目录下的内容是什么设备文件 3 tab 键的作用是什么 补全不重复的命令或者文件名 连按两下 tab 的作用是 列出所有以输入字符开 头的命令或者文件 4 如果 当前目录下一个文件名为 f c 想看该文件的权限 则使用哪个命令 ls l f c 如果想看到当前 目录下的一些隐藏文件 则使用命令 ls a 5 假设当前目录是 home student 现在想进入 home 目录下的子目录 k 使用绝对路径 cd home k 使 用相对路径 cd k 6 cd 的作用是 进入主目录 cd 的作用是 回到刚才的目录 7 假设当前目录下有个子目录 ms 该目录下有文件 f c k c 子目录 d 则删除目录 ms 使用的命令为 第 1 2 3 4 5 章答案 第 2 页 共 7 页 rm r ms 8 假设当前目录下有个子目录 ms 该目录下有文件 f c k c 子目录 d 将该目录拷贝到上一级目录下 使 用的命令为 cp r ms 或者 cp a ms 9 链接文件的作用是 方便访问文件 文件共享 如果想对目录创建链接 需要使用哪种链接 软链 接 如果想在当前目录下创建 etc fstab 文件的软链接 lnfstab 则命令为 ln s etc fatab lnfstab 软链接和硬链接的区别是什么 1 硬链接与原文件是同一个文件 大小相同 而软 链接是另外的文件 2 创建硬链接会引起链接数的增加 3 软链接的文件属性可以显示出来 4 硬 链接与被链接文件在一个文件系统中 而且不能建立对目录的链接 软链接则可以建立对目录的链接 10 more 和 less 的区别是什么 less 可以往回翻页 11 列举当前目录下文件名字是字母的文件 使用命令为 ls egrep a zA Z 1 或 ls grep E a zA Z 1 12 在 home 目录下的文件中查找文件内容中以数字结尾 而且含有连续 5 个字母的内容 使用命令 egrep a zA Z 5 0 9 home 如果想在系统范围内查找 则命令为 egrep r a zA Z 5 0 9 13 假设文件名为 a 属性显示 rwxr r 说明文件类型是 普通文件 文件的权限 文件主读写执行 其它用户只读 如果想让所有用户可以执行该文件 使用命令 chmod a x a 采用数字设定法 则命令为 chmod 755 a 14 假设当前目录下有个子目录 ms 该子目录下有文件 f c k c 子目录 d 将文件 f c 拷贝到上一级目录下 并命名为 k c 敲入命令为 cp ms f c k c 15 在系统范围内查找名为 fabas txt 的文件 命令为 find name fabas txt 在主目录范围内查找 最近 6 小时内修改过的文件 则命令为 find mmin 360 16 想看看 umask 命令的作用参数等信息 可以敲入命令 man umask 17 将光驱挂载到 mnt kk 目录下 使用的命令为 mount t iso9660 dev cdrom mnt kk 18 为何有些 Linux 系统可以使用 mount dev cdrom 命令完成光驱的挂载 因为在配置文件 etc fstab 中添加了设置 比如添加一行 dev cdrom mnt cdrom iso9660 noauto exec ro 0 0 则敲入 则敲入 mount dev cdrom 后系统会按照该行信息挂载光驱 19 将文件 f c 使用 bizip2 进行压缩 命令为 1 bzip2 f c 生成的文件的名字是 2 f c bz2 用 zip 将文件 f c 进行压缩 假设想让生成的压缩文件名为 f c zip 命令为 3 zip f c zip f c 20 假设从网上下载了文件名为 vmtools tar gz 则为打开该包 应敲入命令 tar xfz vmtools tar gz 如果显示进度 tar xfzv vmtools tar gz 21 想将当前目录下的子目录 KK 的所有内容用 tar 打包 并使用 bzip2 压缩 则应当敲入命令 tar cfj kk tar bz KK 压缩包的名字要体现出用什么命令进行压缩和打包的 一般应当有类似 tar bz 或 者 tar gz 的字样 22 假设从网上下载了一个 rpm 文件 名为 vmtools 2 i386 rpm 则该文件的软件包的名字是 1 vmtools 如果在 fedora 系统中 注意 ubutu 系统不支持 rpm 想了解该 rpm 文件的用途 则应敲入命令 2 rpm qpi 第 1 2 3 4 5 章答案 第 3 页 共 7 页 vmtools 2 i386 rpm 想安装该软件包 则使用命令 3 rpm i vmtools 2 i386 rpm 如果有安装进度显 示 最好 rpm ivh vmtools 2 i386 rpm 安装好后想校验一下该软件安装是否正确 应当使用命令 4 rpm V vmtools 如果想删除该软件 则应当敲入命令 5 rpm e vmtools 想查询一下系统中 gdb 是否安装了 则可以敲入命令 6 rpm qa grep gdb 第四章第四章 1 从 vi 的插入模式 编辑模式 进入 vi 的命令模式 需要按 esc 键 从命令模式进入插入模式 应当敲入 i 或者 I a A o O 键 2 如果修改了文件后 想退出并保存文件 应当在命令模式下敲入 1 wq 或者 x 如果想不 保存强行退出 则应当敲入 2 q 3 说出 vi vim 中以下字母键的作用 i 0 b w d y p ctrl b ctrl f 略 见 ppt 或者讲义 4 说出 5dw d5w dH 的含义 自己可以尝试一下 解 5dw 和 d5w 含义相同 删除当前行光标向右的 5 个词 dH 是删除屏幕最头上一行开始到当前光标所在行的 所有内容 5 如果想将光标定位到文件的最后一行 如何实现 定位到第一行如何实现 解 在命令模式下敲入 就可以定位到最后一行 定位第一行则敲入 1 6 用 vi 编辑一个文件 假设光标停留在一行的行首 该行内容为 a b a a 在命令模式下如果执行 s a A 后该行内容变为 A b a a 如果执行 s a A g 则内容变为 A b A A 7 如果想让 vi 显示行号 需要敲入什么命令 set nu 如果某个用户想让自己的 vi 打开后能自动显示行号 需要如何做 在配置文件中添加代码 set nu 说明 vi 有好几个配置文件 vi 的用户用户配置文件是主目录 下的文件 exrc 第五章第五章 1 由于挂载光驱需要敲入 mount t iso9660 dev cdrom mnt cdrom 如果为方便 想敲入 mntcd 就能挂载光驱到 mnt cdrom 下 则如何实现 alias mntcd mount t iso9660 dev cdrom mnt cdrom 注意 如果想永久生效 这行命令也需要 第 1 2 3 4 5 章答案 第 4 页 共 7 页 写入配置文件 比如 bash profile 中 2 ls wc l 的实现的功能是什么 统计当前目录下文件的个数 3 命令 grep a zA Z 5 home grep 0 9 的作用是什么 列出 home 目录下所有文件中符合 条件 包含连续 5 个字母并且以数字结尾的字符串 的所有行 注意 结果会显示出哪个文件的哪一行含 有符合这个条件的字符串 4 三种引号 双引号 单引号 倒引号 的区别是什么 答 见课件 5 如果用户 student 登陆 bash 后想设置自己的环境变量 也就是修改后的配置仅仅作用于 student 用户 应当 修改哪个配置文件 bash profile 或 bashrc 6 PATH 环境变量的作用是什么 1 设置用户环境 为何设置环境变量时还需要使用 export 2 将环 境变量送入进程转出区 成为公有变量 7 Bash 脚本文件开头为何一般写上 bin bash 使 shell 能够识别该程序并正确执行 8 在目录 home sfj bin 下写好脚本后 假设文件名为 abc 权限为 rw r r 为了让脚本可以执行 需要敲 入什么命令 1 chmod x abc 如果想执行当前目录下的这个脚本文件 不需要参数 一般需要敲入命令 2 abc 如果当前目录是 home 则想执行脚本文件 abc 则需要敲入命令 3 home abc 如果想 在任何目录下执行这个脚本文件时不加路径就可以执行这个命令 则需要如何实现 4 需要将路径 home sfj bin 加入环境变量 PATH 中 最好加入当前路径 也就是 PATH PATH 9 如果一个脚本文件名为 kk 执行时需要敲入参数 假设敲入 kk 1 2 3 则对这个程序而言 0 的值是 1 kk 1 的值是 2 1 2 的值是 3 2 如果需要设置 1 为 6 2 为 7 需要如何实现 4 set 6 7 10 假设脚本文件中有一个数组 person 包含 3 个元素 想输出该数组第 1 个元素的值 应当写代码 echo person 0 11 脚本文件中有一行代码为 read m n 含义是什么 从键盘输入两个值给 m 和 n 12 echo 的 n 选项的作用是 让光标停在命令中所列字符串的后面 13 set x 的含义是 首先显示脚本程序的代码行 然后显示执行结果 14 调试 bash 程序的一般技巧是什么 答 1 使用 echo 打印一些变量 2 使用 set x 命令便于观察程序代码和执行结果 3 借助编辑软件的帮助 比如 vi vim 提供了语法高亮功能 通过字符的颜色判断输入是否正确 15 编程题 1 编写一个 bash 程序 该程序第一个参数给出文件的路径 第 2 个参数是文件名 程序要求判断目录和 文件是否存在 而且文件类型是否是普通文件 如果是则显示该文件的内容 否则显示出相关的出错信息并退 出 第 1 2 3 4 5 章答案 第 5 页 共 7 页 参考答案 注意 后面为注释语句 bin bash 根据参数 1 的路径进入目录 如果目录不对 则该行代码执行失败 返回值不是 0 说明执 行失败 表示上一条命令的返回值 因此给出提示信息 说明路径错误 cd 1 if ne 0 then echo the path is not correct exit 1 fi 根据参数 2 判断该文件是否满足要求 if f 2 then cat 2 else echo the file is not a common file or not exist exit 2 fi 2 编写一个 bash 程序 使用数组形式存放 5 个城市的名字 然后利用 for 循环分别打印出这几个城市的名 字 参考答案 bin bash city 1 2 3 4 5 for c in city do echo c done 3 使用 awk 给一个文件 文件名为 a dat 的每行添加行号 将添加行号后的文件存为 b dat 参考答案 awk print NR 0 a dat b dat 4 使用 awk 输出一个文件 文件名为 c dat 的总行数 参考答案 awk END print NR c dat 第六章第六章 一 判断题 1 gcc 只能编译 c c 程序 2 假设 gcc 编译时有两个选项 比如一个是 c 一个是 p gcc gc test c 和 gcc g c test c 的含义是相同的 3 gcc o test test c 和 gcc test c o test 的作用是一样的 二 填空题 1 c 程序的头文件 比如 stdio h 位于什么目录下 usr include 库文件一般在什么目录下 lib 和 usr lib 2 如果一个源文件名为 test c 敲入命令 indent kr test c o test1 c 该命令的作用是 将源文件格式调整为 linux 核心风格 第 1 2 3 4 5 章答案 第 6 页 共 7 页 3 gcc 的编译的四个阶段是 预处理 编译 汇编 链接 4 Linux 的库文件命名上有什么规定 开头 lib 文件最后静态库 a 共享库 so 5 假定文件 lizi c lizi c 代码第一行是 include lizi h lizi h 与 lizi c 在同一个目录下 使用 gcc lizi c 后生 成的文件名为 a out 敲入 gcc c lizi c 后生成的文件名为 lizi o 如果想使生成的可执行文件的名字为 lizi 则如何实现 gcc lizi c o lizi 如果 lizi h 与 lizi c 不在同一个目录下 lizi h 位于 home kk 目录下 如果编译该文件 并让生成可执行文件名 字为 lizi 应当敲入命令 gcc lizi c o lizi I home kk 6 如果文件 k c 中使用了 usr kk lib 目录中的库文件 libx11 so 则如果编译该文件 并想让生成的可执行文件名 为 kkk 应当敲入命令 gcc k c L usr kk lib lx11 o kkk 7 gcc main c sub1 c sub2 c o prog 的作用是 编译 main c sub1 c sub2 c 生成可执行文件 prog gcc c main c gcc c sub1 c gcc c sub2 c gcc o prog main o sub1 o sub2 o sub3 o 的作用是 编译 main c sub1 c sub2 c 生成相关的目标文件和可执行文件 prog 两者的区别是 当修改部分文件时 后者的效率更高 8 使用 make 和 makefile 的意义是什么 有利于大型项目的组织 提高编译的效率 9 如果一个文件 名为 makefile 文件的内容为 prog prog o subr o gcc o prog prog o subr o prog o prog c prog h gcc c I prog c subr o subr c gcc c subr c clean rm f prog o 则 prog prog o subr o 的含义是什么 目标文件 相依文件 gcc o prog prog o subr o 前面是 tab 键 该行的作用是什么 实现上面一行的目标 如果敲入命令 make clean 则实现的功能是什么 rm f prog o 如果当前目录下没有任何的 o 文件 则敲入 make prog 实现的功能是什么 编译文件 生成可执行文件 prog 执行的语句为 gcc c I prog c gcc c subr c gcc o prog prog o subr o 为什么 因为 make 会根据 makefile 文件分析依赖关系 从而执行相关的命令 如果该文件改名为 mymkfile 则 make 想使用该文件 并实现同上面 make clean 一样的功能 则应当如何实 现 make f mymkfile clean 10 如果源代码是 test c 为了支持调试 编译时需要使用什么选项 g 假设可执行文件的名字是 test 则如 何进入 gdb 敲入命令 gdb test 进入 gdb 后如何启动程序 start 或 run gdb 中查看源代码的命令是 list step 和 next 命令的区别是 step 会进入函数内部 continue 的作用是 程序继续执行直到遇到断 点 设置断点的命令是 break print 和 display 的区别是 display 显示一直存在 直到用 undisplay 命 令取消 而 print 的每次显示都需要使用 print 命令 退出 gdb 的命令是 quit 如何在 gdb 中使用 shell 命令 shell 命令 11 gprof 的作用是 可以用于分析函数 函数调用图 调用频率 可以识别出消耗资源最大的代码段 time 的作用是 报告程序的运行时间 12 valgrind 的作用是 检测数组访问错误和内存泄漏 第 1 2 3 4 5 章答案 第 7 页 共 7 页 三 思考题 如果一个程序有四个源文件 a c b c c c d c 其中 b c 和 d c 需要头文件 defs h c c 需要头文件 k h 设 生成的可执行文件的名字是 prog 编写一个 makefile 文件 prog a o b o c o d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论