当前位置: 首页 > news >正文

Linux常用工具

文章目录

  • tar打包命令详解
  • unzip命令:解压zip文件
  • vim操作详解
  • netstat详解
  • df命令详解
  • ps命令详解
  • find命令详解

tar打包命令详解

  • tar命令做打包操作

    • 当 tar 命令用于打包操作时,该命令的基本格式为:
    tar  [选项]  源文件或目录
    
  • 此命令常用的选项及各自的含义如表所示

    选项含义
    -c将多个文件或目录进行打包
    -A追加tar文件到归档文件
    -f 包名指定包的文件名,包的扩展名是用来给管理员识别格式的,所以一点要正确指定扩展名
    -v显示打包文件过程
  • 需要注意的是,在使用 tar 命令指定选项时可以不在选项前面输入“-”。例如,使用“cvf”选项和 “-cvf”起到的作用一样

  • 实例1

    • 打包文件和目录。
      在这里插入图片描述
    • 选项 “-cvf” 一般是习惯用法,记住打包时需要指定打包之后的文件名,而且要用 “.tar” 作为扩展名。打包目录也是如此:
      在这里插入图片描述
  • 实例2:打包并压缩目录。

    • 首先声明一点,压缩命令不能直接压缩目录,必须先用 tar 命令将目录打包,然后才能用 gzip 命令或 bzip2 命令对打包文件进行压缩。例如:
      在这里插入图片描述
  • tar命令做解打包操作

    • 当 tar 命令用于对 tar 包做解打包操作时,该命令的基本格式如下:
    tar [选项] 压缩包
    
    • 当用于解打包时,常用的选项与含义如表所示。
    选项含义
    -x对tar包做解打包操作
    -f指定要解压的tar包的包名
    -t只查看tar包中有哪些文件或目录,不对tar包做打包操作
    -C 目录指定解打包位置
    -v显示解打包的具体过程
  • 其实解打包和打包相比,只是把打包选项 “-cvf” 更换为 “-xvf”

  • 实例1
    在这里插入图片描述

  • 如果使用 “-xvf” 选项,则会把包中的文件解压到当前目录下。如果想要指定解压位置,则需要使用 “-C(大写)” 选项。例如:
    在这里插入图片描述

  • tar命令做打包压缩(解压缩解打包)操作

    • 当 tar 命令同时做打包压缩的操作时,其基本格式如下:
    tar [选项] 压缩包 源文件或目录
    
    • 此处常用的选项有以下 2 个,分别是:
      • -z:压缩和解压缩 “.tar.gz” 格式;
      • -j:压缩和解压缩 ".tar.bz2"格式。
  • 实例:压缩与解压缩 ".tar.gz"格式
    在这里插入图片描述

  • 解压缩也只是在解打包选项 “-xvf” 前面加了一个 “-z” 选项。
    在这里插入图片描述

unzip命令:解压zip文件

  • unzip 命令可以查看和解压缩 zip 文件。该命令的基本格式如下:
unzip [选项] 压缩包名
  • 此命令常用的选项以及各自的含义如表所示。
选项含义
-d 目录名将压缩文件解压到指定目录下
-n解压时并不覆盖已经存在的文件
-o解压时覆盖已经存在的文件,并且无序用户确认
-v查看压缩文件的详细信息,包括压缩文件中包含的文件大小、文件名以及压缩比等,但并不做解压操作
-t测试压缩文件有无损坏,但并不解压
-x 文件列表解压文件,但不包含文件列表中指定的文件

