day12-重定向概念作业

1.列出你所知道的所有vi,vim编辑器的编辑模式,普通模式,命令模式。这三种模式下的操作指令

编辑模式:i  a  o  I  A  O

普通模式:yy p gg Dg dd r X x $ 0 ^ R D

命令模式:set nu  set ai  set ic  :wq :q :wq! :q! :w :w!

2.在当前系统能ping通百度的情况下,使用命令(curl cip.cc)查看(公网IP)当前网络出口地址,

取出关键字"数据二"所在的行,以空格为分隔符,取出第三列的内容

[root@oldboy ~]# curl -s  cip.cc | grep "数据二" | awk '{print $3}'

北京市朝阳区

3.linux系统存放所有用户密码信息的文件是?

/etc/shadow

5.存放用户账户信息的配置文件是?

/etc/passwd

6.改变文件所有者的命令为B

A.chmod

B.chown

C.cat

D.vim

7.假设公司研发部的用户David和Peter属于组A,财务部的用户life和laowang属于组B

(1)建立相应的用户和组,并设置相应的对应关系

[root@oldboy ~]# groupadd A

[root@oldboy ~]# groupadd B

[root@oldboy ~]# useradd David -g A

[root@oldboy ~]# useradd Peter -g A

[root@oldboy ~]# useradd life -g B

[root@oldboy ~]# useradd aowang -g B

(2)建立目录office_a,该目录里面的文件只能由研发部人员读取、增加、删除、修改以及执行,

其他用户不能对该目录进行任何操作

[root@oldboy ~]# mkdir office_a

[root@oldboy ~]# ll office_a -d

drwxr-xr-x. 2 root root 6 Aug  9 17:47 office_a

[root@oldboy ~]# chown .A office_a

[root@oldboy ~]# chmod 070 office_a/

[root@oldboy ~]# ll -d office_a/

d---rwx---. 2 root A 6 Aug  9 17:47 office_a/

(3)建立目录office_b,该目录里面的文件只能由财务部人员读取、增加、删除、修改以及执行,

其他用户不能对该目录进行任何操作

[root@oldboy ~]# mkdir office_b

[root@oldboy ~]# chown .B office_b/

[root@oldboy ~]# ll -d office_b/

drwxr-xr-x. 2 root B 6 Aug  9 17:56 office_b/

[root@oldboy ~]# chmod 070 office_b/

[root@oldboy ~]# ll -d office_b/

d---rwx---. 2 root B 6 Aug  9 17:56 office_b/

(4)建立目录office_c,该目录里面的文件研发部人员可以读取、增加、删除、修改以及执行,

其他部门只能做查看操作

[root@oldboy ~]# mkdir office_c

[root@oldboy ~]# chown .A office_c

[root@oldboy ~]# chmod 074 office_c

[root@oldboy ~]# ll -d office_c

d---rwxr--. 2 root A 6 Aug  9 17:57 office_c

(5)建立目录office_d,该目录里面的文件只有研发部的经理David拥有所有操作权限,

研发部的其他人只有查看权限,其他部门不能进行任何操作

[root@oldboy ~]# groupadd C

[root@oldboy ~]# usermod Peter -g C

[root@oldboy ~]# ll -d office_d

drwxr-xr-x. 2 root root 6 Aug  9 18:25 office_d

[root@oldboy ~]# chown David.C office_d

[root@oldboy ~]# chmod 740 office_d

[root@oldboy ~]# ll -d office_d

drwxr-----. 2 David C 6 Aug  9 18:25 office_d

8.新建目录/web1,/web2,/web3

(1)更改/web1目录的权限,使其他用户对它没有任何权限;

[root@oldboy ~]# mkdir /web1

[root@oldboy ~]# mkdir /web2

[root@oldboy ~]# mkdir /web3

[root@oldboy ~]# ll -d /web1

drwxr-xr-x. 2 root root 6 Aug  9 18:44 /web1

[root@oldboy ~]# chmod 750 /web1

[root@oldboy ~]# ll -d /web1

drwxr-x---. 2 root root 6 Aug  9 18:44 /web1

(2)更改/web2目录的权限,使所属组对它拥有读写执行权限;

[root@oldboy ~]# ll -d /web2

drwxr-xr-x. 2 root root 6 Aug  9 18:44 /web2

[root@oldboy ~]# chmod 775 /web2

[root@oldboy ~]# ll -d /web2

drwxrwxr-x. 2 root root 6 Aug  9 18:44 /web2

(3)更改/web3目录的权限,任何用户都可以读写,但是在/web3目录中创建的任何文件都属于grp1组

[root@oldboy ~]# ll -d /web3

drwxr-xr-x. 2 root root 6 Aug  9 18:44 /web3

[root@oldboy ~]# chmod 756 /web3

[root@oldboy ~]# chmod g+s /web3

[root@oldboy ~]# groupadd grp1

[root@oldboy ~]# chown .grp1 /web3

[root@oldboy ~]# touch /web3/12345

[root@oldboy ~]# ll /web3/12345

-rw-r--r--. 1 root grp1 0 Aug  9 18:51 /web3/12345

9.新建用户zhangsan,lisi,wangergou,三个用户都属于同一个用户组f4,密码都为oldboy

[root@oldboy ~]# groupadd f4

[root@oldboy ~]# useradd zhangsan -g f4

[root@oldboy ~]# useradd lisi -g f4

[root@oldboy ~]# useradd wangergou -g f4

[root@oldboy ~]# echo "oldboy" | passwd --stdin zhangsan

[root@oldboy ~]# echo "oldboy" | passwd --stdin lisi

