Linux操作系统~必考面试题⑧

1、pwd 命令

pwd 命令用于查看当前工作目录路径。

实例:

查看当前路径

    

     pwd

查看软链接的实际路径

   pwd -P

2、rmdir 命令

从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对其父目录的写权限。

注意:不能删除非空目录实例:

(1)当 parent 子目录被删除后使它也成为空目录的话,则顺便一并删除:

rmdir ‐p parent/child/child11

3、网络通讯命令 ifconfig 命令

ifconfig 用于查看和配置 Linux 系统的网络接口

查看所有网络接口及其状态:

ifconfig -a 

使用 up 和 down 命令启动或停止某个接口:

ifconfig eth0 up 
ifconfig eth0 down 

iptables 是一个配置 Linux 内核防火墙的命令行工具。功能非常强大,对于开发来说,主要掌握如何开放端口即可。例如:

 把来源 IP 为 192.168.1.101 访问本机 80 端口的包直接拒绝:

iptables -I INPUT -s 192.168.1.101 -p tcp --dport 80 -j REJECT 。 

开启 80 端口,因为web对外都是这个端口

iptables -A INPUT -p tcp --dport 80 -j ACCEP

另外,要注意使用 iptables save 命令,进行保存。否则,服务器重启后,配置的规则将丢失。

4、netstat 命令

Linux netstat命令用于显示网络状态。

利用netstat指令可让你得知整个Linux系统的网络情况。语法:

 netstat [‐acCeFghilMnNoprstuvVwx][‐A<网络类型>][‐‐ip]

参数说明:

-a或–all 显示所有连线中的Socket。

-A<网络类型>或–<网络类型> 列出该网络类型连线中的相关地址。

-c或–continuous 持续列出网络状态。

-C或–cache 显示路由器配置的快取信息。

-e或–extend 显示网络其他相关信息。

-F或–fib 显示FIB。

-g或–groups 显示多重广播功能群组组员名单。

-h或–help 在线帮助。

-i或–interfaces 显示网络界面信息表单。

-l或–listening 显示监控中的服务器的Socket。

-M或–masquerade 显示伪装的网络连线。

-n或–numeric 直接使用IP地址,而不通过域名服务器。

-N或–netlink或–symbolic 显示网络硬件外围设备的符号连接名称。

-o或–timers 显示计时器。

-p或–programs 显示正在使用Socket的程序识别码和程序名称。

-r或–route 显示Routing Table。

-s或–statistice 显示网络工作信息统计表。

-t或–tcp 显示TCP传输协议的连线状况。

-u或–udp 显示UDP传输协议的连线状况。

-v或–verbose 显示指令执行过程。

-V或–version 显示版本信息。

-w或–raw 显示RAW传输协议的连线状况。

-x或–unix 此参数的效果和指定"-A unix"参数相同。

–ip或–inet 此参数的效果和指定"-A inet"参数相同。