vim操作详解

  • Vim 查找文本

    • 在命令模式下输入英文状态的下的/
    快捷键功能描述
    /abc从光标所在位置向前查找字符串 abc
    /^abc查找以abc为行首的行
    /abc$查找以abc为行尾的行
    ?abc从光标所在为主向后查找字符串 abc
    n向同一方向重复上次的查找指令
    N向相反方向重复上次的查找
  • Vim 替换文本

    快捷键功能描述
    r替换光标所在位置的字符
    R从光标所在位置开始替换字符,其输入内容会覆盖掉后面的等长的文本内容,按Esc可以结束覆盖
    : s/a1/a2/g将当前光标所在行中的所有a1用a2替换
    /n1,n2s/a1/a2/g将文件中n1到n2行中的所有a1用a2替换
    :%s/a1/a2/g将文件所有行中的所有a1用a2替换
  • Vim移动光标快捷键汇总

    • Vim 文本编辑器中,最简单的移动光标的方式是使用方向键,但这种方式的效率太低,更高效的方式使用快捷键。
    • Vim 移动光标常用的快捷键及其功能如下面各表所示,需要注意的是,表中所有的快捷键都在命令模式(默认状态)下直接使用。
  • Vim快捷方向键

    快捷键功能描述
    h光标向左移动一位
    j光标向下移动一行(以回车为换行符),也就是光标向下移动
    k光标向上移动一行(也就是向上移动)
    l光标向右移动一位

    最初使用,大家可能觉得比较别扭,但熟能生巧,使用此方式移动光标同样能够提高编辑速度。

  • Vim光标以单词为单位移动

    • 某些情形下,可能需要光标迅速移动至一行中的某个位置,将光标以单词为单位进行移动就会很方便。
    快捷键功能描述
    w 或 W光标移动至下一个单词的单词首
    b 或 B光标移动至上一个单词的单词首
    e 或 E光标移动至下一个单词的单词尾
    nw 或 nWn为数字,表示光标向右移动n个单词
    nb 或 nBn为数字,表示光标向左移动n个单词
  • Vim光标移动至行首或行尾

    快捷键功能描述
    0 或 ^光标移动至当前行的行首
    $光标移动至当前行的行尾
    n$光标移动至当前行只有n行的行尾,n为数字
  • Vim光标移动至指定字符

    • 一行中,如果需要将光标移动到当前行的某个特点字符,则可以使用表中的快捷键。

      快捷键功能描述
      fx光标移动至当前行中下一个 x 字符处
      Fx光标移动至当前行中上一个 x 字符处
  • Vim光标移动到指定行

快捷键功能描述
gg光标移动至文件开头
G光标移动至文件末尾
nG光标移动到第n行,n为字符
:n编辑模式下使用的快捷键,可以将光标快速定义到指定的行首
  • Vim撤销和恢复撤销快捷键用法详解
    • 使用 Vim 编辑文件内容时,经常会有如下 2 种需求:
      • 对文件内容做了修改之后,却发现整个修改过程是错误或者没有必要的,想将文件恢复到修改之前的样子。
      • 将文件内容恢复之后,经过仔细考虑,又感觉还是刚才修改过的内容更好,想撤销之前做的恢复操作。
  • 基于这 2 种需求,Vim 编辑器提供了撤销和恢复撤销的命令
快捷键功能
u(小写)undo 的第一个字母,功能是撤销最近一次对文本做的修改操作
Crl+RRedo的第一个字母,功能是恢复最近一次所做的撤销操作
U(大写)第一次会撤销对一行文(光标所在行)做过的全部操作,第二次使用该命令会恢复对该行文本做过的所有操作
  • Vim批量注释和自定义注释
    • 使用 Vim 编辑 Shell 脚本,在进行调试时,需要进行多行的注释,每次都要先切换到输入模式,在行首输入注释符"#"再退回命令模式,非常麻烦。

    • 连续行的注释其实可以用替换命令来完成。换句话说,在指定范围行加"#"注释,可以使用 “:起始行,终止行 s/^/#/g”,例如:

      :1,10s/^/#/g
      

      表示在第 1~10 行行首加"#“注释。”^"意为行首;"g"表示执行替换时不询问确认。如果希望每行交互询问是否执行,则可将 “g” 改为 “c”。

    • 取消连续行注释,则可以使用 “:起始行,终止行s/^#//g”,例如:

      ;1,10s/^#//g
      

      意为将行首的"#"替换为空,即删除。

  • 设置行号
    • vim设置显示行号
:set nu
  • vim设置不显示行号
:set nonu
  • 永久设置显示行号
    • 在 ~/ 目录下建立 .vimrc 文件,并在其中添加 set nu 代码,关闭保存该文件即可。
      # 步骤如下
      cd ~
      vim .vimrc
      其中添加 set nu
      
  • vi/vim键盘图
    在这里插入图片描述

netstat详解

  • netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。
    • 语法:
    netstat [选项]
    
  • 说明:(还有很多选项大家可以自己查询)
    在这里插入图片描述

df命令详解

  • Linux df(英文全拼:disk free) 命令用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计。
    • 语法:
    df [选项]... [FILE]...
    
    • 文件-a, --all 包含所有的具有 0 Blocks 的文件系统
    • 文件–block-size={SIZE} 使用 {SIZE} 大小的 Blocks
    • 文件-h, --human-readable 使用人类可读的格式(预设值是不加这个选项的…)
    • 文件-H, --si 很像 -h, 但是用 1000 为单位而不是用 1024
    • 文件-i, --inodes 列出 inode 资讯,不列出已使用 block
    • 文件-k, --kilobytes 就像是 --block-size=1024
    • 文件-l, --local 限制列出的文件结构
    • 文件-m, --megabytes 就像 --block-size=1048576
    • 文件-t, --type=TYPE 限制列出文件系统的 TYPE
    • 文件-T, --print-type 显示文件系统的形式
    • 文件-x, --exclude-type=TYPE 限制列出文件系统不要显示 TYPE
    • 文件-v (忽略)
    • 文件–help 显示这个帮手并且离开
    • 文件–version 输出版本资讯并且离开

