linux目录及文件管理操作

 1、分别用cat ac l三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处?

[root@localhost ~]# cat -n/etc/ssh/sshd_config   显示文件信息,对空白行进行标行

[root@localhost ~]# tac -n /etc/ssh/sshd_config   反向显示文件信息,对空白行进行标行

[root@localhost ~]# nl -n /etc/ssh/sshd_config    显示文件信息,不对空白行进行标行

2、分别用moreless查看/etc/ssh/sshd_config里面的内容,请用总结moreless两个命令的相同和不同之处?

[root@localhost ~]# more /etc/ssh/sshd_config   全屏分页显示文件内容

[root@localhost ~]# less /etc/ssh/sshd_config    全屏分页显示文件内容,/”可查找文件内容

3、将/etc/passwd文件中的前20行重定向保存到/root下改名为20_pass.txt,/etc/passwd文件中的后15行重定向保存到/root下改名为:pass_15.txt

[root@localhost ~]# head -20 /etc/passwd > /root/20_pass.txt

[root@localhost ~]# ls

20_pass.txt  anaconda-ks.cfg  公共  模板  视频  图片  文档  下载  音乐  桌面

[root@localhost ~]# tail -15 /etc/passwd > /root/pass_15.txt

[root@localhost ~]# ls

20_pass.txt  anaconda-ks.cfg  pass_15.txt  公共  模板  视频  图片  文档  下载  音乐  桌面

4、请用一个命令统计/etc/hosts文件包含有多少行?多少字节?多少单词数?

[root@localhost ~]# wc /etc/hosts

  2  10 158 /etc/hosts

5、练习使用grepegrep

5.1.通过grep管道工具过滤出ifconfig命令显示信息中的IP字段?

[root@localhost ~]# ifconfig | grep -o -E "inet [0-9.]+" | head -1

inet 192.168.100.198

5.2./etc/passwd文件中的前20行重定向保存到/root下名称为pass

[root@localhost ~]# head -20 /etc/passwd > /root/pass

[root@localhost ~]# ls

20_pass.txt  anaconda-ks.cfg  pass  pass_15.txt  公共  模板  视频  图片  文档  下载  音乐  桌面

5.3.过滤/etc/passwd文件中含有/sbin/nologin 的行并统计行数?

[root@localhost ~]# grep "/sbin/nologin" /etc/passwd | wc -l

35

5.4 过滤/etc/passwd文件中以sh结尾的行,及以 root开头的行,不显示包含login的行?

[root@localhost ~]# grep "sh$" /etc/passwd | grep "^root" |grep -v "login"

root:x:0:0:root:/root:/bin/bash

5.5 分别用grepegrep过滤出/etc/ssh/sshd_config文件中不包含“#”开头和空白的行?

[root@localhost ~]# grep -v "^#" /etc/ssh/sshd_config | grep -v "^$"

[root@localhost ~]# egrep -v "^#" /etc/ssh/sshd_config | egrep -v "^$"

6.1 通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.gz

[root@localhost ~]# tar -czvf /root/file.tar.gz /etc/passwd

tar: 从成员名中删除开头的“/

/etc/passwd

[root@localhost ~]# ls

20_pass.txt      file.tar.gz  pass_15.txt  模板  图片  下载  桌面

anaconda-ks.cfg  pass         公共         视频  文档  音乐

6.2通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.bz2

[root@localhost ~]# tar -cjvf /root/file.tar.bz2 /etc/passwd

tar: 从成员名中删除开头的“/

/etc/passwd

[root@localhost ~]# ls

20_pass.txt      file.tar.bz2  pass         公共  视频  文档  音乐

anaconda-ks.cfg  file.tar.gz   pass_15.txt  模板  图片  下载  桌面

6.3创建空文件夹/web/test1,并将file.tar.bz2 解包并释放到/web/test1目录下?

[root@localhost ~]# tar -xf file.tar.bz2  -C /web/test1

[root@localhost ~]# ls /web/test1/

[root@localhost /]# ls web/test1/etc

passwd

 

7.1 通过vi编辑/web/test1/passwd文件将文件里为root单词全部替换成benet

[root@localhost etc]# vi passwd

:% s/root/benet/g

7.2 通过vi编辑 删除pass文件第1510行。

 

7.3 vi中显示pass文件行号复制文件2 3 4行粘贴到以lp开头的行下。

 

7.4 通过vi编辑 查找文件内包含mail var等字符串,并记录所在行号。

Mail:12            var:4/5/8/12/15/21/23/25/28/29/31/34/36/37/39/40/41

7.5 通过vi编辑 快速跳转到文件的第二行,通过r 读取 /etc/hosts 文件的内容到第二行下。

7.6将更改后的文件使用vim另存为/root/new_pass

:w /root/new_pass

 

7.7new_pass文件压缩成gz格式并改名为npass.gz文件。

[root@localhost ~]# tar -czvf npass.gz /root/new_pass

tar: 从成员名中删除开头的“/

/root/new_pass

8统计/dev 目录下的文件数量。

[root@localhost etc]# cd /dev/

[root@localhost dev]# ls -al

[root@localhost dev]# ls -al |grep -v "^d" | wc -l

140

9.1/boot下查找文件名以vmlinuz开头的文件?

[root@localhost ~]# ls /boot/vmlinuz*

/boot/vmlinuz-0-rescue-6e2e1a50f0f14054bc3dbfef60ac5839  /boot/vmlinuz-3.10.0-229.el7.x86_64

9.2/boot下查找文件大小大于3M 小于 20M 的文件

[root@localhost ~]# find /boot -size +3M -a -size -20M

/boot/vmlinuz-3.10.0-229.el7.x86_64

/boot/vmlinuz-0-rescue-6e2e1a50f0f14054bc3dbfef60ac5839

/boot/initramfs-3.10.0-229.el7.x86_64.img

10 请详细写出构建本地yum仓库的步骤?并在每行命令后面用自己的话做上中文注释?

卸载光盘umount /dev/sr0

载光盘mount /dev/sr0 /media/

查看光驱文件:ls /media/

创建本地yum仓库文档:cd /etc/yum.r*

mkdir a/

mv C* a/

设置仓库名称:name=cdrom

指定rpm包的位置:baseurl=file///media

启用本地yum仓库:enabled=1

禁用gpg校验:gpgcheck=0

清除yum缓存:yum -y clean all

重建yum缓存:yum makecache

查询是否安装vsftpd: rpm -q vsftpd

yum安装:yum -y install vsftpd

查询是否安装:vsftpdrpm -q vsftpd

yum卸载vsftpd: yum -y remove vsftpd

查询是否卸载vsftpdrpm -q vsftpd

11、用yum命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?

12、用rpm命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?

root@localhost ~]# rpm -iv /media/Packages/vsftpd-3.0.2-9.el7.x86_64.rpm

软件包准备中...

vsftpd-3.0.2-9.el7.x86_64

[root@localhost ~]# rpm -q vsftpd

vsftpd-3.0.2-9.el7.x86_64

[root@localhost ~]# rpm -ev vsftpd

软件包准备中...

vsftpd-3.0.2-9.el7.x86_64

[root@localhost ~]# rpm -q vsftpd

未安装软件包 vsftpd

13、通过源码方式通过解包、配置、编译、安装四个步骤安装源码软件httpd-2.2.17.tar.gz?并进行测试?

原文地址:https://www.cnblogs.com/990114-jhc/p/11254834.html