Linux基础命令练习题(附答案)
1、分别用cat \tac\nl三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处?
[root@localhost ~]# cat /etc/ssh/ssh_config
[root@localhost ~]# tac /etc/ssh/ssh_config
[root@localhost ~]# nl /etc/ssh/ssh_config
cat是正向显示内容;tac则是反向显示内容;nl则是显示内容并显示行号
2、分别用more和less查看/etc/ssh/sshd_config里面的内容,请用总结more和less两个命令的相同和不同之处?
[root@localhost ~]# more /etc/ssh/ssh_config
[root@localhost ~]# less /etc/ssh/ssh_config
more里用shift+pgup/pgon来进行上下翻页
less用↑↓箭头翻页 查找是n 查下一个 N上一个
相同都用空格翻页 回车下一行
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 ~]# tail -15 /etc/passwd >/root/pass_15.txt
4、请用一个命令统计/etc/hosts文件包含有多少行?多少字节?多少单词数?
[root@localhost ~]# wc /etc/hosts
5、练习使用grep和egrep
5.1.通过grep管道工具过滤出ifconfig命令显示信息中的IP字段?
[root@localhost ~]# ifconfig | grep -o "[0-9]\{1,3\}\.[1-9]\{1,3\}\.[0-9]\{1,3\}\.[1-9]\{1,3\}" | head -1
5.2将/etc/passwd文件中的前20行重定向保存到/root下名称为pass?
[root@localhost ~]# head -20 /etc/passwd >/root/pass
5.3.过滤/etc/passwd文件中含有/sbin/nologin 的行并统计行数?
[root@localhost ~]# grep -c "/sbin/nologin" /etc/passwd
5.4 过滤/etc/passwd文件中以sh结尾的行,及以 root开头的行,不显示包含login的行?
[root@localhost ~]# grep "sh$" /etc/passwd | grep "^root" | grep -v "login"
5.5 分别用grep和egrep过滤出/etc/ssh/sshd_config文件中不包含“#”开头和空白的行?
[root@localhost ~]# grep -v "#^" /etc/passwd | grep -v "^$"
[root@localhost ~]# egrep -v "^#|^$" /etc/ssh/sshd_config
6.1 通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.gz
[root@localhost ~]# tar -zcf /root/file.tar.gz /etc/passwd
6.2通过tar命令将/etc/passwd文件打包压缩成/root/file.tar.bz2
[root@localhost ~]# tar -jcf /root/file.tar.bz2 /etc/passwd
6.3创建空文件夹/web/test1,并将file.tar.bz2 解包并释放到/web/test1目录下?
[root@localhost ~]# mkdir -p /web/test1
[root@localhost ~]# tar -xf file.tar.bz2 -C /web/test1
7.1 通过vi编辑/web/test1/passwd文件将文件里为root单词全部替换成benet。
[root@localhost ~]# vi /web/test1/etc/passwd
:% s/root/benet/g
7.2 通过vi编辑 删除pass文件第1、5、10行。
:1 dd
:5 dd
:10 dd
7.3 在vi中显示pass文件行号复制文件2 3 4行粘贴到以lp开头的行下。
光标定位到2行
3yy
:/lp
p
7.4 通过vi编辑 查找文件内包含mail var等字符串,并记录所在行号。
:/set nu
:/mail 12,
:/var 4,5,8,12,15,20,22,26,29,31,32,33,3536,39,38,40
7.5 通过vi编辑 快速跳转到文件的第二行,通过r 读取 /etc/hosts 文件的内容到第二行下。
:2
:r /etc/hosts
7.6将更改后的文件使用vim另存为/root/new_pass。
:w /root/new_pass
7.7将new_pass文件压缩成gz格式并改名为npass.gz文件。
[root@localhost ~]# gzip new_pass | mv new_pass.gz npass.gz
8统计/dev 目录下的文件数量。
[root@localhost ~]# ls -l /dev/ | grep -v "^d" |wc -l
9.1在/boot下查找文件名以vmlinuz开头的文件?
[root@localhost ~]# find /boot -name vmlinuz*
/boot/vmlinuz-3.10.0-229.el7.x86_64
/boot/vmlinuz-0-rescue-9a65ea9ec3044d628dc501909195e94f
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-9a65ea9ec3044d628dc501909195e94f
/boot/initramfs-3.10.0-229.el7.x86_64.img
10 请详细写出构建本地yum仓库的步骤?并在每行命令后面用自己的话做上中文注释?
umount /media 推出挂载光盘
mount /dev/sr0 /media 挂载光盘
cd /etc/yum.b 进入etc下的yum.b*** 文件
mkdir a 创建文件夹a
mv C* a 将所用的以C为开头的都剪切到a里
vi local.repo 创建local.repo文件并编辑
[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 安装vsftpd软件包
rpm -q vsftpd 查看vsftpd软件包
yum -y remove vsftpd 卸载vsftpd软件包
rpm -q vsftpd 查看vsftpd软件包
11、用yum命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
[root@localhost Packages]# yum -y install vsftpd
[root@localhost Packages]# rpm -q vsftpd
[root@localhost Packages]# yum -y remove vsftpd
[root@localhost Packages]# rpm -q vsftpd
12、用rpm命令安装vsftpd,查询安装情况,最后卸载vsftpd,并再次查询卸载情况?
[root@localhost Packages]# rpm -q vsftpd
[root@localhost Packages]# rpm -i vsftpd-3.0.2-9.el7.x86_64.rpm
[root@localhost Packages]# rpm -q vsftpd
[root@localhost Packages]# rpm -e vsftpd
[root@localhost Packages]# rpm -q vsftpd
13、通过源码方式通过解包、配置、编译、安装四个步骤安装源码软件httpd-2.2.17.tar.gz?并进行测试?
[root@localhost apache]# tar -zxvf httpd-2.2.17.tar.gz -C /usr/src 解压缩
[root@localhost apache]# cd /usr/src/ httpd-2.2.17/ 进去目录
[root@localhost apache]# ./configure --prefix=/usr/local/apache 指定安装目录
[root@localhost apache]# yum -y install gcc 安装gcc
[root@localhost apache]# yum -y install gcc-c++ 安装gcc-c++
[root@localhost apache]# yum -y install make 安装make
[root@localhost apache]# yum -y install lynx 安装lynx
[root@localhost apache]# make 执行make命令
[root@localhost apache]# make install 执行make install命令
[root@localhost apache]# cd /usr/local/apache/conf/ 进去该目录
[root@localhost apache]# vi httpd.conf 修改配置文件
#ServerName www.example.com:80
ServerName www.example.com:80
[root@localhost apache]# /usr/local/apache/bin/apachectl start 启动该目录下的程序
[root@localhost apache]# lynx 127.0.0.1 运行
Linux基础命令练习题(附答案)的更多相关文章
- 第四节,Linux基础命令
第四节,Linux基础命令 命令是系统操作员对系统传入的指令,传入指令后回车,系统接收到指令做出相应的行为 1.查看用户位于系统什么位置 [pmd]检查操作用户位于系统的什么位置 命令 ...
- 【Python之路】第一篇--Linux基础命令
pwd 命令 查看”当前工作目录“的完整路径 pwd -P # 显示出实际路径,而非使用连接(link)路径:pwd显示的是连接路径 . 表示当前目录 .. 表示上级目录 / 表示根目录 ls ...
- linux基础命令学习笔记(二)
linux基础命令学习笔记(二) 1.kill :终止进程 kill pid (唯一标示一个进程) kill -9 强制终止 kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...
- 2.Linux基础命令
linux内一切皆文件,没有文件夹只有目录,目录也是一种文件 1.一些常用按键: 将鼠标的光标从虚拟机里切换回来:Ctrl+Alt 拖动Ubuntu内的对话框:Alt键+鼠标左键拖动 清屏:Ctrl+ ...
- linux基础命令一
linux基础命令一 1.date命令 date命令介绍:显示或者设置系统日期 date命令的语法: 显示日期:date [options...] [+FORMAT] FORMAT:为显示日期的格 ...
- linux基础命令:
linux基础命令: 显示 echo 输出我写的内容 ls 查看当前目录的文件 pwd 查看当前目录 ifconfig 查看网卡信息 grep 过滤 -v 取反 -n man 查看命令的帮助信息 md ...
- 常用的linux基础命令
常用的linux基础命令 1.ls 显示目录属性 -l:(也可以简写成ll),列表显示权限等属性 -a:显示所有文件包括隐藏文件等 -d:只列出目录本身 2.chgrp 改变档案所属群组 eg:chg ...
- Linux基础命令-文件与目录
Linux基础命令-文件与目录 参考:<鸟哥linux私房菜>五-七章,17/12/5复习,18/01/15复习 文件权限 rwx421:用户,用户组,其他 umask查看默认权限:000 ...
- Linux基础命令回顾
前言 说到linux基础命令,网上一搜一箩筐,想学也有很多教程,如果你不幸看到此篇文章,想看就认真看完,毕竟你点进来了不是嘛? 我每次写的文章都是为了分享自己的学习成果或重要知识点,希望能帮助更多的人 ...
随机推荐
- LeetCode 168. Excel表列名称(Excel Sheet Column Title)
题目描述 给定一个正整数,返回它在 Excel 表中相对应的列名称. 例如, 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 - ...
- docker容器无法删除——状态Dead
问题:由于容器挂载数据卷,无法直接删除. 解决: 先查出ID 进行杀掉,然后再删除. . 搞定
- loggin模块,错误日志模块
# 记录用户行为或者报错信息 import logging # 配置错误日志有两种方法 # 方法1:通过basicconfig # 配置简单.但是能做的事情少,解决不了中文乱码,不能同时输出到屏幕和文 ...
- Android Context完全解析与各种获取Context方法
Context类型 我们知道,Android应用都是使用Java语言来编写的,那么大家可以思考一下,一个Android程序和一个Java程序,他们最大的区别在哪里?划分界限又是什么呢?其实简单点分析, ...
- deepClone deepCompare
一.深度复制 // 深度复制 function deepClone(datas) { if (typeof datas !== 'object' || datas === null) return d ...
- leetcode 83删除排序链表中的重复元素
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode ...
- tensorflow service部署
tensorflow+tensorflow-serving+docker+grpc模型上线部署(不需bazel编译,有代码)[https://blog.csdn.net/u013714645/arti ...
- OpenFlow/SDN 的缘起与发展
目录 文章目录 目录 从虚拟机动态迁移对大二层网络的需求说起 OpenFlow 起源 从 OpenFlow 扩展为 SDN OpenFlow 的应用场景 网络虚拟化 – FlowVisor 负载均衡 ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_11 set方法注入
复制AccountServiceImpl类改名叫做AccountServiceImpl2 生成三个属性值的set方法.注入只需要set方法,并不需要get方法 配置bean,用到property这个标 ...
- nginx报错:nginx: [emerg] unknown directive in /etc/nginx/conf.d/test.conf:4
nginx报错:nginx: [emerg] unknown directive in /etc/nginx/conf.d/test.conf:4 解决: 第四行出现了 tab 空格 , 换成正常的 ...