【虚拟机】Linux常用命令

文章目录

  • 一、总览
  • 二、目录操作命令
    • [1. 查看和切换目录](#1. 查看和切换目录)
    • [2. 创建与删除目录](#2. 创建与删除目录)
    • [3. 复制与移动目录](#3. 复制与移动目录)
    • [4. 路径小贴士](#4. 路径小贴士)
  • 三、文件操作命令
    • [1. 文件的创建与删除](#1. 文件的创建与删除)
    • [2. 文件的复制、移动与重命名](#2. 文件的复制、移动与重命名)
    • [3. 文件内容查看](#3. 文件内容查看)
  • [四、Vim 编辑器命令](#四、Vim 编辑器命令)
    • (一)普通模式
      • [1. 文本编辑(删除复制粘贴)](#1. 文本编辑(删除复制粘贴))
      • [2. 光标移动](#2. 光标移动)
      • [3. 撤销与恢复](#3. 撤销与恢复)
      • [4. 快速进入插入模式](#4. 快速进入插入模式)
    • (二)插入模式
      • [1. 快速进入普通模式](#1. 快速进入普通模式)
      • [2. 光标移动](#2. 光标移动)
    • (三)命令模式
      • [1. 保存与退出](#1. 保存与退出)
      • [2. 全局搜索与替换](#2. 全局搜索与替换)
      • [3. 分屏与多文件操作](#3. 分屏与多文件操作)
      • [4. 显示行号](#4. 显示行号)
      • [5. 原样粘贴](#5. 原样粘贴)
      • [6. 对齐与格式化](#6. 对齐与格式化)
  • 五、查看系统信息
  • 六、C语言编译命令

一、总览

Linux的在线帮助命令(man):在 Linux 中,若要查找一个命令的用法,使用 man 命令获取详细说明

  • 一般来说:
    • 手册 1:用户命令
    • 手册 2:系统调用函数
    • 手册 3:标准库函数
man 手册 1 man 手册 2 man 手册 3
内容 可执行程序或 Shell 命令 操作系统内核提供的函数接口 标准库函数
面向对象 普通用户 系统程序员 应用开发者
说明 命令行中直接输入并运行的程序,通常位于 /bin 或 /usr/bin 目录下 应用程序与操作系统内核交换的途径,运行在内核态,用于执行底层任务 运行在用户态,为开发者提供比系统调用更高层次、更方便的编程接口
栗子 man 1 ls man 2 open man 3 printf
shell 复制代码
man 要查询的命令名 或 函数名
或
man 1 要查询的命令名
man 2 要查询的标准库函数名
man 3 要查询的系统函数名

清空命令:

shell 复制代码
清空输入的命令:clear

二、目录操作命令

1. 查看和切换目录

shell 复制代码
pwd 命令:
显示当前目录的绝对路径:pwd

ls 命令:
列出当前目录下的文件和子目录:ls
以长格式显示详细信息(包括权限、大小、修改时间等):ls -l
显示所有文件(包括以 . 开头的隐藏文件):ls -a
人性化显示文件大小(自动转换为KB、MB等单位):ls -lh

cd 命令:
返回上一级:cd ..
返回根目录:cd /
返回用户目录(家目录):cd 或 cd ~
快速切换回上一次所在的目录:cd -
进入目录:cd 目录名

2. 创建与删除目录

shell 复制代码
mkdir 命令:
创建新目录:mkdir 目录名
递归创建多级嵌套目录:mkdir -p 目录名/子目录名/子目录名

rmdir 命令:
删除空目录(若目录中包含文件或子目录回报错):rmdir 目录名

rm 命令:
递归删除非空目录及其所有内容:rm -r 目录名

3. 复制与移动目录

shell 复制代码
cp 命令:
复制目录:cp -r 目录名 路径
注:复制文件夹时必须加上 -r 参数(递归复制),否则无法复制目录内容
栗子:cp -r source_folder /target/path/

mv 命令:
移动目录: mv 目录名 新路径
重命名目录:mv 旧目录名 新目录名

4. 路径小贴士

shell 复制代码
绝对路径:从根目录 / 开始的路径
	+ 栗子:/usr/local
相对路径:不以 / 开头,基于当前所在目录的路径
	+ . :代表当前目录
	+ .. :代表上级目录
	+ 栗子:../local

三、文件操作命令

1. 文件的创建与删除

shell 复制代码
touch 命令:
创建空文件:touch 文件名
注:若文件已存在,会更新文件的时间戳

rm 命令:
删除文件:rm 文件名

2. 文件的复制、移动与重命名

shell 复制代码
cp 命令:
复制文件:cp 源文件名 新文件名

mv 命令:
移动文件:mv 文件名 路径
重命名文件:mv 旧文件名 新文件名

3. 文件内容查看

shell 复制代码
cat 命令:
一次性输出文件的全部内容: cat 文件名
一次性输出文件的全部内容(带行号): cat -n 文件名
注:适用于查看较小的文件

head 与 tail 命令:
查看文件的开头(默认10行): head 文件名
查看文件的前20行: head -n 20 文件名
查看文件的结尾(默认10行): tail 文件名
实时追踪日志文件的更新(排查问题神器): tail -f 日志文件名

less 命令:
+ 交互式分页查看器,非常适合查看大文件
+ 操作技巧:
	+ 按 空格 向下翻页
	+ 按 b 向上翻页
	+ 输入 /关键字 向下搜索
	+ 按 q 退出

四、Vim 编辑器命令

三种基本模式:

  • 普通模式:默认模式,用于移动光标、复制、删除等操作
    • i 进入插入模式
    • : 进入命令模式
  • 插入模式:用于输入文本
    • ESC 进入普通模式
  • 命令模式:用于保存、退出等操作

(一)普通模式

1. 文本编辑(删除复制粘贴)

shell 复制代码
删除/剪切:
删除光标所在的单个字符:x
剪切当前整行: dd
剪切从当前行及其之后的 n 行:ndd

复制:
复制当前行:yy
复制从当前行及其之后的 n 行:nyy

粘贴:
在光标后/下方粘贴:p
在光标前/上方粘贴:P

2. 光标移动

shell 复制代码
基础移动:h(左)、j(下)、k(上)、l(右)

单词级别:
+ 跳到下一个单词的开头(word):w
+ 跳到上一个单词的开头(back):b
+ 跳到当前或下一个单词的末尾(end):e

行内定位:
+ 跳到当前行的绝对行首:0(数字零)
+ 跳到当前行第一个非空字符处:^
+ 跳到当前行行尾:$

全局跳转:
+ 跳到文件第一行:gg
+ 跳到文件最后一行:G
+ 跳到第 n 行:nG

3. 撤销与恢复

shell 复制代码
撤销:
撤销上一步操作:u

恢复:
重做/恢复被撤销的操作:Ctrl + r

4. 快速进入插入模式

shell 复制代码
在光标前插入:i
在光标后插入:a
在当前行下方新建一行并插入:o(字母)
在当前行上方新建一行并插入:O(字母)
直接跳到当前行行尾并插入:A
直接跳到当前行首个非空字符前并插入:I

(二)插入模式

1. 快速进入普通模式

shell 复制代码
退出插入模式:
从插入模式进入普通模式: Esc

2. 光标移动

shell 复制代码
光标跳到当前行行首:Ctrl + a
光标跳到当前行行尾:Ctrl + e

(三)命令模式

1. 保存与退出

shell 复制代码
保存当前文件:w
退出vim(若有未保存的修改会拒绝退出):q
保存并退出:wq
强制退出(写错代码想放弃时使用):q!
强制保存并退出:wq!

2. 全局搜索与替换

shell 复制代码
向下搜索:/关键字,按回车后,按 n 查找下一个,按 N 查找上一个
向上搜索:?关键字
全文替换:%s/旧词/新词/g(将全文的"旧词"替换为"新词")
安全替换:%s/旧词/新词/gc(每次替换前都会询问是否替换)

3. 分屏与多文件操作

shell 复制代码
垂直分屏(左右):vsp 文件名
水平分平(上下):sp 文件名
窗口切换:Ctrl + w,然后按 w (在多个分屏窗口间切换)
只保留当前窗口:only

4. 显示行号

shell 复制代码
显示行号: set nu 或 set number
取消显示行号: set nonu

5. 原样粘贴

shell 复制代码
粘贴模式:
开启粘贴模式: set paste
关闭粘贴模式: set nopaste
将粘贴模式设置成快捷键:
在命令模式下输入: set pastetoggle=<F5> 就能在普通模式和粘贴模式间无缝切换

6. 对齐与格式化

方案一:开启鼠标支持

  • 命令模式下输入 set mouse=a 并回车
  • 鼠标选中一段代码,按 = 键对齐

方案二:使用Vim原生的"可视模式"(推荐)

  • V 进入可视模式:此时光标经过的地方就会被高亮选中
  • 移动光标扩大选区
  • 执行对齐命令:选中代码后,直接按 = 键对齐
    注:小写 v 会逐字选中,比较麻烦;大写 V 会整行选中,再按 j(向下),最后按 = 键对齐

五、查看系统信息

shell 复制代码
查看操作系统版本:lsb_release -a 或 uname -a
查看CPU信息:lscpu
查看内存信息(-g以GB为单位,-m以MB为单位): free -m
查看磁盘整体情况: df -h

六、C语言编译命令

shell 复制代码
编译.c源文件(默认生成a.out可执行文件):gcc 文件名
编译时连接库:gcc 文件名 -L.库路径 -l链接库名
指定编译的可执行文件的文件名:gcc 文件名 -o 指定生成的可执行文件的文件名
执行可执行文件:./a.out
相关推荐
daad7772 小时前
继续记录无人机SITL的起飞
linux
剑神一笑2 小时前
Linux ls 命令深度解析:从目录遍历到颜色输出的实现原理
linux·服务器·数据库
三千里5 小时前
ZSH的简单配置
linux·zsh·terminal
提伯斯6465 小时前
解决Fast-Drone-250编译相关错误
linux·ros·无人机·fast-drone
liulilittle6 小时前
过冲:拥塞控制的呼吸与盲行
linux·网络·c++·tcp/ip·计算机网络·tcp·通信
无足鸟ICT6 小时前
【RHCA+】三种工作模式
linux
Dlrb12116 小时前
Linux系统编程-会话、守护进程与系统日志
linux·守护进程·会话·进程组·系统日志
赵民勇6 小时前
Linux strings命令详解
linux·运维
GongzZz6 小时前
Linux 内存分配差异:用户空间 vs 内核空间
linux