文件管理命令练习题


1.请在/root目录下创建出自己名字开头.txt结尾的10个文件(例:zls1.txt)

[root@moban ~]# ll
total 0
[root@moban ~]# touch lsh{1..10}.txt
[root@moban ~]# ll
total 0
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh10.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh1.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh2.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh3.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh4.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh5.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh6.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh7.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh8.txt
-rw-r--r--. 1 root root 0 Apr  1 16:29 lsh9.txt

2.请在/root目录下创建出自己名字开头的10个目录(例:zls1)

[root@moban ~]# rm -rf ./*
[root@moban ~]# ll
total 0
[root@moban ~]# mkdir lls{1..10}
[root@moban ~]# ll
total 0
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls1
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls10
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls2
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls3
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls4
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls5
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls6
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls7
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls8
drwxr-xr-x. 2 root root 6 Apr  1 16:31 lls9

3.请将对应序号的文件复制到对应目录中

[root@moban ~]# touch jb.sh
[root@moban ~]# vi jb.sh
#!/bin/bash
# 将文件复制到对应目录
for ((i=1; i<=10; i++))
do
    cp lls$i.txt lls$i/
done

4.请将上题创建的10个目录中的1-5序号的目录剪切到/opt目录下

[root@moban lls1]# cd
[root@moban ~]# mv lls{1..5} /opt/
[root@moban ~]# ll /opt
total 0
drwxr-xr-x. 2 root root 22 Apr  1 16:44 lls1
drwxr-xr-x. 2 root root 22 Apr  1 16:44 lls2
drwxr-xr-x. 2 root root 22 Apr  1 16:44 lls3
drwxr-xr-x. 2 root root 22 Apr  1 16:44 lls4
drwxr-xr-x. 2 root root 22 Apr  1 16:44 lls5

5.请将网卡配置文件备份到同一个目录中,并以.bak结尾

