1.创建目录/data/oldboy,并且在该目录下创建oldboy.txt,然后在文件oldybos.txt里写入内容“inet addr:192.168.228.128 Bcast:192.168.228.255 Mask:255.255.255.0”(不包含引号)
[root@centos6 ~]# mkdir -p /data/oldboy [root@centos6 ~]# ifconfig|sed -n "2p" inet addr:192.168.228.128 Bcast:192.168.228.255 Mask:255.255.255.0 [root@centos6 ~]# echo inet addr:192.168.228.128 Bcast:192.168.228.255 Mask:255.255.255.0 > /data/oldboy/oldboy.txt [root@centos6 ~]# cat /data/oldboy/oldboy.txt inet addr:192.168.228.128 Bcast:192.168.228.255 Mask:255.255.255.0
2.将题1中的oldboy.txt文件内容通过命令过滤只输出如下内容:192.168.228.128 192.168.228.255 255.255.255.0
[root@centos6 ~]# awk -F "[ :]+" '{print $3" "$5" "$7}' /data/oldboy/oldboy.txt 192.168.228.128 192.168.228.255 255.255.255.0
3.将题一中的oldboy目录移动到/tmp下,并将/etc/passwd文件复制到/tmp/oldboy下
[root@centos6 ~]# mv /data/oldboy /tmp [root@centos6 ~]# cp /etc/passwd /tmp/oldboy/ [root@centos6 ~]# ls /tmp /data /data: /tmp: gconfd-gdm gnome-system-monitor.root.3744090514 orbit-gdm pulse-cZ0iSONvmaCz virtual-root.jHrvcl yum.log gconfd-root oldboy
4.在题3的基础上使用awk去passwd文件中的第10行到20行的第三列重定向到/tmp/oldboy/test.txt中
[root@centos6 ~]# awk -F ":" 'NR>9&&NR<21{print $3}' /tmp/oldboy/passwd > /tmp/oldboy/test.txt [root@centos6 ~]# cat /tmp/oldboy/test.txt 10 11 12 13 14 99 81 113 32 499 170
5.在题3的基础上要求用命令rm -f删除文件时,提示如下“Do not use rm command”,并使该效果永久生效
[root@centos6 ~]# alias rm='echo Do not use rm command' [root@centos6 ~]# cd /tmp/oldboy/ [root@centos6 oldboy]# ls oldboy.txt passwd test.txt [root@centos6 oldboy]# rm -f test.txt Do not use rm command -f test.txt [root@centos6 oldboy]# echo "alias rm='echo Do not use rm command'" >> /etc/bashrc /etc/profile [root@centos6 oldboy]# alias alias -f='Do' alias cdnet='cd /etc/sysconfig/network-scripts/' alias cp='cp -i' alias l.='ls -d .* --color=auto' alias ll='ls -l --color=auto' alias ls='ls --color=auto' alias mv='mv -i' alias rm='echo Do not use rm command' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' [root@centos6 oldboy]# exit [root@centos6 ~]# cd /tmp/oldboy [root@centos6 oldboy]# rm -f test.txt Do not use rm command -f test.txt
6.在题3的基础上,删除/tmp/oldboy/目录下除passwd以外的其他文件
[root@centos6 oldboy]# find -type f ! -name "passwd"|xargs \rm -f [root@centos6 oldboy]# ls passwd
7.在题3的基础上,打印/etc/passwd文件中的第2-5行(不低于三种方法)
方法一
[root@centos6 oldboy]# head -5 /etc/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
方法二
[root@centos6 oldboy]# awk "NR>1 && NR<6" /etc/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
方法三
[root@centos6 oldboy]# sed -n '2,5p' /etc/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和/bash位置。
[root@centos6 oldboy]# awk -F ":" '{print $7":"$2":"$3":"$4":"$5":"$6":"$1}' passwd
9.把/data目录及其子目录下所有以拓展名.txt结尾的文件中包含oldgirl的字符串全部替换为oldboy
[root@centos6 data]# find -type f -name "*.txt" | xargs sed -i 's#oldgirl#oldboy#g'
10.查找/oldboy下所有7天以前以log结尾的大于1M的文件,并移动到/tmp下
[root@centos6 oldboy]# find -type f -name "*.log" -size +1M -mtime +7 -exec mv {} /tmp \;