1、创建目录/data/oldboy,并且在该目录下创建文件oldboy.txt,然后在文件oldboy.txt里写入内容“inet addr:192.168.8.10 Bcast:192.168.8.255 Mask:255.255.255.0”(不包含引号)。
解答:
[[email protected] ~]#mkdir -p /data/oldboy [[email protected] ~]# ls -d /data/oldboy/ /data/oldboy/ [[email protected] ~]#touch /data/oldboy/oldboy.txt [[email protected] ~]# ls-l /data/oldboy/oldboy.txt -rw-r--r--. 1 rootroot 0 May 1 21:06/data/oldboy/oldboy.txt [[email protected] ~]#echo "inet addr:192.168.8.10 Bcast:192.168.8.255 Mask:255.255.255.0" >/data/oldboy/oldboy.txt [[email protected] ~]#cat /data/oldboy/oldboy.txt inetaddr:192.168.8.10 Bcast:192.168.8.255 Mask:255.255.255.0
2、将题1中的oldboy.txt文件内容通过命令过滤只输出如下内容:
192.168.8.10 192.168.8.255 255.255.255.0
解答:
awk方法
[[email protected] ~]#awk -F ‘[ :]+‘ ‘{print $3" "$5" "$7}‘/data/oldboy/oldboy.txt 192.168.8.10192.168.8.255 255.255.255.0
sed方法
[[email protected] ~]# sed -n ‘[email protected]^.*addr:\(.*\)Bcast:\(.*\) Mask:\(.*\)@\1 \2 \[email protected]‘ /data/oldboy/oldboy.txt 192.168.8.10 192.168.8.255 255.255.255.0
3、将题1中的oldboy目录移动到/tmp目录下,并将/etc/passwd文件复制到/tmp/oldboy下。
解答:
[[email protected] ~]# cd/data/ [[email protected] data]#cp -a oldboy /tmp [[email protected] data]#cp /etc/passwd /tmp/oldboy/ [[email protected] data]#ls -l /tmp/oldboy/ total 8 -rw-r--r--. 1 rootroot 64 May 1 21:12 oldboy.txt -rw-r--r--. 1 rootroot 1056 May 1 21:32 passwd
4、在题3的基础上使用awk取passwd文件的第10行到20行的第三列重定向到/tmp/oldboy/test.txt文件里。
解答:
[[email protected] data]#cd /tmp/oldboy/ [[email protected]]# awk -F ":" ‘NR>9&&NR<21{print $3}‘ passwd>test.txt [[email protected]]# cat -n test.txt 1 10 2 11 3 12 4 13 5 14 6 99 7 81 8 69 9 173 10 68 11 38
5、在题3的基础上要求用命令rm删除文件时提示如下禁止使用rm的提示,并使该效果永久生效。
[[email protected]]#rm –f passwd
Do not userm command.
解答:
[[email protected] ~]#echo " alias rm=‘echo "Do not use rm command."‘ ">>/etc/profile [[email protected] ~]# [[email protected] ~]# [[email protected] ~]#tail -1 /etc/profile alias rm=‘echo Do not use rm command.‘ [[email protected] ~]#source /etc/profile [[email protected] ~]# rm-f * Do not use rmcommand. -f anaconda-ks.cfg install.log.syslog
6、在题3的基础上,删除/tmp/oldboy/下除passwd以外的其他文件。
解答:
[[email protected]]# ls oldboy.txt passwd test.txt [[email protected]]# rm oldboy.txt test.txt [[email protected]]# find ./ -type f ! -namepasswd|xargs rm -f [[email protected]]# ls passwd
7、在题3的基础上,请打印/etc/passwd文件中的第2—5行(不低于三种方法)
解答:
法一
[[email protected]]# head -5 passwd |tail -4 bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
法二
[[email protected]]# sed -n 2,5p passwd bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
法三
[[email protected]]# awk ‘NR>1&&NR<6{print $0}‘ passwd bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
8、在题3的基础上,使用命令调换passwd文件里root位置和/bin/bash位置?即将所有的第一列和最后一列位置调换?
默认:root:x:0:0:root:/root:/bin/bash
修改后:/bin/bash:x:0:0:root:/root:root
[[email protected]]# head -1 passwd|sed -n‘[email protected]\(.*\):x:0:0:root:/root:\(.*\)@\2:x:0:0:root:/root:\[email protected]‘ /bin/bash:x:0:0:root:/root:root
9、把/data目录及子目录下所以以扩展名.txt结尾的文件中包含oldgirl的字符串全部替换为oldboy。
解答:
模拟数据
[[email protected] data]#echo oldboy >a.log [[email protected] data]#echo oldboy >b.log [[email protected] data]#echo old >c.log
替换
[[email protected] data]#find ./ -type f -name "*.log"|xargs sed -i ‘[email protected]@[email protected]‘ [[email protected] data]#cat a.log b.log c.log oldgirl oldgirl old
10、查找/data/oldboy下所有7天以臆以log结尾的大于1M的文件移动/tmp下
解答:
模拟数据
[[email protected] oldboy]# ls -lh total 5.3M -rw-r--r--. 1 root root 0 Apr 20 00:00 2016-04-20-1.log -rw-r--r--. 1 root root 1.8M Apr 20 00:04 2016-04-20.log -rw-r--r--. 1 root root 1.8M Apr 28 00:00 2016-04-28.log -rw-r--r--. 1 root root 1.8M May 3 16:58 2016-05-03.log -rw-r--r--. 1 root root 64 May 1 21:12 oldboy.txt
操作
[[email protected] oldboy]# find ./ -type f -mtime +7 -a -size +1M -exec mv ‘{}‘ /tmp \; [[email protected] oldboy]# ls 1M 2016-04-20-1.log 2016-04-28.log 2016-05-03.log oldboy.txt [[email protected] oldboy]# ls -lh /tmp/ total 1.8M -rw-r--r--. 1 root root 1.8M Apr 20 00:04 2016-04-20.log
11、什么是linux的运行级别,请描述linux的运行级别不同数字的含义?(附加题)
Linux运行级别
启动系统的级别,类似于windows的安全模式,带网络的安全模式等等,有多种启动模式0-6.
Linux0-6的启动含义
运行级别0:关机
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式(常用)
运行级别4:保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:重启
12、请描述buffer和cache的区别?(附加题)
buffer是即将要被写入磁盘的,而cache是被从磁盘中读出来的。
13、请说出你知道的下列字符在linux里可以代表的意义。(附加题)
~ - . .. | > >> < << !
~ :家目录
- :上次目录
. :当前目录
.. :上级目录
| :管道
> :标准输出重定向
>> :标准输出追加重定向
< :标准输入重定向
<< :标准输入追加重定向
! :非