[root@moban ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens33  /opt/ifcfg-ens33.bak
[root@moban ~]# ll /opt
total 4
-rw-r--r--. 1 root root 220 Apr  1 16:54 ifcfg-ens33.bak
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls1
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls2
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls3
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls4
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls5

6.请进入/tmp目录下,并将系统用户信息文件,拷贝到当前目录下

[root@moban ~]# cd /tmp
[root@moban tmp]# cp /etc/passwd .
[root@moban tmp]# ll
total 4
-rw-r--r--. 1 root root   0 Apr  1 15:30 5.abc
-rw-r--r--. 1 root root 851 Apr  1 16:55 passwd

7.请在/tmp目录下创建一个隐藏文件

[root@moban tmp]# touch .abc

8.请将上题中的隐藏文件,移动到/root目录下,并不再隐藏

[root@moban tmp]# touch .abc
[root@moban tmp]# mv .abc /root/1.abc
[root@moban tmp]# ll ~/
total 4
-rw-r--r--. 1 root root   0 Apr  1 16:57 1.abc
-rwxr-xr-x. 1 root root 101 Apr  1 16:44 jb.sh
drwxr-xr-x. 2 root root  23 Apr  1 16:44 lls10
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls6
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls7
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls8
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls9

9.现有如下文件内容,请使用命令将下面每个域名访问次数统计出来

http://www.driverzeng.com/index.html
http://www.driverzeng.com/1.html
http://post.driverzeng.com/index.html
http://mp3.driverzeng.com/index.html
http://www.driverzeng.com/3.html
http://post.driverzeng.com/2.html
[root@moban ~]# touch file.txt
[root@moban ~]# vi file.txt 
http://www.driverzeng.com/index.html
http://www.driverzeng.com/1.html
http://post.driverzeng.com/index.html
http://mp3.driverzeng.com/index.html
http://www.driverzeng.com/3.html
http://post.driverzeng.com/2.html
##你可以使用awk命令来实现这个任务。假设你的文件名是file.txt,包含了上述的网址访问记录,下面是统计访问次数的命令:
##   awk -F/ '{print $3}' file.txt | sort | uniq -c

这个命令的解释如下:

-F/:指定字段分隔符为斜杠/,这样每行的域名就会被分割成若干字段。
'{print $3}':打印每行的第三个字段,即域名部分。
sort:对域名进行排序。
uniq -c:统计相同的域名并计数。

[root@moban ~]# awk -F/ '{print $3}' file.txt | sort | uniq -c
      1 mp3.driverzeng.com
      2 post.driverzeng.com
      3 www.driverzeng.com

10.在用户家目录下创建6个文件 song1.mp3 ~ song6.mp3

[root@moban ~]# touch song{1..6}.mp3
[root@moban ~]# ll
total 8
-rw-r--r--. 1 root root   0 Apr  1 16:57 1.abc
-rw-r--r--. 1 root root 212 Apr  1 17:01 file.txt
-rwxr-xr-x. 1 root root 101 Apr  1 16:44 jb.sh
drwxr-xr-x. 2 root root  23 Apr  1 16:44 lls10
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls6
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls7
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls8
drwxr-xr-x. 2 root root  22 Apr  1 16:44 lls9
-rw-r--r--. 1 root root   0 Apr  1 17:10 song1.mp3
-rw-r--r--. 1 root root   0 Apr  1 17:10 song2.mp3
-rw-r--r--. 1 root root   0 Apr  1 17:10 song3.mp3
-rw-r--r--. 1 root root   0 Apr  1 17:10 song4.mp3
-rw-r--r--. 1 root root   0 Apr  1 17:10 song5.mp3
-rw-r--r--. 1 root root   0 Apr  1 17:10 song6.mp3

11.把上题创建的songX.mp3文件移动到Music目录下(不存在则创建)

root@moban ~]# mkdir music
[root@moban ~]# mv ./*.mp3 ./music/
[root@moban ~]# ll music
total 0
-rw-r--r--. 1 root root 0 Apr  1 17:10 song1.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:10 song2.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:10 song3.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:10 song4.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:10 song5.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:10 song6.mp3

12.在用户家目录下创建三个目录,分别为 friends,family,work

[root@moban ~]# cd
[root@moban ~]# mkdir firends family work

13.切换到friends目录下,把Music目录下的song1.mp3 ~ song3.mp3 拷贝到当前目录

[root@moban firends]# cp ~/music/* .
[root@moban firends]# ll
total 0
-rw-r--r--. 1 root root 0 Apr  1 17:35 song1.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:35 song2.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:35 song3.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:35 song4.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:35 song5.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:35 song6.mp3

14.切换到family目录下,把Music目录下的song4.mp3 ~ song6.mp3 移动到当前目录mv

[root@moban ~]# cd family/
[root@moban family]# mv ../firends/song{3..6}.mp3 .
[root@moban family]# ll
total 0
-rw-r--r--. 1 root root 0 Apr  1 17:35 song3.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:35 song4.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:35 song5.mp3
-rw-r--r--. 1 root root 0 Apr  1 17:35 song6.mp3

15.切换到用户主目录

cd
cd ~
reboot

16.删除family目录

[root@moban ~]# rm -fr family/
[root@moban ~]# 

17.切换到friends目录,把目录下的所有文件删除

[root@moban ~]# cd firends/
[root@moban firends]# rm -rf ./*

18.切换到主目录,把friends目录删除

[root@moban ~]# cd
[root@moban ~]# rm -rf firends/

19.请统计出/etc/passwd文件中,总共有多少个字符?

[root@moban ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
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
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin

附加题:

请使用 ifconfig 命令查看当前系统的IP地址(如果没有则安装)

1)请使用命令截取出ifconfig中的IP地址
2)请使用命令截取出ifconfig中的子网掩码
[root@moban ~]# yum install -y net-tools
[root@moban ~]# ifconfig | awk '/inet / {print $2}'
[root@moban ~]# ifconfig | awk '/inet / {print $4}'