linux核心命令
- 目录:
- 1. `ls`
- 2. `alias`
- 3. `cd`
- 4. `clear`
- 5. `date`
- 6. `cat`
- 7. `head` 和 `tail`
- 8. `less` 和 `more`
- 9. `od`
- 10. `cp` 和 `scp`
- 11. `touch`
- 12. `mkdir` 和 `rmdir`
- 13. `rm`
- 14. `find`
- 15. `grep`
- 16. `diff`
- 17. `file`
- 18. `mv`
- 19. `wc`
目录:
1. ls
- 相关知识点
- 用于列出目录内容。
- 常用选项:
-l
(长格式显示)、-a
(显示所有文件,包括隐藏文件)、-h
(以易读的方式显示文件大小)。
- 代码示例
ls -lh
- 运行结果
total 12K
drwxr-xr-x 2 user group 4.0K Feb 21 10:00 dir1
-rw-r--r-- 1 user group 888 Feb 21 10:30 file1.txt
2. alias
- 相关知识点
- 用于创建命令别名,方便用户使用自定义的命令缩写。
- 别名只在当前会话有效,若要永久生效,需添加到 shell 配置文件(如
.bashrc
)中。
- 代码示例
alias ll='ls -l'
ll
- 运行结果
等同于执行ls -l
的输出,例如:
total 12K
drwxr-xr-x 2 user group 4.0K Feb 21 10:00 dir1
-rw-r--r-- 1 user group 888 Feb 21 10:30 file1.txt
3. cd
- 相关知识点
- 用于切换当前工作目录。
- 可使用绝对路径或相对路径。
cd
不加参数回到用户主目录。
- 代码示例
cd /home/user/Documents
pwd
- 运行结果
/home/user/Documents
4. clear
- 相关知识点
- 用于清除终端屏幕上的所有内容。
- 代码示例
clear
- 运行结果
终端屏幕被清空,光标回到屏幕左上角。
5. date
- 相关知识点
- 用于显示或设置系统日期和时间。设置日期和时间需要管理员权限。
- 代码示例
date
- 运行结果
Fri Feb 21 11:20:00 CST 2025
6. cat
- 相关知识点
- 用于连接文件并打印到标准输出,常用于查看小文件的内容。
- 代码示例
echo "Hello, World!" > test.txt
cat test.txt
- 运行结果
Hello, World!
7. head
和 tail
- 相关知识点
head
:显示文件开头的若干行,默认显示前 10 行,可通过-n
指定行数。tail
:显示文件末尾的若干行,默认显示后 10 行,可通过-n
指定行数。
- 代码示例
seq 1 20 > numbers.txt
head -n 5 numbers.txt
tail -n 3 numbers.txt
- 运行结果
# head 输出
1
2
3
4
5
# tail 输出
18
19
20
8. less
和 more
- 相关知识点
less
和more
都用于分页查看文件内容。less
功能更强大,支持向前和向后翻页,还能搜索。more
只能向前翻页。
- 代码示例
less numbers.txt
在 less
中按 q
退出后,接着执行:
more numbers.txt
- 运行结果
less
和more
会分页显示numbers.txt
的内容,按相应的操作键(如space
翻页)可查看不同部分。
9. od
- 相关知识点
- 以八进制、十六进制等格式显示文件内容,常用于查看二进制文件。
- 代码示例
echo -n "ABC" > binary.bin
od -tx1 binary.bin
- 运行结果
0000000 41 42 43
0000003
10. cp
和 scp
- 相关知识点
cp
:用于复制文件或目录,复制目录需加-r
选项。scp
:基于 SSH 协议在本地和远程主机之间安全复制文件。
- 代码示例
# cp 示例
cp test.txt test_copy.txt
# scp 示例(假设远程主机配置正确)
scp test.txt user@remote_host:/home/user/
- 运行结果
cp
:当前目录下会出现test_copy.txt
文件,内容与test.txt
相同。scp
:如果远程主机可达且权限正确,test.txt
会被复制到远程主机的/home/user/
目录下。
11. touch
- 相关知识点
- 用于创建新的空文件或更新已有文件的访问和修改时间。
- 代码示例
touch new_file.txt
- 运行结果
当前目录下会创建一个名为new_file.txt
的空文件。
12. mkdir
和 rmdir
- 相关知识点
mkdir
:用于创建新目录,可使用-p
递归创建多级目录。rmdir
:用于删除空目录。
- 代码示例
mkdir new_dir
rmdir new_dir
- 运行结果
先创建一个名为new_dir
的目录,然后删除该空目录。
13. rm
- 相关知识点
- 用于删除文件或目录,删除目录需加
-r
选项,-f
选项可强制删除。
- 用于删除文件或目录,删除目录需加
- 代码示例
rm test_copy.txt
- 运行结果
test_copy.txt
文件被删除。
14. find
- 相关知识点
- 用于在指定目录及其子目录中查找文件或目录,可根据文件名、文件类型、大小等条件查找。
- 代码示例
find /home/user -name "*.txt"
- 运行结果
列出/home/user
目录及其子目录下所有扩展名为.txt
的文件的路径。
15. grep
- 相关知识点
- 用于在文件中搜索匹配指定模式的行,支持正则表达式,常用选项
-i
(忽略大小写)、-r
(递归搜索目录)。
- 用于在文件中搜索匹配指定模式的行,支持正则表达式,常用选项
- 代码示例
grep "World" test.txt
- 运行结果
Hello, World!
16. diff
- 相关知识点
- 用于比较两个文件或目录的差异。
- 代码示例
echo "Line 1" > file1.txt
echo "Line 2" > file2.txt
diff file1.txt file2.txt
- 运行结果
1c1
< Line 1
---
> Line 2
17. file
- 相关知识点
- 用于确定文件的类型。
- 代码示例
file test.txt
- 运行结果
test.txt: ASCII text
18. mv
- 相关知识点
- 用于移动文件或目录,也可用于重命名文件或目录。
- 代码示例
mv test.txt renamed.txt
- 运行结果
test.txt
文件被重命名为renamed.txt
。
19. wc
- 相关知识点
- 用于统计文件的行数、单词数和字节数,可使用
-l
(行数)、-w
(单词数)、-c
(字节数)单独统计。
- 用于统计文件的行数、单词数和字节数,可使用
- 代码示例
wc renamed.txt
- 运行结果
1 2 13 renamed.txt
分别表示行数、单词数和字节数。
命令分类 | 命令 | 知识点 | 代码示例 | 运行结果 |
---|---|---|---|---|
文件和目录查看 | ls | 列出目录内容,常见参数有 -l (长格式)、-a (显示隐藏文件)、-h (以人类可读格式显示文件大小) | ls -lh | 显示当前目录下文件和目录的详细信息,文件大小以易读格式呈现,如 -rw-r--r-- 1 user group 1.2K Feb 21 10:00 file.txt |
文件和目录查看 | alias | 创建命令别名,方便快捷输入常用命令组合,别名仅在当前会话有效,可写入配置文件实现永久生效 | alias ll='ls -l' | 后续输入 ll 等同于执行 ls -l |
文件和目录导航 | cd | 用于切换当前工作目录,可使用绝对路径或相对路径,cd 无参数时返回用户主目录 | cd /home/user/Documents | 当前工作目录切换到 /home/user/Documents |
终端管理 | clear | 清除终端屏幕上的所有内容,使终端界面干净 | clear | 终端屏幕清空,光标移至左上角 |
系统信息 | date | 显示或设置系统的日期和时间,设置需要管理员权限 | date | 显示当前系统的日期和时间,如 Fri Feb 21 11:30:00 CST 2025 |
文件内容显示 | cat | 连接文件并打印到标准输出,常用于查看小文件内容 | cat file.txt | 在终端输出 file.txt 文件的全部内容 |
文件内容显示 | head | 显示文件开头的若干行,默认显示前 10 行,可通过 -n 指定行数 | head -n 5 file.txt | 显示 file.txt 文件的前 5 行内容 |
文件内容显示 | tail | 显示文件末尾的若干行,默认显示后 10 行,可通过 -n 指定行数 | tail -n 3 file.txt | 显示 file.txt 文件的最后 3 行内容 |
文件内容显示 | less | 分屏查看文件内容,支持向前和向后翻页,可使用 / 进行搜索 | less file.txt | 以分页方式打开 file.txt ,可使用上下键浏览内容 |
文件内容显示 | more | 分屏查看文件内容,只能向前翻页 | more file.txt | 以分页方式打开 file.txt ,按空格键向下翻页 |
文件内容显示 | od | 以八进制、十六进制等格式显示文件内容,常用于查看二进制文件 | od -tx1 file.bin | 以十六进制格式显示 file.bin 文件的内容 |
文件复制 | cp | 复制文件或目录,复制目录时需使用 -r 递归复制 | cp file.txt new_file.txt | 在当前目录下创建 new_file.txt ,内容与 file.txt 相同 |
文件复制 | scp | 基于 SSH 在本地和远程主机之间安全复制文件,格式为 scp [选项] 源文件 目标地址 | scp local_file.txt user@remote_host:/home/user/ | 将本地的 local_file.txt 文件复制到远程主机 user 用户的主目录下,需输入远程主机密码或使用密钥认证 |
文件和目录创建与删除 | touch | 创建新的空文件或更新已有文件的访问和修改时间 | touch new_file.txt | 在当前目录下创建一个名为 new_file.txt 的空文件 |
文件和目录创建与删除 | mkdir | 创建新的目录,可使用 -p 递归创建多级目录 | mkdir new_dir | 在当前目录下创建一个名为 new_dir 的新目录 |
文件和目录创建与删除 | rmdir | 删除空目录 | rmdir empty_dir | 删除名为 empty_dir 的空目录,若目录非空则删除失败 |
文件和目录创建与删除 | rm | 删除文件或目录,删除目录需使用 -r ,可添加 -i 交互式删除,-f 强制删除 | rm file.txt | 删除当前目录下的 file.txt 文件 |
文件和目录查找 | find | 在指定目录及其子目录中根据条件查找文件或目录,可按文件名、大小、修改时间等查找 | find /home -name "*.txt" | 查找 /home 目录及其子目录下所有扩展名为 .txt 的文件,并列出其路径 |
文件内容查找 | grep | 在文件中搜索匹配指定模式的行,可使用正则表达式,常见参数有 -i (忽略大小写)、-r (递归搜索目录) | grep "hello" file.txt | 显示 file.txt 文件中包含字符串 "hello" 的所有行 |
其他 | diff | 比较两个文件或目录的差异,常用于版本控制或文件对比 | diff file1.txt file2.txt | 输出 file1.txt 和 file2.txt 文件之间的差异,标记出添加、删除或修改的行 |
其他 | file | 确定文件的类型,通过分析文件内容特征判断格式 | file file.txt | 显示文件类型,如 file.txt: ASCII text |
其他 | mv | 移动文件或目录,也可用于重命名文件或目录 | mv old_name.txt new_name.txt | 将 old_name.txt 文件重命名为 new_name.txt |
其他 | wc | 统计文件的行数、单词数和字节数,可使用 -l (行数)、-w (单词数)、-c (字节数)单独统计 | wc file.txt | 输出 file.txt 文件的行数、单词数和字节数,如 10 50 200 file.txt |