有关linux查看的命令 及本机yum创建

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

 [root@localhost ~]# cat /etc/ssh/sshd_config    查看文件内容 可同时显示多个文件的内容

 [root@localhost ~]# tac /etc/ssh/sshd_config    以cat命令相反的顺序显示文件内容

 [root@localhost ~]# nl /etc/ssh/sshd_config     与cat -n命令相同 但对空白行不加序号

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

[root@localhost ~]# more /etc/ssh/sshd_config

[root@localhost ~]# less /etc/ssh/sshd_config

相同:全屏分页显示文件内容,可以翻页

不同:more只能向下翻页,less不仅可以分页还可以查找文件内容

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 /root/

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

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

[root@localhost ~]# ls /root/

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

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

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

2 /etc/hosts                 -l表示统计行数

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

158 /etc/hosts               -c表示统计的字节数

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

10 /etc/hosts                -w表示统计的单词数

5、练习使用grep和egrep

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

[root@localhost ~]# ifconfig  | grep "inet*"

        inet 192.168.100.198  netmask 255.255.255.0  broadcast 192.168.100.255

        inet6 fe80::20c:29ff:fe3f:87a  prefixlen 64  scopeid 0x20<link>

        inet 127.0.0.1  netmask 255.0.0.0

        inet6 ::1  prefixlen 128  scopeid 0x10<host>

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

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

[root@localhost ~]# ls /root

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

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

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

5

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

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

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

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

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

HostKey /etc/ssh/ssh_host_rsa_key

HostKey /etc/ssh/ssh_host_ecdsa_key

HostKey /etc/ssh/ssh_host_ed25519_key

SyslogFacility AUTHPRIV

AuthorizedKeysFile .ssh/authorized_keys

PasswordAuthentication yes

ChallengeResponseAuthentication no

GSSAPIAuthentication yes

GSSAPICleanupCredentials no

UsePAM yes

X11Forwarding yes

UsePrivilegeSeparation sandbox             # Default for new installations.

AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES

AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT

AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE

AcceptEnv XMODIFIERS

Subsystem       sftp  /usr/libexec/openssh/sftp-server

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

HostKey /etc/ssh/ssh_host_rsa_key

HostKey /etc/ssh/ssh_host_ecdsa_key

HostKey /etc/ssh/ssh_host_ed25519_key

SyslogFacility AUTHPRIV

AuthorizedKeysFile .ssh/authorized_keys

PasswordAuthentication yes

ChallengeResponseAuthentication no

GSSAPIAuthentication yes

GSSAPICleanupCredentials no

UsePAM yes

X11Forwarding yes

UsePrivilegeSeparation sandbox             # Default for new installations.

AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES

AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT

AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE

AcceptEnv XMODIFIERS

Subsystem       sftp  /usr/libexec/openssh/sftp-server

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

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

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

/etc/passwd

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

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

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

/etc/passwd

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

[root@localhost ~]# mkdir -pv /web/test1

mkdir: 已创建目录 "/web"

mkdir: 已创建目录 "/web/test1"

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

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

etc

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

[root@localhost ~]# vi /web/test1/etc/passwd

:%s/root/bent/g

:wq

7.2 通过vi编辑 删除pass文件第1、5、10行。

[root@localhost ~]# vi pass

:set nu

dd1     删除第一行

dd5     删除第五行

dd10    删除第十行

:wq     保存退出

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

[root@localhost ~]# vi pass

3yy       光标放在第二行

P         粘贴

q!       退出

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

[root@localhost ~]# vi pass

:set nu

/mail var

:wq

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

[root@localhost ~]# vi pass

:set nu    在编辑器中显示行号

2G        跳转到文件中的第二行

:r/etc/hotsts    在当前文件中读取其他内容

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

 [root@localhost ~]# vi pass

:w/root/new_pass     将文件另存在/root/new_pass

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

[root@localhost ~]# gzip new_pass

[root@localhost ~]# mv /root/new_pass.gz /root/npass,gz

[root@localhost ~]# ls /root/

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

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

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

[root@localhost ~]# ls -l /dev/ | wc -l

154

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

[root@localhost ~]# find /boot/ -name "vmlinuz*"

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

/boot/vmlinuz-0-rescue-58a70881bb2a4919b202ce504b9bc673

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-58a70881bb2a4919b202ce504b9bc673

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

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

umount /dev/sr0             卸载已挂载光盘

mount /dev/sr0 /media/       挂载光盘

ls /media/                   查看

cd /etc/yum.r*              构建本地YUM仓库文档

mkdir a/                   创建mul

mv C* a/                   移动文件

vi ./local.repo               创建本地yum仓库文档

[cdrom]    //仓库名称

name=cdrom

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

enabled=1   //启用本地yum仓库

gpgcheck=0  //禁用gpg校验

yum -y clean all             清除yum缓存

yum makecache            重建yum缓存

rpm -q vsftpd              查询是否安装vsftpd

yum -y install vsftpd         用yum安装vsftpd

rpm -q vsftpd              查询是否安装vsftpd

yum -y remove vsftpd        用yum卸载vsftpd

rpm -q vsftpd               查询是否卸载vsftpd

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

[root@localhost ~]# umount /dev/sr0

[root@localhost ~]# mount /dev/sr0 /media/

mount: /dev/sr0 写保护,将以只读方式挂载

[root@localhost ~]# ls /media/

CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7

EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL

[root@localhost ~]# cd /etc/yum.r*

[root@localhost yum.repos.d]# mkdir a/

[root@localhost yum.repos.d]# mv C* a/

[root@localhost yum.repos.d]# vi ./local.repo

[root@localhost yum.repos.d]# yum -y clean all

[root@localhost yum.repos.d]# yum makecache

[root@localhost yum.repos.d]# rpm -q vsftpd

未安装软件包 vsftpd

[root@localhost yum.repos.d]# yum -y install vsftpd

[root@localhost yum.repos.d]# rpm -q vsftpd

vsftpd-3.0.2-9.el7.x86_64

[root@localhost yum.repos.d]# yum -y remove vsftpd

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

[root@localhost Packages]# rpm -iv vsftpd-3.0.2-9.el7.x86_64.rpm

警告:vsftpd-3.0.2-9.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY

软件包准备中...

vsftpd-3.0.2-9.el7.x86_64

[root@localhost Packages]# rpm -q vsftpd

vsftpd-3.0.2-9.el7.x86_64

[root@localhost Packages]# rpm -e vsftpd

[root@localhost Packages]# rpm -q vsftpd

未安装软件包 vsftpd

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

原文地址:https://www.cnblogs.com/mengwei123/p/11252355.html