当前位置:首页 > 科技  > 软件

八个DevOps中重要的Linux命令

来源: 责编: 时间:2024-01-02 09:30:04 137观看
导读本文介绍一些常用的Linux命令,帮助开发人员高效工作和排除故障。1. xargsxargs命令通过接收输入并将其转换为另一个命令的参数,从而帮助构建和执行提供的命令。这个命令重要且实用,开发人员可以使用这个命令将命令的输出

本文介绍一些常用的Linux命令,帮助开发人员高效工作和排除故障。JbR28资讯网——每日最新资讯28at.com

JbR28资讯网——每日最新资讯28at.com

1. xargs

xargs命令通过接收输入并将其转换为另一个命令的参数,从而帮助构建和执行提供的命令。JbR28资讯网——每日最新资讯28at.com

这个命令重要且实用,开发人员可以使用这个命令将命令的输出作为参数传递给另一个命令。JbR28资讯网——每日最新资讯28at.com

例如,如果想从/etc目录中找到所有的“* .conf”文件,并将其分类到不同的组中,可以使用以下命令:JbR28资讯网——每日最新资讯28at.com

$ find /etc -name *.conf -type f -print | xargs file/etc/dhcp/dhclient.conf:                             ASCII text/etc/dracut.conf.d/ec2.conf:                         ASCII text.../etc/dbus-1/system.d/org.freedesktop.hostname1.conf: XML 1.0 document, ASCII text.../etc/dbus-1/session.conf:                            exported SGML document, ASCII text...

还可以使用-i选项运行多个命令:JbR28资讯网——每日最新资讯28at.com

$ cat file.txt | xargs -i  sh -c 'command {} | command2 {} && command3 {}'

或者甚至可以使用tar归档文件:JbR28资讯网——每日最新资讯28at.com

$ find /home/tony -name "*.jpg" -type f | xargs tar -cxvf images.tar.gz

2. nohup

首先,需要理解SIGHUP(终端挂起信号)是一种信号,当关闭控制终端时,它会终止Linux进程。如果意外关闭终端或失去与主机的连接,所有正在运行的进程将被自动终止。JbR28资讯网——每日最新资讯28at.com

使用nohup命令是阻止SIGHUP信号并允许进程在从终端注销后继续运行的一种方法。JbR28资讯网——每日最新资讯28at.com

例如,如果想在后台运行数据库导出操作,并将命令的操作输出记录到文件中,可以这样做:JbR28资讯网——每日最新资讯28at.com

$ nohup mysqldump -uroot -pxxxx —all-databases > ./alldatabases.sql &

还可以使用nohup同时在后台运行多个进程,使用以下命令:JbR28资讯网——每日最新资讯28at.com

nohup bash -c '[command1] && [command2]'

只需将command和command2替换为自己的命令,如果需要,还可以添加更多的命令,只需使用&&作为分隔符。JbR28资讯网——每日最新资讯28at.com

3. 查找内存/CPU使用率高的进程

如果安装了htop,可以使用它来替代下面的命令,会有更好的可视化效果。JbR28资讯网——每日最新资讯28at.com

可以使用以下命令按顺序查找高内存消耗的进程:JbR28资讯网——每日最新资讯28at.com

$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head -10  PID  PPID CMD                         %MEM %CPU 1213     1 /usr/lib/systemd/systemd-jo  0.9  0.0 2332     1 /usr/sbin/rsyslogd -n        0.6  0.0 2417  2333 /usr/bin/ssm-agent-worker    0.5  0.0 2474     1 python3 /usr/bin/amazon-efs  0.5  0.1 2333     1 /usr/bin/amazon-ssm-agent    0.3  0.0 2477     1 /usr/bin/stunnel /var/run/e  0.2  0.0 9223  2392 sshd: txu [priv]             0.2  0.0 2392     1 /usr/sbin/sshd -D            0.2  0.0 9475  9256 sudo su -                    0.1  0.0

类似地,可以使用以下命令按顺序查找高CPU消耗的进程:JbR28资讯网——每日最新资讯28at.com

$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head -10  PID  PPID CMD                         %MEM %CPU 2474     1 python3 /usr/bin/amazon-efs  0.5  0.1    1     0 /usr/lib/systemd/systemd --  0.1  0.0    2     0 [kthreadd]                   0.0  0.0    3     2 [rcu_gp]                     0.0  0.0    4     2 [rcu_par_gp]                 0.0  0.0    6     2 [kworker/0:0H-ev]            0.0  0.0    8     2 [mm_percpu_wq]               0.0  0.0    9     2 [rcu_tasks_rude_]            0.0  0.0   10     2 [rcu_tasks_trace]            0.0  0.0

4. 查看多个日志文件

在日常工作中,查看日志文件的方式通常是使用tail命令在一个终端中查看一个日志文件,然后在另一个终端中查看另一个日志文件。但有时候这种方法有点麻烦。有一种工具叫做multitail可以在同一个终端上同时查看多个日志文件。JbR28资讯网——每日最新资讯28at.com

下面的命令将会在两列中显示两个日志文件:JbR28资讯网——每日最新资讯28at.com

$ multitail -s 2 /var/log/messages /var/log/cloud-init-output.log

JbR28资讯网——每日最新资讯28at.com

要安装multitail:JbR28资讯网——每日最新资讯28at.com

$ wget ftp://ftp.is.co.za/mirror/ftp.rpmforge.net/redhat/el6/en/x86_64/dag/RPMS/multitail-5.2.9-1.el6.rf.x86_64.rpm$ yum localinstall multitail-5.2.9-1.el6.rf.x86_64.rpm

