Linux 命令行与 vi/vim 编辑器完全指南

一、Linux 命令行基础

(一)命令与命令行简介

  • 命令:Linux 系统内置的操作指令,以字符化形式使用,用于指示系统执行特定任务。

  • 命令行(终端):提供字符化的操作界面,用户通过键盘输入命令,系统读取后执行并返回结果。它是用户与操作系统进行交互的重要工具。

(二)Linux 命令的通用格式

command [-options] [parameter]

  • command:命令本体,指定要执行的操作。

  • -options:可选选项,用于控制命令的行为细节,可精确调整命令功能。

  • parameter:可选参数,明确命令的操作对象。

二、常用命令解析

(一)ls 命令

  • 作用:以平铺形式展示指定目录下的内容。不指定目录时,默认显示当前工作目录下的内容。

  • 示例ls /home/user 列出 /home/user 目录下的所有内容。

(二)cd 与 pwd 命令

  • cd 命令 :切换当前工作目录,语法是cd [Linux 路径]。不使用参数时,切换至用户的 HOME 目录。

  • pwd 命令:输出当前所在的工作目录,无需选项和参数。

  • 示例

    • 切换到 /home/user/docs 目录:cd /home/user/docs

    • 查看当前工作目录:pwd

(三)mkdir 与 touch 命令

  • mkdir 命令 :创建新的目录,语法是mkdir [-p] Linux 路径-p选项可自动创建不存在的父目录。

  • touch 命令 :创建新文件,语法是touch Linux 路径

  • 示例

    • 创建目录:mkdir /home/user/newdir

    • 创建文件:touch /home/user/newfile.txt

(四)cat、more 与 tail 命令

  • cat 命令 :查看文件内容,语法是cat Linux 路径

  • more 命令 :查看文件内容且可翻页,使用空格翻页,q键退出查看。

  • tail 命令 :查看文件尾部内容,语法是tail [-f -num] Linux 路径

  • 示例

    • 查看文件内容:cat /home/user/file.txt

    • 查看文件内容并翻页:more /home/user/file.txt

    • 查看文件尾部 10 行:tail -n 10 /home/user/file.txt