ps命令详解

  • Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。

    • 语法:
    ps [options] [--help]
    
    • 参数:(仅列出几个常用的参数并大略介绍含义)
      • -A 列出所有的进程
      • -au 显示较详细的资讯
      • -aux 显示所有包含其他使用者的进程
      • -w 显示加宽可以显示较多的资讯
  • 实例:

    • 查找指定进程格式:
    ps -ef | grep 进程关键字
    
    • 显示 php 的进程:
    ps -ef | grep php
    
    • 显示进程信息
    ps -A 	
    
    • 显示指定用户信息
    ps -u root //显示root进程用户信息
    
    • 显示所有进程信息,连同命令行
    ps -ef //显示所有命令,连带命令行
    

find命令详解

  • Linux find 命令用于在指定目录下查找文件和目录。
  • 它可以使用不同的选项来过滤和限制查找的结果。
  • 语法:
find [path] [erpression]
  • 参数说明:

    • path 是要查找的目录路径,可以是一个目录或文件名,也可以是多个路径,多个路径之间用空格分隔,如果未指定路径,则默认为当前目录。
    • expression 是可选参数,用于指定查找的条件,可以是文件名、文件类型、文件大小等等。
  • 实例:
    在这里插入图片描述

相关文章:

Linux常用工具

文章目录 tar打包命令详解unzip命令:解压zip文件vim操作详解netstat详解df命令详解ps命令详解find命令详解 tar打包命令详解 tar命令做打包操作 当 tar 命令用于打包操作时,该命令的基本格式为: tar [选项] 源文件或目录此命令常用的选项及…...

AI未来的发展如何

AI(人工智能)的发展前景非常广阔,随着技术的不断进步和应用场景的不断拓展,AI将在多个领域发挥重要作用。以下是对AI发展前景的详细分析: 一、技术突破与创新 生成式AI的兴起:以ChatGPT为代表的生成式AI技…...

若依替换首页上的logo

...

sed的使用示例

场景:使用sed将多个空格变成单空格,再使用cut来切分得到需要的结果 得到后面这个文件名: ls ./ drwxr-x— 2 root root 6 Jul 18 9:00 7b40f1412d83c1524af7977593607f15 drwxr-x— 2 root root 6 Jul 18 14:00 50af29cef2c65a9d28905a3ce831bcb7 drwxr-x— 2 root root 6 Jul…...

学历不是障碍:大专生如何成功进入软件测试行业

摘要: 在当今技术驱动的职场环境中,软件测试已成为一个关键的职业领域。尽管许多人认为高学历是进入这一行业的先决条件,但实际上,大专学历的学生同样有机会在软件测试领域取得成功。本文将探讨大专生如何通过技能提升、实践经验和…...

文件解析漏洞—IIS解析漏洞—IIS6.X

目录 方式 1:目录解析 方式 2:畸形文件解析 方式 3:PUT 上传漏洞(123.asp;.jpg 解析成 asp) 环境:Windows server 2003 添加 IIS 管理工具——打开 IIS——添加网站 创建完成之后,右击创建的…...

Sqlmap中文使用手册 - Brute force模块参数使用

目录 1. Brute force模块的帮助文档2. 各个参数的介绍2.1 --common-tables2.2 --common-columns2.3 --common-files 1. Brute force模块的帮助文档 Brute force:These options can be used to run brute force checks--common-tables Check existence of common tables--c…...

ubuntu20.04 开源鸿蒙源码编译配置

替换华为源 sudo sed -i "shttp://.*archive.ubuntu.comhttp://repo.huaweicloud.comg" /etc/apt/sources.list && sudo sed -i "shttp://.*security.ubuntu.comhttp://repo.huaweicloud.comg" /etc/apt/sources.list 安装依赖工具 如果是ubun…...

程序员面试 “八股文”在实际工作中是助力、阻力还是空谈?

“八股文”在实际工作中是助力、阻力还是空谈? 作为现在各类大中小企业面试程序员时的必问内容,“八股文”似乎是很重要的存在。但“八股文”是否能在实际工作中发挥它“敲门砖”应有的作用呢?有IT人士不禁发出疑问:程序员面试考…...

广告从用户点击开始到最终扣费的过程

用户点击广告 用户在网页或移动应用上看到广告,并点击广告。这一事件触发了整个广告处理流程。 广告请求触发 用户点击广告后,客户端(如浏览器、APP)向广告系统发送广告点击请求。请求通常包含以下信息: 用户ID 设备信…...

