linux考试题(内付答案版)

上传人:第*** 文档编号:32688996 上传时间:2018-02-12 格式:DOC 页数:15 大小:62.50KB
返回 下载 相关 举报
linux考试题(内付答案版)_第1页
第1页 / 共15页
linux考试题(内付答案版)_第2页
第2页 / 共15页
linux考试题(内付答案版)_第3页
第3页 / 共15页
linux考试题(内付答案版)_第4页
第4页 / 共15页
linux考试题(内付答案版)_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《linux考试题(内付答案版)》由会员分享,可在线阅读,更多相关《linux考试题(内付答案版)(15页珍藏版)》请在金锄头文库上搜索。

1、1一:基本命令部分1、查找系统中所有文件长度为0的普通文件,并列出它们的完整路径;find / -emptyfind / -size 0 type ffind -type f -size 0 -exec ls -l ;-type f:普通文件 -size 0:长度0 2、查找/zsh目录中更改时间在7日以前的普通文件,并在删除之前询问它们;find zsh -type f -mtime +7 -ok rm ;-mtime +7:7天前 -ok:删除前询问3、myfile.html内容如下:This is what I meant.删除HTML标记,也就是要得到:This is what I m

2、eant.cat myfile.html | sed -e s/g -e s/g或cat myfile.html | sed s/g;s/g4、使用tr 命令将指定文件的空行删除tr -s n/dev/null9、解释命令:trap echo hello int INT。当您运行Ctrl+C 等中断时,会自动运行echo命令trap命令用于指定在接收到信号后将要采取的动作。常见的用途是在脚本程序被中断时完成清理工作。trap INT 表明忽略SIGINT信号,按Ctrl+C 也不能使脚本退出。10,强制结束指定进程号的进程2kill -9 进程号11,将某个文件的属性更改为只有root可读写执

3、行。chown root express(两条一起执行,这条是修改用户为root)chmod 700 hjx格式:- rwx - - 分三组,有的写1,即111 000 00012.查出系统中所有用户标识号大于99的用户cat /etc/passwd | awk BEGINFS=:if ($399) print $1用户标识符在passwd文件以:号分隔的第三个域 说明:输出passwd的内容到管道,使用awk,BEGINFS=:表示先设置使用分号划分域,如果$399,即第三个划分的域(用户标识)大于99,则输出$1(用户名)13.统计系统中用户标识号大于99的用户数cat /etc/pass

4、wd | awk BEGINFS=:;users=0if ($399) users+; END print users14 .按文件大小的降序列出目录中的所有文件ls -l | sort -nrk 5 或 ls -l | sort -grk 5-g表示按大小排列-r表示倒序-k5表示按第五域排序-n 依照数值的大小排序。-nrk 5即是按照数字方式倒序排序,根据文件属性的第5列即是文件大小排序15.将当前目录下的所有文件打包成一个文件。tar -czvf new.tar.gz .(正确的,后面 . 表示当前目录)tar -czvf hjx.tar.gz $(ls)tar:对文件目录进行打包备份

5、 -c 创建一个新的档案文件 -t 查看档案文件的内容 -x 分解档案文件的内容 -f 指定档案文件的名称 -v 显示过程信息 -z 采用压缩方式 二:分别使用sed和awk 实现下面的功能(使用express文件)16.在每一行后面增加一空行sed G expressG为把内容缓冲区内容添加当前行,当前内容缓冲区为空行awk print $0 n express(两种的效果一样的)17.设置文本中每一行后面有且只有一空行。sed /$/d;G express/$/d;表示遇到空行,则删除,d命令执行后不会继续执行下面的命令 G,而是直接读入下一3行重新执行/$/d;G进行处理。直到匹配到不是

6、空行才执行 G命令把hold space中的内容(此时为空)追加到文本的后面,然后默认输出。awk !/$/printf(%snn,$0) express!/$/即是不是空行的printf(,$0)表示输出当前处理的整行字符串,输出字符的格式”%snn”表示输出字符串,然后执行两个换行即空一行。18.在每行后面增加2行空行sed /$/d;G;G expressawk !/$/printf(%snnn,$0) express19.删除所有偶数行sed n;d expressn:读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。d:从模式空间(Pattern space)位置删除行。s

7、ed n;d 执行n时会首先输出当前处理行,然后读取下一行,并使用d命令删除。awk NR%2!=0print $0 expressNR:表示awk开始执行程序后所读取的数据行数相关解释:NR%2!=2表示不是偶数行20.在匹配The的行前插入空行sed /The/x;p;x expressx:交换pattern和hold spacep :打印pattern spacesed /The/x;p;x第一个x首先交换,这时pattern space为空,hold space为匹配/xx/这一行的内容,交换后使用p输出模式空间中的内容为空行,然后再换回来,保持pattern space为空,为下一次