(五)cp、mv 与 rm 命令

  • cp 命令 :复制文件或文件夹,语法是cp [-r] 参数 1 参数 2-r选项用于递归复制文件夹。

  • mv 命令 :移动或重命名文件或文件夹,语法是mv 参数 1 参数 2

  • rm 命令 :删除文件或文件夹,语法是rm [-r -f] 参数 1 参数 2 ...... 参数 N-r用于删除文件夹,-f用于强制删除。

  • 示例

    • 复制文件:cp /home/user/file.txt /home/user/backup

    • 移动并重命名文件:mv /home/user/file.txt /home/user/docs/document.txt

    • 删除文件:rm /home/user/docs/*.tmp

(六)which 与 find 命令

  • which 命令 :查找命令的程序文件,语法是which 要查找的命令

  • find 命令 :查找指定文件,可按文件名查找,语法是find 起始路径 -name "被查找文件名",也支持按文件大小查找。

  • 示例

    • 查找命令文件:which ls

    • 按文件名查找:find /home/user -name "*.txt"

(七)echo 命令、反引号符与重定向符

  • echo 命令 :输出指定内容,语法是echo 输出的内容

  • 反引号符 :被反引号包围的内容会被作为命令执行。

  • 重定向符>将左侧命令结果覆盖写入右侧文件,>>追加写入。

  • 示例

    • 输出文本:echo "Hello, Linux!"

    • 命令执行并输出:echo The current date is date

    • 重定向输出:ls > dir_list.txt

(八)grep 与 wc 命令、管道符

  • grep 命令 :通过关键字过滤文件行,语法是grep [-n] 关键字 文件路径-n选项会在输出结果中显示匹配行的行号。

  • wc 命令 :统计文件的行数、单词数量等,语法是wc [-c -m -l -w] 文件路径

  • 管道符 :将管道符左边命令的结果作为右边命令的输入,用法是命令 1 | 命令 2

  • 示例

    • 搜索功能:grep "error" /var/log/syslog

    • 统计文件行数:wc -l /home/user/file.txt

    • 组合使用:cat /home/user/file.txt | grep "important"

(九)命令行快捷键

  • 光标移动

    • Ctrl + AHome:光标移至行首。

    • Ctrl + EEnd:光标移至行尾。

    • Ctrl + B 或左箭头:光标左移一个字符。

    • Ctrl + F 或右箭头:光标右移一个字符。

    • Ctrl + 左箭头Alt + B:光标左移一个单词。

    • Ctrl + 右箭头Alt + F:光标右移一个单词。

  • 文本编辑

    • Ctrl + U:删除光标到行首的内容。

    • Ctrl + K:删除光标到行尾的内容。

    • Ctrl + W:删除光标左侧的单词。

    • Alt + D:删除光标右侧的单词。

  • 命令历史

    • Ctrl + P:检索上一个命令。

    • Ctrl + N:检索下一个命令。

    • Ctrl + R:反向搜索历史命令。

  • 其他快捷方法

    • 快速清屏:Ctrl + L,效果等同于clear命令。

    • 中断命令:Ctrl + C,可终止当前正在执行的程序。

    • 暂停命令:Ctrl + Z,可将当前进程放到后台。

    • 复制粘贴:Ctrl + Shift + C复制文本到系统剪贴板,Ctrl + Shift + V粘贴文本到命令行。

三、vi/vim 编辑器的使用

(一)vi/vim 编辑器简介

vi/vim 是命令行模式下的文本编辑器,vim 是 vi 的升级版,功能更强大,一般使用 vim 即可。启动 vi/vim 编辑器的方式为:vi 文件路径vim 文件路径

(二)vi/vim 的三种工作模式

  • 命令模式(Command mode) :默认模式,所敲的按键都被编辑器理解为命令,以命令驱动执行不同的功能。在此模式下,不能自由进行文本编辑。可以通过以下快捷键进入其他模式:

    • i:在当前光标位置进入插入模式。

    • a:在当前光标位置之后进入插入模式。

    • I:在当前行的开头进入插入模式。

    • A:在当前行的结尾进入插入模式。

    • o:在当前光标下一行进入插入模式。

    • O:在当前光标上一行进入插入模式。

  • 输入模式(Insert mode) :也就是所谓的编辑模式、插入模式。此模式下,可以对文件内容进行自由编辑。按ESC键可以退出输入模式,回到命令模式。

  • 底线命令模式(Last line mode) :以:开始,通常用于文件的保存、退出等操作。在命令模式内,输入:即可进入底线命令模式。常用的底线命令模式命令如下:

    • :wq:保存并退出。

    • :q:仅退出。

    • :q!:强制退出。

    • :w:仅保存。

    • :set nu:显示行号。

    • :set paste:设置粘贴模式。

(三)命令模式下快捷键

  • 光标移动

    • k:向上移动光标。

    • j:向下移动光标。

    • h:向左移动光标。

    • l:向右移动光标。

    • 0(数字零):移动光标到当前行的开头。

    • $:移动光标到当前行的结尾。

    • PgUp:向上翻页。

    • PgDn:向下翻页。

    • gg:跳转到文件的首行。

    • G:跳转到文件的尾行。

  • 文本编辑

    • dd:删除光标所在行的内容。

    • ndd(n 为数字):删除当前光标向下 n 行。

    • yy:复制当前行。

    • nyy(n 为数字):复制当前行和下面的 n 行。

    • p:粘贴复制的内容。

    • u:撤销修改。

    • Ctrl + R:反向撤销修改。

    • dG:从当前行开始,向下全部删除。

    • dgg:从当前行开始,向上全部删除。

    • d$:从当前光标开始,删除到本行的结尾。

    • d0:从当前光标开始,删除到本行的开头。

  • 查找替换

    • /:进入搜索模式,在命令模式下输入/后输入要查找的文本,按Enter键开始向下查找。

    • ?:进入反向搜索模式,输入?后输入要查找的文本,按Enter键开始向上查找。

    • n:向下继续查找。

    • N:向上继续查找。

    • :%s/旧内容/新内容/g:将文件中所有匹配的旧内容替换为新内容。

(四)vi/vim 的实用功能

  • 多窗口操作 :使用:split命令可将当前文件分成两个窗口显示,方便同时查看文件的不同部分。

  • 宏录制 :在命令模式下,按下q键再按一个字母(如a)开始录制宏,再次按下q键结束录制。之后可以使用@a来执行录制的宏,提高重复操作的效率。

四、总结

掌握 Linux 命令行的基础知识和常用命令,是深入学习 Linux 系统的前提。通过本文的介绍,希望大家对 Linux 命令行有了更深入的认识,并能熟练运用这些基础命令进行日常操作。在后续的学习中,可以逐步探索更多高级命令和功能,提升自己在 Linux 环境下的工作效率。同时,vi/vim 编辑器作为 Linux 系统中功能强大的文本编辑工具,掌握其使用方法对于提高工作效率也至关重要。通过实际操作和不断练习,你将能够更加熟练地运用这些工具,从而更好地应对各种 Linux 系统相关的工作和学习任务。

相关推荐
望获linux8 分钟前
实时操作系统在服务型机器人中的关键作用
linux·机器人·操作系统·开源软件·rtos·具身智能
哈哈幸运28 分钟前
Linux Sed 深度解析:从日志清洗到 K8s 等12个高频场景
linux·运维·编辑器·sed
心随_风动31 分钟前
主流操作系统对比分析(macOS、Linux、Windows、Unix)
linux·windows·macos
姜太小白40 分钟前
【VSCode】VS Code自动换行设置方法
ide·vscode·编辑器
啊吧怪不啊吧1 小时前
Linux常见指令介绍下(入门级)
linux·开发语言·centos
陈大大陈2 小时前
基于 C++ 的用户认证系统开发:从注册登录到Redis 缓存优化
java·linux·开发语言·数据结构·c++·算法·缓存
maotou5262 小时前
Ubuntu22学习记录
linux·ubuntu
杨凯凡2 小时前
Linux安全防护:全方位服务安全配置指南
linux·运维·服务器·安全
李菠菜2 小时前
CentOS系统中重置Root用户密码的完整步骤详解
linux·运维
Nightwish52 小时前
Linux随记(十七)
linux·运维·服务器