Linux系统编程-信号进程间通信

目录 异步(Asynchronous) 信号 数据结构 1.kill 2.alarm 3.pause 4.setitimer 5.abort 信号集(sigset_t类型) 1.sigemptyset 2.sigfillset 3.sigaddset 4.sigdelset 5.sigismember 信号屏蔽 1.sigprocmask 2.sigpending 3.sigsus…...

Attention Module (SAM)是什么?

SAM(Spatial Attention Module,空间注意力模块)是一种在神经网络中应用的注意力机制,特别是在处理图像数据时,它能够帮助模型更好地关注输入数据中不同空间位置的重要性。以下是关于SAM的详细解释: 1. 基本…...

【C语言】堆排序

堆排序即利用堆的思想来进行排序,总共分为两个步骤: 1. 建堆 升序:建大堆 降序:建小堆 原因分析: 若升序建小堆时间复杂度是O(N^2) 升序建大堆,时间复杂度O(N*logN) 所以升序建大堆…...

ntp服务重启报错Failed to restart ntpd.service: Unit is masked.

问题概述: 重启ntp服务报错Failed to restart ntpd.service: Unit is masked,使用systemctl unmask ntpd.service命令关闭屏蔽还是报错Failed to restart ntpd.service: Unit is masked 解决方法: 重装ntp服务 yum remove ntpyum install…...

面试题-每日5到

16.Files的常用方法都有哪些? Files.exists():检测文件路径是否存在 Files.createFile():创建文件 Files.createDirectory():创建文件夹 Files.delete():删除一个文件或目录 Files.copy():复制文件 Files.move():移动文件 Files.size():查看文件个数 Files.read():读…...

代码美学大师:打造Perl中的个性化代码格式化工具

代码美学大师:打造Perl中的个性化代码格式化工具 在软件开发过程中,代码的可读性至关重要。Perl,作为一种灵活的脚本语言,允许开发者以多种方式实现代码格式化。自定义代码格式化工具不仅能提升代码质量,还能加强团队…...

成为一名月薪 2 万的 web 安全工程师需要掌握哪些技能?

现在 web 安全工程师比较火,岗位比较稀缺,现在除了一些大公司对学历要求严格,其余公司看中的大部分是能力。 有个亲戚的儿子已经工作 2 年了……当初也是因为其他的行业要求比较高,所以才选择的 web 安全方向。 资料免费分享给你…...

Linux中如何添加磁盘分区

在Linux中添加分区通常涉及到几个步骤,包括识别磁盘、创建分区、格式化分区,以及挂载或将其用作特定的文件系统类型(如LVM、RAID等)。以下是一个基本的步骤指南,假设你正在使用命令行界面(CLI)和…...

计算机毕业设计Hadoop+Hive专利分析可视化 面向专利的大数据管理系统 专利爬虫 专利数据分析 大数据毕业设计 Spark

《Hadoop专利大数据分析可视化系统》开题报告 一、选题背景与意义 随着信息技术的飞速发展,全球数据量呈现爆炸式增长,特别是在专利领域,数据的积累和更新速度更是惊人。专利数据不仅包含了技术创新的详细信息,还反映了行业的发…...

git是什么?git和svn的区别。git的一些命令

Git是什么 Git是一个开源的分布式版本控制系统(Distributed Version Control System,简称DVCS),它可以有效、高速地处理从很小到非常大的项目版本管理。版本控制系统能追踪项目从开始到结束的整个过程,对编程人员而言…...

React hook之useRef

React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

Java 8 Stream API 入门到实践详解

一、告别 for 循环&#xff01; 传统痛点&#xff1a; Java 8 之前&#xff0c;集合操作离不开冗长的 for 循环和匿名类。例如&#xff0c;过滤列表中的偶数&#xff1a; List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行

项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战&#xff0c;克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

C++ 设计模式 《小明的奶茶加料风波》

&#x1f468;‍&#x1f393; 模式名称&#xff1a;装饰器模式&#xff08;Decorator Pattern&#xff09; &#x1f466; 小明最近上线了校园奶茶配送功能&#xff0c;业务火爆&#xff0c;大家都在加料&#xff1a; 有的同学要加波霸 &#x1f7e4;&#xff0c;有的要加椰果…...

安卓基础(Java 和 Gradle 版本)

1. 设置项目的 JDK 版本 方法1&#xff1a;通过 Project Structure File → Project Structure... (或按 CtrlAltShiftS) 左侧选择 SDK Location 在 Gradle Settings 部分&#xff0c;设置 Gradle JDK 方法2&#xff1a;通过 Settings File → Settings... (或 CtrlAltS)…...