实例如何查看系统都开启了哪些端口?

  1. [root@centos6 ~ 13:20 #55]# netstat lnp
  2. Active Internet connections (only servers)
  3. Proto RecvQ SendQ Local Address Foreign Address State PID/Program name
  4. tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1035/sshd
  5. tcp 0 0 :::22 :::* LISTEN 1035/sshd
  6. udp 0 0 0.0.0.0:68 0.0.0.0:* 931/dhclient 7 Active UNIX domain sockets (only servers)
  1. Proto RefCnt Flags Type State INode PID/Program name Path
  2. unix 2 [ ACC ] STREAM LISTENING 6825 1/init @/com/ubuntu/upstart
  3. unix 2 [ ACC ] STREAM LISTENING 8429 1003/dbusdaemon /var/run/dbus/syst em_bus_socket

如何查看网络连接状况?

  1. [root@centos6 ~ 13:22 #58]# netstat an
  2. Active Internet connections (servers and established)
  3. Proto RecvQ SendQ Local Address Foreign Address State
  4. tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
  5. tcp 0 0 192.168.147.130:22 192.168.147.1:23893 ESTABLISHED
  6. tcp 0 0 :::22 :::* LISTEN
  7. udp 0 0 0.0.0.0:68 0.0.0.0:*

如何统计系统当前进程连接数?

输入命令 netstat -an | grep ESTABLISHED | wc -l 。输出结果 177 。一共有 177 连接数。用 netstat 命令配合其他命令,按照源 IP 统计所有到 80 端口的

ESTABLISHED 状态链接的个数?

严格来说,这个题目考验的是对 awk 的使用。

首先,使用 netstat -an|grep ESTABLISHED 命令。

结果如下:

1 tcp 0 0 120.27.146.122:80 113.65.18.33:62721 ESTABLISHED

2 tcp 0 0 120.27.146.122:80 27.43.83.115:47148 ESTABLISHED

    3 tcp 0 0 120.27.146.122:58838 106.39.162.96:443 ESTABLISHED

4 tcp 0 0 120.27.146.122:52304 203.208.40.121:443 ESTABLISHED

5 tcp 0 0 120.27.146.122:33194 203.208.40.122:443 ESTABLISHED

6 tcp 0 0 120.27.146.122:53758 101.37.183.144:443 ESTABLISHED

7 tcp 0 0 120.27.146.122:27017 23.105.193.30:50556 ESTABLISHED

5、ping 命令

Linux ping命令用于检测主机。

执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。指定接收包的次数

ping c 2 www.baidu.com

6、telnet 命令

Linux telnet命令用于远端登入。执行telnet指令开启终端机阶段作业,并登入远端主机。

语法

1 telnet [8acdEfFKLrx][b<主机别名>][e<脱离字符>][k<域名>][l<用户名称>][n<记录文件>][S<服务类型>][X<认证形态>][主机名称或IP地址<通信端口>]

参数说明:

-8 允许使用8位字符资料,包括输入与输出。

-a 尝试自动登入远端系统。

-b<主机别名> 使用别名指定远端主机名称。

  1. 不读取用户专属目录里的.telnetrc文件。
  2. 启动排错模式。

-e<脱离字符> 设置脱离字符。

-E 滤除脱离字符。

-f 此参数的效果和指定"-F"参数相同。

-F 使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。

 -k<域名> 使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。

  1. 不自动登入远端主机。

-l<用户名称> 指定要登入远端主机的用户名称。

  1. 允许输出8位字符资料。

-n<记录文件> 指定文件记录相关信息。

-r 使用类似rlogin指令的用户界面。

-S<服务类型> 设置telnet连线所需的IP TOS信息。

-x 假设主机有支持数据加密的功能,就使用它。

-X<认证形态> 关闭指定的认证形态。

实例

1)登录远程主机

  1. # 登录IP 192.168.0.5 的远程主机
  2. telnet 192.168.0.5

7、date 命令

显示或设定系统的日期与时间。

命令参数:

d<字符串>  显示字符串所指的日期与时间。字符串前后必须加上双引号。

s<字符串>  根据字符串来设置日期与时间。字符串前后必须加上双引号。

显示GMT

%H 小时(0023)

%I 小时(0012)

%M 分钟(0059来表示)

%s 总秒数。起算时间为19700101 00:00:00 UTC

%S (以本地的惯用法来表示) 9 %a 星期的缩写。

%A 星期的完整名称。

%d 日期(0131来表示)

%D 日期(含年月日)

%m 月份(0112来表示)

%y 年份(0099来表示)

%Y 年份(以四位数来表示)

实例:

1)显示下一天

 date 	+%	Y%m%d ‐‐date="+1 day" //显示下一天的日期

2)d参数使用


显示系统内存使用情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。

显示内存使用情况

8、free 命令

命令参数:

b Byte显示内存使用情况

k kb为单位显示内存使用情况

m mb为单位显示内存使用情况

g gb为单位显示内存使用情况

s<间隔秒数> 持续显示内存

t 显示内存使用总合

1)显示内存使用情况

  1. free
  2. free k
  3. free m

2)以总和的形式显示内存的使用信息

free t

3)周期性查询内存使用情况

free s 10

9、kill 命令

发送指定的信号到相应进程。不指定型号将发送SIGTERM(15)终止指定进程。

如果任无法终止该程序可用"-KILL" 参数,其发送的信号为SIGKILL(9) ,将强制结束进程,使用ps命令或者jobs 命令可以查看进程号。

root用户将影响用户的进程,非root用户只能影响自己的进程。

常用参数:

l 信号,若果不加信号的编号参数,则使用l”参数会列出全部的信号名称

a 当处理当前进程时,不限制命令名和进程号的对应关系

p 指定kill 命令只打印相关进程的进程号,而不发送任何信号

s 指定发送信号

u 指定用户

实例:

1)先使用ps查找进程pro1,然后用kill杀掉

 kill ‐9 $(ps ‐ef |grep pro1)

10、ps 命令

