Linux常用工具

文章目录

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 或 nW n为数字,表示光标向右移动n个单词
    nb 或 nB n为数字,表示光标向左移动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+R Redo的第一个字母,功能是恢复最近一次所做的撤销操作
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 是可选参数,用于指定查找的条件,可以是文件名、文件类型、文件大小等等。
  • 实例:

相关推荐
一点媛艺41 分钟前
Kotlin函数由易到难
开发语言·python·kotlin
姑苏风1 小时前
《Kotlin实战》-附录
android·开发语言·kotlin
耶啵奶膘1 小时前
uniapp-是否删除
linux·前端·uni-app
奋斗的小花生2 小时前
c++ 多态性
开发语言·c++
魔道不误砍柴功2 小时前
Java 中如何巧妙应用 Function 让方法复用性更强
java·开发语言·python
闲晨2 小时前
C++ 继承:代码传承的魔法棒,开启奇幻编程之旅
java·c语言·开发语言·c++·经验分享
2401_850410832 小时前
文件系统和日志管理
linux·运维·服务器
老猿讲编程2 小时前
一个例子来说明Ada语言的实时性支持
开发语言·ada
XMYX-03 小时前
使用 SSH 蜜罐提升安全性和记录攻击活动
linux·ssh
Chrikk3 小时前
Go-性能调优实战案例
开发语言·后端·golang