[root@oldboy ~]# echo "oldboy" | passwd --stdin wangergou

(1)上述用户和组都能在/data/code目录,访问,创建,删除文件,其他用户无法访问该目录

[root@oldboy ~]# mkdir /data/code

[root@oldboy ~]# ll -d /data/code

drwxr-xr-x. 2 root root 6 Aug  9 18:59 /data/code

[root@oldboy ~]# chmod 770 /data/code/

[root@oldboy ~]# chown .f4 /data/code/

(2)code目录下创建的所有文件自动归属于f4组所有

[root@oldboy ~]# chmod g+s /data/code/

[root@oldboy ~]# ll -d /data/code/

drwxrws---. 2 root f4 6 Aug  9 19:05 /data/code/

[zhangsan@oldboy code]$ touch 123

[zhangsan@oldboy code]$ ll 123

-rw-r--r--. 1 zhangsan f4 0 Aug  9 19:06 123

(3)现在新增了一批用户,属于默认组,需要开放其他用户在code目录的读权限

[root@oldboy ~]# chmod 774 /data/code/

[root@oldboy ~]# ll -d /data/code/

drwxrwsr--. 2 root f4 17 Aug  9 19:06 /data/code/

(4)新增的所有其他用户在code目录下创建的文件自动归属f4组

可以的话就是1000

[root@oldboy ~]# chmod 2777 /data/code/

10.有两个用户组,分别为python组、Linux组,python组的人可以修改读取python组的文件,

但不能让Linux组的人读取;Linux组的人可以修改读取Linux组的文件,但不能让python组的人读取。

[root@oldboy ~]# groupadd python                            chmod 1757 /opt

[root@oldboy ~]# groupadd Linux           

[root@oldboy ~]#

11.输入df -h,取出当前系统根分区剩余可用磁盘空间

[root@oldboy ~]# df -h | awk 'NR==2 {print $4}'

37G

12.显示/proc/meminfo文件中以s开头的行(忽略大小写)

[root@oldboy ~]# grep -i "^s" /proc/meminfo

SwapCached:            0 kB

SwapTotal:      1048572 kB

SwapFree:        1048572 kB

Shmem:              9864 kB

Slab:              64624 kB

SReclaimable:      25640 kB

SUnreclaim:        38984 kB

13.在当前目录中新建文件text,假设该文件的权限为614。现要求设置该文件属主(u)增加执行权限,

属组(g)增加写权限,其他用户(o)删除读权限,应该如何操作,另外修改后的权限用字母应该如何表示

[root@oldboy ~]# chmod 614 text

[root@oldboy ~]# chmod 730 text

[root@oldboy ~]# ll text

-rwx-wx---. 1 root root 0 Aug  9 20:49 text

14.在当前目录中创建目录aaa,并把该目录的权限设置为只有文件主有读、写和执行权限

[root@oldboy ~]# mkdir aaa

[root@oldboy ~]# chmod 700 aaa

[root@oldboy ~]# ll aaa -d

drwx------. 2 root root 6 Aug  9 20:53 aaa

15.设某文件myfile的权限为-rw-r--r--,若要增加所有人可执行的权限,应该怎么做

chmod 777 myfile

16.输入时间命令"date"将当前系统时间输出到/data/1.txt

[root@oldboy ~]# date >/data/1.txt

[root@oldboy ~]# cat /data/1.txt

Fri Aug  9 20:55:07 CST 2019

17.输入时间命令"date"将当前系统时间追加到/data/1.txt

[root@oldboy ~]# date >>/data/1.txt

[root@oldboy ~]# cat /data/1.txt

Fri Aug  9 20:55:07 CST 2019

Fri Aug  9 20:55:32 CST 2019

18.在当前系统能ping通百度的情况下,使用" ping -c3 baidu.com "将返回的信息输出到/data/1.txt

[root@oldboy ~]# ping -c3 baidu.com > /data/1.txt

[root@oldboy ~]# cat /data/1.txt

19.接上题,将/data/1.txt中,出现关键字time的第一行取出,

然后将该行中所消耗的延时信息取出(time等于的数值就是消耗的延时信息)

[root@oldboy ~]# awk 'NR==2 {print $(NF-1),$NF}' /data/1.txt | awk -F "=" '{print $2}'

7.72 ms

20.使用“ls /ta”将错误的信息输出到/data/1.txt

[root@oldboy ~]# ls /ta 2>>/data/1.txt

[root@oldboy ~]# tail -1 /data/1.txt

ls: cannot access /ta: No such file or directory

21.将/data/1.txt的文件内容,标准输出到/data/2.txt

[root@oldboy ~]# cat /data/1.txt > /data/2.txt

[root@oldboy ~]# cat /data/2.txt

22.解释以下linux标准输入输出中文件描述符的含义

0标准输入

1标准输出

2错误输出

23.解释以下linux标准输入输出中符号的含义

>标准输出覆盖重定向

>>标准输出追加重定向

2>错误输出覆盖重定向

2>>错误输出追加重定向

&>标准输出错误输出混合覆盖重定向

&>>标准输出错误输出混合追加重定向

24.使用"seq 10 50"将以0结尾的行标准输出到3.txt

[root@oldboy ~]# seq 10 50 | grep "0$" > 3.txt

[root@oldboy ~]# cat 3.txt

10

20

30

40

50

25.把/etc/fstab文件内容重定向到/tmp目录下文件名为fstab.out

[root@oldboy ~]# cat /etc/fstab > /tmp/fstab.out

26.把字符"hello world"追加到/tmp/fstab.out文件尾部

[root@oldboy ~]# echo "hello world" >> /tmp/fstab.out

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容