5. 查看TCP连接状态

按组查看TCP连接:JbR28资讯网——每日最新资讯28at.com

$ netstat -nat | awk '{print $6}' | sort | uniq -c | sort -rn      6 LISTEN      4 ESTABLISHED      3 SYN_RECV      1 Foreign      1 established)

6. 最高请求数前10个IP

有时候用户请求的数量会突然增加。这时,可以检查请求源的IP状态。如果集中在几个IP上,可能存在攻击,可以使用防火墙来阻止。命令如下:JbR28资讯网——每日最新资讯28at.com

$ netstat -anlp | grep 80| grep tcp | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | head -n101566 10.1.1.2 500 10.2.3.4 44  10.3.2.4...

7. 最耗费文件句柄的前10个进程

有时候需要监控服务器上每个进程的打开文件数,下面的命令可以帮助找出前15个:JbR28资讯网——每日最新资讯28at.com

$ find /proc -maxdepth 1 -type d -name '[0-9]*' -exec bash -c "ls {}/fd/ | wc -l | tr '/n' ' '" /; -printf "fds (PID = %P) /n" |  sort -rn | head -15500 fds (PID = 2541)366 fds (PID = 29563)254 fds (PID = 1)46 fds (PID = 2613)44 fds (PID = 2253)41 fds (PID = 30709)38 fds (PID = 27695)37 fds (PID = 29971)...

它进入/proc目录中的每个PID文件夹,计算打开的文件数,然后按降序排序。JbR28资讯网——每日最新资讯28at.com

8. 查找最多连接数的IP

统计具有最多入站连接的IP地址:JbR28资讯网——每日最新资讯28at.com

$ ss -t | awk '(NR>1) {print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -rn | head -10     16 127.0.0.1      8 10.238.168.96      1 10.229.36.59...

本文链接:http://www.28at.com/showinfo-26-55056-0.html八个DevOps中重要的Linux命令

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 深入理解python函数,一切皆对象

下一篇: TikTok 面试:四个你可能感兴趣的前端题

标签:
  • 热门焦点
  • 如何通过Python线程池实现异步编程?

    如何通过Python线程池实现异步编程?

    线程池的概念和基本原理线程池是一种并发处理机制,它可以在程序启动时创建一组线程,并将它们置于等待任务的状态。当任务到达时,线程池中的某个线程会被唤醒并执行任务,执行完任
  • 自动化在DevOps中的力量:简化软件开发和交付

    自动化在DevOps中的力量:简化软件开发和交付

    自动化在DevOps中扮演着重要角色,它提升了DevOps的效能。通过自动化工具和方法,DevOps团队可以实现以下目标:消除手动和重复性任务。简化流程。在整个软件开发生命周期中实现更
  • .NET 程序的 GDI 句柄泄露的再反思

    .NET 程序的 GDI 句柄泄露的再反思

    一、背景1. 讲故事上个月我写过一篇 如何洞察 C# 程序的 GDI 句柄泄露 文章,当时用的是 GDIView + WinDbg 把问题搞定,前者用来定位泄露资源,后者用来定位泄露代码,后面有朋友反
  • 三分钟白话RocketMQ系列—— 如何发送消息

    三分钟白话RocketMQ系列—— 如何发送消息

    我们知道RocketMQ主要分为消息 生产、存储(消息堆积)、消费 三大块领域。那接下来,我们白话一下,RocketMQ是如何发送消息的,揭秘消息生产全过程。注意,如果白话中不小心提到相关代
  • 微软邀请 Microsoft 365 商业用户,测试视频编辑器 Clipchamp

    微软邀请 Microsoft 365 商业用户,测试视频编辑器 Clipchamp

    8 月 1 日消息,微软近日宣布即将面向 Microsoft 365 商业用户,开放 Clipchamp 应用,邀请用户通过该应用来编辑视频。微软于 2021 年收购 Clipchamp,随后开始逐步整合到 Microsof
  • 东方甄选单飞:有些鸟注定是关不住的

    东方甄选单飞:有些鸟注定是关不住的

    文/彭宽鸿编辑/罗卿东方甄选创始人俞敏洪带队的“7天甘肃行”直播活动已在近日顺利收官。成立后一年多时间里,东方甄选要脱离抖音自立门户的传闻不绝于耳,“7
  • 阿里大调整

    阿里大调整

    来源:产品刘有媒体报道称,近期淘宝天猫集团启动了近年来最大的人力制度改革,涉及员工绩效、层级体系等多个核心事项,目前已形成一个初步的“征求意见版”:1、取消P序列
  • 半导体需求下滑 三星电子DS业务部门今年营业亏损预计超10万亿韩元

    半导体需求下滑 三星电子DS业务部门今年营业亏损预计超10万亿韩元

    7月17日消息,据外媒报道,去年下半年开始的半导体需求下滑,影响到了三星电子、SK海力士、英特尔等诸多厂商,营收明显下滑,部分厂商甚至出现了亏损。作为
  • OPPO K11搭载长寿版100W超级闪充:26分钟充满100%

    OPPO K11搭载长寿版100W超级闪充:26分钟充满100%

    据此前官方宣布,OPPO将于7月25日也就是今天下午14:30举办新品发布会,届时全新的OPPO K11将正式与大家见面,将主打旗舰影像,和同档位竞品相比,其最大的卖
Top