ps(process status),用来查看当前运行的进程状态,一次性查看,如果需要动态连续结果使用 top linux上进程有5种状态:

  1. 运行(正在运行或在运行队列中等待)
  2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
  3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
  4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)

     5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行)

ps 工具标识进程的5种状态码:

  1. D 不可中断 uninterruptible sleep (usually IO)
  2. R 运行 runnable (on run queue)
  3. S 中断 sleeping
  4. T 停止 traced or stopped
  5. Z 僵死 a defunct (”zombie”) process

命令参数:

A 显示所有进程

a 显示所有进程

a 显示同一终端下所有进程

c 显示进程真实名称

e 显示环境变量

f 显示进程间的关系

r 显示当前终端运行的进程

aux 显示所有包含其它使用的进程

实例:

1)显示当前所有进程环境变量及进程间关系

​​​​​​​ps ‐ef

2)显示当前所有进程

​​​​​​​ps ‐A

3)与grep联用查找某进程

​​​​​​​ps ‐aux |grep apache

4)找出与 cron 与 syslog 这两个服务有关的 PID 号码

​​​​​​​ps aux |grep'(cron|syslog)'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/46806.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

剑指offer12 矩阵中的路径 13 机器人的运动范围 34.二叉树中和为某一值得路径

class Solution { public:bool exist(vector<vector<char>>& board, string word) {int rowboard.size(),colboard[0].size();int index0,i0,j0;if(word.size()>row*col) return 0;//vector<vector<int>> visit[row][col];//标记当前位置有没有…

SQL AND OR 运算符

AND & OR 运算符用于基于一个以上的条件对记录进行过滤。 如果第一个条件和第二个条件都成立&#xff0c;则 AND 运算符显示一条记录。 如果第一个条件和第二个条件中只要有一个成立&#xff0c;则 OR 运算符显示一条记录。 下面是选自 "students" 表的数据&a…

Linux为何是软件开发专业人员的心头爱-Robotics Ubuntu

Linux与Windows都是十分常见的电脑操作系统&#xff0c;相信你对它们二者都有所了解&#xff01;在你的使用过程中&#xff0c;是否有什么事让你觉得在Linux上顺理成章&#xff0c;换到Windows上就令你费解&#xff1f;亦或者关于这二者你有任何想要分享的&#xff0c;都可以在…

13.Netty源码之Netty中的类与API

highlight: arduino-light ServerBootstrap Bootstrap 意思是引导&#xff0c;一个 Netty 应用通常由一个 Bootstrap 开始&#xff0c;主要作用是配置整个 Netty 程序&#xff0c;串联各个组件&#xff0c;Netty 中ServerBootstrap 是服务端启动引导类。 java //泛型 AbstractB…

【C语言day06】

逻辑或运算如果前表达式为真&#xff0c;后表达式不计算&#xff0c;第一次循环时i为0&#xff0c;执行i&#xff0c;第二次循环时i为1&#xff0c;是个真值&#xff0c;不再执行i&#xff0c;也就死循环了 在C语言中&#xff0c;一个函数如果不写返回值类型&#xff0c;那么就…

前端JS 展示上传图片缩略图(本地图片读取)

需求&#xff1a; 点击上传图片按钮&#xff0c;选择图片以后&#xff0c;不请求后端接口&#xff0c;直接将图片展示在缩略图中。 解决方案&#xff1a; 使用 FileReader 和 FileReader 中的 readAsDataURL 方法。 第一步 从input[type“file”] (上传文件标签) 里面拿到fil…

IRIS搭建docker

之前把web实现了docker&#xff0c;开发或测试环境可能需要开发自己搭数据库&#xff0c;为了方便使用&#xff0c;把数据库也做一个docker。 由于原生的CentOS我还有改yum仓库&#xff0c;所以这次从之前lis搞的改好yum的镜像开始&#xff08;从改好yum的lisnew的镜像创建lis…

SkyWalking链路追踪-搭建-spring-boot-cloud-单机环境 之《10 分钟快速搭建 SkyWalking 服务》

首先了解一下单机环境 第一步&#xff0c;搭建一个 Elasticsearch 服务。第二步&#xff0c;下载 SkyWalking 软件包。第三步&#xff0c;搭建一个 SkyWalking OAP 服务。第四步&#xff0c;启动一个 Spring Boot 应用&#xff0c;并配置 SkyWalking Agent。第五步&#xff0c;…

python_day15_闭包

闭包 def outer(logo):def inner(msg):print(f"<{logo}>{msg}<{logo}>")return innerfunc_1 outer("####") print(type(func_1)) func_1("jsy")func_2 outer("$$$$$") func_2(hello)nonlocal关键字&#xff0c;在闭包中…

element中el-input组件限制输入条件(数字、特殊字符)

1、只能输入纯数字 <el-input v-model"aaa" type"text" input"(v)>(aaav.replace(/[^\d]/g,))" /> 2、只能输入纯数字和小数&#xff08;比如&#xff1a;6.66&#xff09; <el-input v-model"aaa" type"text&quo…

座舱域控进入“上车”加速期,中国芯片的狂飙时代来了?

智能座舱成为了全球芯片厂商竞逐的下一个战场。 进入2023年&#xff0c;联发科官宣与英伟达合作开发集成CPU粒芯的汽车SoC&#xff0c;为下一代软件定义汽车提供全套车载人工智能座舱解决方案&#xff1b;AMD在特斯拉座舱落地后&#xff0c;与亿咖通在智能座舱领域达成了合作&…

Linux 学习记录56(ARM篇)

Linux 学习记录56(ARM篇) 本文目录 Linux 学习记录56(ARM篇)一、总线概念1. 总线2. 串行总线3. 并行总线4. 单工/半双工/全双工5. 同步6. 异步 二、串口(UART)1. 串口配置信息2. 串口通信协议(异步串行全双工总线)3. 框图分析4. 使能串口5. GPIO的复用模式6. RCC时钟7. UART寄存…

面向对象编程:深入理解抽象类和关键字

文章目录 1. 关键字1.1 static1.2 final1.3 static final 2. 抽象类2.1 抽象类的推导过程2.2 抽象类能否创建对象&#xff1f;2.3 抽象类的意义2.4 判断 3. 案例&#xff1a;计算圆形和长方形的周长及面积 在Java编程中&#xff0c;我们经常会遇到一些特殊的关键字和概念&#…

ChatGPT把python 的import和from讲明白了

文章目录 1、import&#xff1a;import关键字用于导入整个模块&#xff0c;您可以使用该模块中的所有对象。语法如下&#xff1a;2、from ... import ...&#xff1a;from ... import ... 语法用于从模块中导入特定的对象&#xff0c;而不是导入整个模块。您可以通过这种方式选…

14、php面向对象3(final、显示调用父类构造方法、static静态变量与方法)

1、如果父类中的方法被声明为 final&#xff0c;则子类无法覆盖该方法。如果一个类被声明为 final&#xff0c;则不能被继承。 <?php class BaseClass{public function test(){echo "BaseClass::test() called".PHP_EOL;}final public function moreTesting(){e…

基于vue+uniapp微信小程序公司企业后勤服务(设备)系统

本系统分为用户和管理员两个角色&#xff0c;其中用户可以注册登陆系统&#xff0c;查看公司公告&#xff0c;查看设备&#xff0c;设备入库&#xff0c;查看通讯录&#xff0c;会议室预约&#xff0c;申请出入&#xff0c;申请请假等功能。管理员可以对员工信息&#xff0c;会…

Makefile常用函数

目录 字符串替换函数&#xff1a;subst 模式字符串替换函数&#xff1a;patsubst 去空格函数 strip 查找字符串函数 findstring 过滤函数 filter 反过滤函数 filter-out 排序函数 sort 取目录函数 dir 取文件函数 notdir 取后缀函数 suffix 取前缀函数 basename 加…

elementUI this.$confirm 文字大小样式

dangerouslyUseHTMLString:true // message部分 以html片段处理 customClass //MessageBox 的自定义类名 整个comfirm框自定义类名 cancelButtonClass // 取消按钮的自定义类名 confirmButtonClass // 确定按钮的自定义类名<style> .addcomfirm{width: 500px; } .a…

selenium的java方式打开IE浏览器

1.下载软件Selenium Driver 官方下载地址&#xff1a; ​ https://www.selenium.dev/downloads/解压selenium-java-3.141.59.zip文件到java项目 seleniumDemo&#xff0c;并降解压的文件放入依赖中&#xff08;1&#xff09;双击项目的src打开项目结构&#xff0c;或右键-打开…

易班开放应用授权重定向,出现跨域的解决方案

问题描述 今天开发H5网站需要接入易班&#xff0c;经过易班授权然后重定向&#xff08;code: 302&#xff09;&#xff0c;使用axios发请求&#xff0c;但是前后端均配置跨域的情况下&#xff0c;不管怎么弄都是一直跨域 但是我们看network&#xff0c;network中对应请求的res…