8、处理做准备。awk if (/The/) printf(n%sn,$0); else print $0 expressawk if (/The/) printf(n%sn,$0);表示匹配到The的行,就使用printf函数输出$0表示整行字符串,输出的格式为”n%sn”表示先换行再输出,然后再换行,表示The之前空一行。21.输出行号,行号和正文间加冒号sed = express | sed N;s/ n/:/=表示打印当前行号 ,s/*/Strings/re/string把n 替换成“:”N :追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行号码。后一个sed 实现将下一行读

9、取进模式空间,用:号匹配换行符awk printf(%d:%sn,NR,$0) express%d将替换为NR%s将替换为$022.对文件中的所有非空行编号sed /./= express | sed /./N;s/n/:/4N:追加下一个输入行到模式空间后面并在二者间嵌入一个“n”,改变当前行号码。=:打印当前行号. 匹配一个非换行符的字符/./=表示第一个字符是非换行字符的输出行号, sed /./N;s/n/:/中N读取下一行(行的内容)并在两行之间插入n,然后再使用s/re/string 把n替换成“:”awk if (/./) printf(%d:%sn,NR,$0);else pr

10、int $0 expressNR:表示awk开始执行程序后所读取的数据行数printf(%d:%sn,NR,$0) 输出,格式为:十进制有符号整数 :当前处理的行所包含的字符串整个语句表示:如果不是空行,则调用printf函数以“数字:字符串+换行”的形式输出当前处理行号了整行内容,否则,直接输出当前处理的整行内容。23.计算行号(模拟 “wc -l”)sed -n $= expresssed相关的命令参数:-n, -quiet, -silent 安静模式,取消默认输出。$ 锚定行的结束 如:/sed$/匹配所有以sed 结尾的行。= 打印当前行号$=表示打印最后一行的行号,-n 表示安静模式

11、,不会输出其他行的相关内容awk END print NR expressawk相关的知识点:BEGIN和END在awk 中两个特别的表达式,BEGIN和END ,这两者都可用于pattern中,提供BEGIN和END 的作用是给程序赋予初始状态和在程序结束之后执行一些扫尾的工作。任何在BEGIN之后列出的操作(在内)将在awk开始扫描输入之前执行,而END之后列出的操作将在扫描完全部的输入之后执行。因此,通常使用BEGIN来显示变量和预置(初始化)变量,使用 END来输出最终结果。所以awk END print NR也就是在读取到最后一行之后,才输出对于的行号,也就是输出该文件的行数。24.

12、模拟dos2unixsed s/r/g expressdos expressdos1 使用s/re/string替换多余的 r,然后默认输出模式空间中的数据g:表示行内全面替换。awk gsub(/r/,)print $0 express express2gsub(r,s,t)在字符串t中用字符串s和正则表达式 r匹配的所有字符串。返回值是替换的个数。如果没有给出t,默认是$0使用gsub把r替换成,然后再输出当前处理的整行字符串25.将所有good改为bad并打印且只打印该行sed -n s/good/bad/gp expressn为静默模式,p为打印awk gsub(good,bad)pr

13、int $0 express5gsub全面替换 使用gsub把good替换成bad,接着打印整行26.将包含is的行的good改为bad并打印且只打印该行sed -n /is/good/s/good/bad/gp express-n使用安静模式,/is/匹配包含is的行,/good/匹配包含is 的行中包含 good的行,s/good/bad/g ,把改行所有的good都替换成bad,然后使用p输出该行。awk if ($0/is/ print $0 express$0/is/表示使用第0个域匹配/is/正则表达式,第0个域保存的即是当前处理的整行数据。($0/is/ & $0/good/)就

14、是如果当前处理的整行同时包含is 和good的话就执行if里面的语句。if里面的语句使用gsub把匹配的good替换成bad,然后输出当前行。27.将不包含is的行的good改为bad并打印且只打印该行sed -n /is/!/good/s/good/bad/gp express-n使用安静模式,/is/匹配包含 is的行,然后使用!取得没有被匹配到的行进行操作,/good/表示从没有被匹配到的行中匹配包含good的行,s/good/bad/g,把改行所有的good都替换成bad,然后使用p输出该行。awk if ($0!/is/ print $0 express$0!/is/表示使用第0个域

15、匹配/is/正则表达式,找出匹配不到的行继续进行处理。第0个域保存的即是当前处理的整行数据。($0!/is/ & $0/good/)就是如果当前处理的整行不包含is和包含good的话就执行if里面的语句。if里面的语句使用gsub把匹配的good替换成bad,然后输出当前行。28.显示文件中的前10行 (模拟“head” )sed 10q express输出10行后q表退出awk if (NR=0;j-)print Aj express31.显示文件中的最后10行 (模拟“tail”)sed -e :a -e $q;N;11,$D;ba expresssed方法相关命令参数:-e直接在指令列模式上进行 sed 的动作编辑,允许多台编辑。:a表示建立一个标签ab跳转命令,这个命令是无条件跳转ba表示跳转到标签a 处q退出Sed。N追加下一个输入行到模板块后面并在二者间嵌入一个 “n”,改变当前行号码。D删除模板块的第一行。11表示文件第十一行$!D表示如果不是最后一行则删除第一行。相关解释:首先创建一个a标签,然后不断执行这段代码:$q;N;11,$D;b

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 职业教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号