一、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 + A
或Home
:光标移至行首。Ctrl + E
或End
:光标移至行尾。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 系统相关的工作和学习任务。