Linux 上鲜为人知却高效实用的指令合集

linux 系统中,尽管基础指令如 cd、vi、mv、cp、rm、ls 已经能满足大部分需求,但在某些特定场景下,这些指令可能无法完全胜任。这篇文章汇总了笔者常用的 linux 指令,主要围绕「vim 编辑器、查询服务器各项资源、检查网络环境」展开。

vim 编辑器常用指令

在需要对服务器进行紧急调整时,熟练使用以下操作可以大幅提高你的效率:

显示行数:使用 :set number 命令,可以方便地与本地程序进行对比。跳转到指定行数:使用 :行数 命令,直接跳转到需要修改的位置。

Linux 上鲜为人知却高效实用的指令合集

删除多行:删除一行可以使用 dd,但如果需要删除几十行甚至上百行,重复使用 dd 会导致误删和效率低下。

删除从光标开始的 N 行,例如删除 5 行使用 5dd。删除指定范围内的行,使用 :[start],[end]d,例如删除第 3 到 17 行使用 3,17d

批量注释/取消注释:有时我们需要将一段代码注释起来进行测试或调试,而不是删除。

批量注释:将光标移到开始注释的行,按「Control+v」进入 VISUAL BLOCK 模式,选择要注释的区域,按「Shift+i」进入编辑模式,输入注释符号(如 //),然后按「Esc」完成。

Linux 上鲜为人知却高效实用的指令合集

取消注释:将光标移到开始取消注释的行,按「Control+v」进入 VISUAL BLOCK 模式,选择要取消注释的区域(如果使用 // 注释,则需要删除两列),按「d」删除注释。

搜索指定内容并替换

知我AI 知我AI

一款多端AI知识助理,通过一键生成播客/视频/文档/网页文章摘要、思维导图,提高个人知识获取效率;自动存储知识,通过与知识库聊天,提高知识利用效率。

知我AI 26 查看详情 知我AI

:[范围]s/[搜索的字符串]/[替换的字符串]/g

将全部的「test」替换为「try」::%s/test/try/g将第 1 到 10 行的「test」替换为「try」::1,10s/test/try/g

查询服务器各项资源

了解服务器资源使用情况,可以帮助你更快找到问题点和优化方向。

服务器启动时间(uptime):

21:21:33:系统时间up 6 days, 7:40:服务器运行时间,时间越长表示越稳定。1 user:总连接数(注意不是用户数)。load average:系统平均负载,显示 1/5/15 分钟的平均负载(对于单核 CPU,建议值不超过 3,超过 5 需要注意)。

找出最耗费资源的程序(top):top 命令显示当前服务器资源使用情况。

可以使用 top -b -o +%MEM | head -n 17 按内存使用量排序并显示前 10 个进程(因为前 7 行是信息行,所以总共显示 17 行)。

以目录形式呈现当前磁盘使用情况(ncdu):当发现磁盘空间即将用尽且不确定哪个文件夹占用大量空间时,ncdu 可以高效检查。

扫描根目录的硬盘使用情况,使用 ncdu -x /,退出时按 q

搜索文件(find):从根目录开始搜索「php.ini」的位置:

sudo find / -name php.ini

如果文件名不确定,可以使用「?」进行模糊搜索:

sudo find / -name ph?.ini

搜索历史指令(Control+R):对于带有长参数的指令,history 会记住它们。按「Control+R」输入搜索字符串,bash 将显示最近匹配的指令;继续按「Control+R」搜索更早的历史指令,按「Enter」执行显示的指令。

检查网络环境

除了基本的 ping 命令,以下指令可以提供更详细的网络环境信息。

网络诊断瑞士军刀(nc):Netcat(nc)功能强大,这里分享常用功能。

测试目标服务器特定 port 是否开启:nc -v [host] [port]在两台服务器间复制文件:在接收文件的服务器上执行 nc -l 5000 > demo.js在发送文件的服务器上执行 nc [host] 5000这种方法类似于 scp,但不需要登录操作(无需账号密码),适用于无法互相登录的服务器。

设定 DNS 后确认是否正常(nslookup):以查询 google.com 的 IP 为例:nslookup google.com

执行结果中「192.168.220.186」是查询的 DNS Server,「172.217.160.110」是返回的 IP。

查询占用的 port(lsof):lsof(List Open Files)可以列出所有被进程打开的文件,用于查看哪个进程占用了特定 port。

lsof -i -P | grep :443

-i 查找网络连接,-P 列出实际 port,最后通过 grep 显示 port 为 443 的结果。

以上就是Linux 上鲜为人知却高效实用的指令合集的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/486067.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月8日 13:27:59
下一篇 2025年11月8日 13:32:18

相关推荐

  • 如何用Python处理音频文件?pydub库使用技巧详解

    pydub是python中处理音频文件的常用库,它简化了音频操作。1. 安装pydub后还需安装ffmpeg或libav作为底层支持;2. 使用audiosegment对象加载或创建音频;3. 通过切片操作提取音频片段,单位为毫秒;4. 使用+运算符拼接多个音频文件,建议格式一致;5. 利用expo…

    2025年12月14日 好文分享
    000
  • 怎样用Python操作Ceph?分布式存储连接

    python操作ceph最常用的方式是使用rados库操作rados层或使用boto3对接rgw的s3兼容api;2. rados库用于底层存储池和对象操作,依赖ceph客户端库并需配置ceph.conf和keyring;3. boto3通过endpoint_url对接ceph rgw,适合构建云原…

    2025年12月14日 好文分享
    000
  • Python如何实现自动化测试?Selenium框架详细使用教程

    selenium webdriver的安装与基本配置步骤如下:首先,确保已安装python和pip;其次,通过pip install selenium命令安装selenium库;然后,根据目标浏览器下载对应的webdriver(如chromedriver、geckodriver等),并确认其版本与浏…

    2025年12月14日 好文分享
    000
  • 如何使用Python实现屏幕录制?PyAV库配置教程

    要使用python实现屏幕录制,核心在于结合pyav和mss库分两步完成:1. 使用mss捕获屏幕图像帧;2. 利用pyav将图像帧编码并保存为视频文件。具体流程包括安装pyav、mss及ffmpeg依赖,配置ffmpeg环境变量,选择录制区域,循环捕获并处理图像数据,最后编码写入视频文件。常见问题…

    2025年12月14日 好文分享
    000
  • Python中如何操作Hive?PyHive连接方法

    1.pyhive支持的认证方式包括nosasl、kerberos和ldap;2.使用pyhive操作hive时需要注意参数化查询、资源管理、大数据量处理、性能优化和错误处理;3.pyhive可与pandas、pyspark及airflow等工具协同工作。pyhive连接hive常用的认证方式有三种:…

    2025年12月14日 好文分享
    000
  • 如何使用Python操作Redis?redis-py连接配置指南

    使用python操作redis最常用的方式是redis-py库。1. 安装:pip install redis;2. 基础连接:通过redis.redis()并指定host、port、db等参数建立连接;3. 数据操作:支持字符串、哈希、列表、集合、有序集合等数据类型的操作;4. 安全配置:设置pa…

    2025年12月14日 好文分享
    000
  • VS Code中远程Jupyter Notebook工作目录配置指南

    本文旨在解决VS Code连接远程Jupyter Notebook时,相对路径导入失效的问题。由于远程Jupyter内核默认工作目录为启动路径而非当前Notebook所在目录,导致模块导入错误。文章将深入探讨此问题,并提供一个通过配置VS Code settings.json 中 jupyter.r…

    2025年12月14日
    000
  • Python如何开发桌面应用?PySide6现代UI设计

    要开始使用pyside6开发桌面应用,首先通过pip安装:pip install pyside6,并运行一个简单窗口程序;设计现代界面可通过qss样式表、图标资源、动画效果及合理布局实现;实际开发需注意跨平台兼容、打包发布、性能优化及ui与逻辑分离。具体步骤依次为:1. 安装pyside6并编写基础…

    2025年12月14日 好文分享
    000
  • 怎样用Python处理音频文件?pydub使用指南

    python中使用pydub处理音频文件非常简便,适合剪切、合并、格式转换等任务。1. 安装需python环境、pydub库和ffmpeg;2. 加载与导出支持多种格式如mp3、wav;3. 常用操作包括裁剪(如前10秒audio[:10000])、拼接(+号连接)、调节音量(+/-db值);4. …

    2025年12月14日 好文分享
    000
  • 解决Python包安装后无法导入的问题

    本文旨在帮助开发者解决Python包通过pip安装后,在代码中却无法成功导入的问题。通过分析常见原因,例如缺失__init__.py文件、包结构不正确等,提供详细的排查步骤和解决方案,并给出修改setup.py和pyproject.toml文件的示例代码,确保包能被正确识别和导入。 当你在使用Pyt…

    2025年12月14日
    000
  • Java调用Python脚本:深入解析9009错误及跨语言交互实践

    本文深入探讨Java调用Python脚本时常见的9009错误,该错误通常指示系统无法找到指定命令或可执行文件。文章将分析其常见原因,提供详细的排查与解决方案,包括环境路径配置、脚本路径验证,并讨论跨语言交互的优缺点及替代方案,旨在帮助开发者实现稳定可靠的Java-Python集成。 在现代软件开发中…

    2025年12月14日
    000
  • Java调用Python脚本:解决9009错误及最佳实践

    本文详细探讨了在Java环境中调用Python脚本时遇到的9009错误,该错误通常指示系统无法找到指定的命令或文件。文章分析了导致此问题的常见原因,包括Python解释器和脚本路径配置不当,并提供了通过ProcessBuilder正确执行外部Python脚本的详细教程。内容涵盖了路径配置、输出流处理…

    2025年12月14日
    000
  • Python怎样实现语音识别?SpeechRecognition教程

    语音识别在python中借助speechrecognition库实现非常简便。1. 安装speechrecognition库,使用pip install speechrecognition;2. 若需使用非google api的服务,需额外申请密钥或安装依赖;3. 需安装pyaudio库支持麦克风输…

    2025年12月14日 好文分享
    000
  • 怎样用Python开发桌面应用?PyQt5入门指南

    用python开发桌面应用可通过pyqt5实现,步骤包括:1. 安装pyqt5并配置环境;2. 使用布局管理器设计界面;3. 绑定信号与槽实现交互逻辑;4. 使用pyinstaller打包发布程序。首先安装pyqt5库,运行示例代码创建基础窗口结构;接着选用qhboxlayout、qvboxlayo…

    2025年12月14日 好文分享
    000
  • Python如何调用系统命令?subprocess模块解析

    推荐使用subprocess模块执行系统命令。在python中,执行系统命令最推荐的方式是使用标准库中的subprocess模块,其功能强大且灵活,能替代旧方法如os.system()。1. subprocess.run()是从python 3.5开始的首选方式,适合基础场景,例如运行命令并捕获输出…

    2025年12月14日 好文分享
    000
  • Python如何实现自动化办公?pyautogui实战案例

    使用pyautogui实现自动化办公的核心是通过代码模拟鼠标和键盘操作。具体步骤如下:1. 安装pyautogui库,确保python环境配置正确;2. 利用click、write等函数模拟点击与输入,但需注意坐标依赖性和等待时间设置;3. 使用locateonscreen结合图像识别定位按钮,提升…

    2025年12月14日 好文分享
    000
  • Python怎样处理文本数据?字符串操作完整指南

    python处理文本数据的核心在于字符串操作与编码解码。1. 字符串可通过单引号、双引号或三引号定义,三引号适用于多行文本;2. 支持索引与切片操作,便于访问和反转字符序列;3. 提供拼接(+)、重复(*)及高效拼接的join()方法;4. 内置丰富字符串方法,如split()分割、replace(…

    2025年12月14日 好文分享
    000
  • Python print() 函数的底层机制与硬件交互解析

    Python的print()函数并非直接与硬件交互,而是通过多层抽象实现文本输出。它首先将数据传递给由C语言实现的Python解释器,解释器进而利用操作系统的标准输出流(stdout)。操作系统负责管理这些流,并通过设备驱动程序将数据发送至显示硬件,最终呈现在屏幕上。这一过程体现了从高级语言到操作系…

    2025年12月14日
    000
  • 深入理解 Python print() 函数:从代码到屏幕的硬件交互之旅

    Python中的print()函数并非直接与硬件交互。其输出过程涉及多层抽象:Python解释器将数据传递给操作系统,操作系统通过标准输出流和设备驱动程序最终将文本渲染到屏幕上。理解这一过程需要深入探究解释器、操作系统和底层C语言I/O机制的协同工作。 当我们执行一行简单的Python代码,例如 p…

    2025年12月14日
    000
  • Python怎样实现网页截图?selenium无头模式

    python结合selenium无头模式实现网页截图的核心步骤是:1. 安装selenium库并下载对应浏览器的webdriver;2. 导入webdriver和options模块;3. 创建chromeoptions对象并添加–headless、–disable-gpu、&…

    2025年12月14日 好文分享
    000

发表回复

登录后才能评论
关注微信