面试必考的40个Linux常用命令(文末免费下载Linux命令大全学习教程)

举报
ImAlex 发表于 2024/10/29 18:17:11 2024/10/29
【摘要】 Linux面试必考的40个Linux常用命令(文末附Linux命令大全) ls、cd、pwd、cp、mv、rm、mkdir、rmdir、touch、cat、tail、head、grep、find、chmod、chown、ps、top、df、du、ln、tar、zip、unzip、rsync、scp、wc、sort、uniq、cut、sed、awk、echo、date、uptime、uname。。。

Linux面试必考的40个Linux常用命令(文末附Linux命令大全)
ls、cd、pwd、cp、mv、rm、mkdir、rmdir、touch、cat、tail、head、grep、find、chmod、chown、ps、top、df、du、ln、tar、zip、unzip、rsync、scp、wc、sort、uniq、cut、sed、awk、echo、date、uptime、uname、whoami、history、clear、man

image.png


🧑 博主简介:现任阿里巴巴嵌入式技术专家,15年工作经验,深耕嵌入式+人工智能领域,精通嵌入式领域开发、技术管理、简历招聘面试。各技术博客社区平台的优质创作者,提供产品测评、学习辅导、简历面试辅导、毕设辅导、项目开发、C/C++/Java/Python/Linux/AI等方面的服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:gylzbk)

💬 博主粉丝群介绍:① 群内高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 群里红包不断,异常活跃,感兴趣的加我vx(ID:gylzbk),拉你进群,互相学习共同进步。

在 Linux 面试中,熟悉常用的 Linux 命令是不可或缺的。这不仅帮助你更好地理解系统操作,还能应对实际问题和面试考察。本文详细介绍 40 个常用的 Linux 命令,并通过表格解析每个命令的常用选项,最后附上具体示例,以帮助你全面掌握这些命令。

1. ls

列出目录内容的命令。

功能

ls          # 列出当前目录中的文件和目录
ls -l       # 列出详细信息,包括权限、所有者、大小和修改时间
ls -a       # 列出所有文件,包括隐藏文件(以.开头的文件)
ls -lh      # 以人类可读的格式列出详细信息

常用选项表

选项 说明
-l 列出详细信息(列表格式)
-a 列出所有文件,包括隐藏文件
-h 以人类可读的格式显示文件大小
-R 递归列出子目录及其内容

示例命令

ls -l /home/user

2. cd

改变当前工作目录。

功能

cd /path/to/directory     # 切换到指定目录
cd ..                     # 切换到上一级目录
cd ~                      # 切换到用户主目录
cd -                      # 切换到上一次所在目录

常用选项表

选项 说明
切换到指定的目录
切换到上一级目录
~ 切换到用户主目录
- 切换到上一次所在目录

示例命令

cd /var/log

3. pwd

显示当前工作目录的完整路径。

功能

pwd     # 输出当前工作目录的路径

常用选项表

选项 说明
输出当前工作目录的完整路径

示例命令

pwd

4. cp

复制文件或目录。

功能

cp source_file target_file    # 复制文件
cp -r source_dir target_dir   # 递归复制目录及其内容

常用选项表

选项 说明
-r 递归复制目录及其内容
-i 覆盖前进行提示
-u 只复制比目标文件新的文件
-v 显示详细的复制过程

示例命令

cp -r /home/user/documents /backup/documents

5. mv

移动或者重命名文件或目录。

功能

mv old_name new_name      # 重命名文件或目录
mv file1 /new/directory/  # 移动文件到新目录

常用选项表

选项 说明
-i 覆盖前进行提示
-u 只移动比目标文件新的文件
-v 显示详细的移动过程

示例命令

mv old_project new_project

6. rm

删除文件或目录。

功能

rm file        # 删除单个文件
rm -r dir      # 递归删除目录及其内容
rm -f file     # 强制删除文件(不提示确认)

常用选项表

选项 说明
-r 递归删除目录及其内容
-f 强制删除(不提示确认)
-i 删除前提示确认

示例命令

rm -rf /tmp/temporary_files

7. mkdir

创建目录。

功能

mkdir new_directory           # 创建单个目录
mkdir -p parent/child         # 创建目录树,包括父目录

常用选项表

选项 说明
-p 递归创建多级目录
-v 显示详细的创建过程

示例命令

mkdir -p /new/path/to/directory

8. rmdir

删除空目录。

功能

rmdir empty_directory         # 删除空目录

常用选项表

选项 说明
-p 递归删除多级空目录
-v 显示详细的删除过程

示例命令

rmdir /tmp/empty_directory

9. touch

创建空文件或更新文件的修改时间。

功能

touch new_file                # 创建新文件
touch existing_file           # 更新文件的修改时间

常用选项表

选项 说明
-a 仅修改访问时间
-m 仅修改修改时间
-c 不创建任何文件,只修改时间

示例命令

touch /path/to/newfile.txt

10. cat

连接和显示文件内容。

功能

cat file                     # 显示文件内容
cat file1 file2              # 合并并显示多个文件内容

常用选项表

选项 说明
-n 显示行号
-b 显示非空行的行号
-s 压缩多个空行
-v 显示不可打印的字符

示例命令

cat /path/to/file.txt

11. tail

显示文件的最后几行。

功能

tail file                    # 显示文件的最后10行
tail -n 20 file              # 显示文件的最后20行
tail -f logfile              # 实时刷新并显示日志文件的新增内容

常用选项表

选项 说明
-n 显示最后几行
-f 实时刷新显示,常用于观察日志文件的变化
-c 显示最后几字节

示例命令

tail -f /var/log/syslog

12. head

显示文件的前几行。

功能

head file                   # 显示文件的前10行
head -n 20 file             # 显示文件的前20

常用选项表

选项 说明
-n 显示前几行
-c 显示前几字节

示例命令

head -n 20 /path/to/file.txt

13. grep

搜索文本中的模式。

功能

grep "pattern" file          # 在文件中搜索包含特定模式的行
grep -r "pattern" directory  # 在目录中递归搜索包含特定模式的行
grep -i "pattern" file       # 忽略大小写进行搜索

常用选项表

选项 说明
-i 忽略大小写
-v 反向搜索(不匹配模式的行)
-r 递归搜索目录中的文件
-n 显示匹配行的行号
-l 仅显示包含匹配的文件名

示例命令

grep -rn "main" /path/to/project

14. find

搜索文件和目录。

功能

find /path -name "filename"      # 在目录中搜索指定文件名
find /path -type d -name "dirname"  # 搜索特定名称的目录
find /path -mtime -1            # 搜索最近一天内修改的文件

常用选项表

选项 说明
-name 按文件名搜索
-type 按文件类型搜索(f:文件,d:目录)
-mtime 按修改时间搜索(例如 -1 表示最近一天内修改)
-size 按文件大小搜索

示例命令

find /home/user -name "*.txt"

15. chmod

修改文件权限。

功能

chmod 755 file                  # 设置文件权限为755(所有者读写执行,组和其他人读执行)
chmod u+x file                  # 增加所有者的执行权限
chmod -R 755 directory          # 递归修改目录及其内容的权限

常用选项表

选项 说明
u 用户(所有者)权限
g 组权限
o 其他用户权限
a 所有用户权限
+ 增加权限
- 移除权限
= 赋予权限

示例命令

chmod -R 755 /path/to/directory

16. chown

改变文件所有者和组。

功能

chown user:group file          # 修改文件的所有者和组
chown -R user:group directory  # 递归修改目录及其内容的所有者和组

常用选项表

选项 说明
-R 递归修改目录及其内容
–reference 使用参考文件的所有者和组

示例命令

chown -R user:group /path/to/directory

17. ps

显示当前进程状态。

功能

ps                             # 显示当前终端的进程
ps -aux                        # 显示所有进程的详细信息
ps -e | grep process_name      # 搜索特定名称的进程

常用选项表

选项 说明
-e 显示所有进程
-f 显示完整格式
-u 显示特定用户的进程
-aux 显示所有用户的进程和额外信息

示例命令

ps -aux | grep apache2

18. top

实时显示系统进程。

功能

top                            # 启动 top 实时显示进程信息
# 在 top 界面中,按 q 退出

常用选项表

选项 说明
-d 设置更新间隔时间
-p 监视指定的进程
-n 显示更新的次数
-b 以批处理模式运行

示例命令

top -d 2

19. df

显示磁盘使用情况。

功能

df                             # 显示所有文件系统的磁盘使用情况
df -h                          # 以人类可读的格式显示磁盘使用情况

常用选项表

选项 说明
-h 以人类可读的格式显示磁盘使用情况
-T 显示文件系统类型
-i 显示 inode 信息
-a 显示所有文件系统

示例命令

df -h

20. du

显示目录或文件的磁盘使用情况。

功能

du                             # 显示当前目录和子目录的磁盘使用情况
du -h                          # 以人类可读的格式显示磁盘使用情况
du -sh directory               # 显示特定目录的总磁盘使用情况

常用选项表

选项 说明
-h 以人类可读的格式显示磁盘使用情况
-s 仅显示总计
-a 显示目录和文件的使用情况
-c 显示总计并包括整体合计

示例命令

du -sh /var/log

21. ln

创建文件链接。

功能

ln source_file target_file       # 创建硬链接
ln -s source_file target_file    # 创建符号链接(软链接)

常用选项表

选项 说明
-s 创建符号链接
-f 强制创建
-v 显示详细信息
-n 禁止符号链接递归

示例命令

ln -s /path/to/original /path/to/link

22. tar

创建和解压归档文件。

功能

tar -cvf archive.tar file1 file2   # 创建 tar 归档文件
tar -xvf archive.tar               # 解压 tar 归档文件
tar -czvf archive.tar.gz file1     # 创建 gzip 压缩的tar归档文件
tar -xzvf archive.tar.gz           # 解压 gzip 压缩的tar归档文件

常用选项表

选项 说明
-c 创建新归档文件
-x 解压归档文件
-v 显示详细信息
-f 使用归档文件名
-z 压缩归档文件至 gzip

示例命令

tar -czvf backup.tar.gz /home/user/documents

23. zip

压缩文件或目录。

功能

zip archive.zip file1 file2    # 创建 zip 压缩文件
zip -r archive.zip directory   # 递归压缩目录

常用选项表

选项 说明
-r 递归压缩目录
-j 仅保存文件名称,不包含相对路径
-v 显示详细信息

示例命令

zip -r backup.zip /home/user/documents

24. unzip

解压 zip 文件。

功能

unzip archive.zip              # 解压 zip 文件
unzip -l archive.zip           # 列出 zip 文件的内容

常用选项表

选项 说明
-l 列出内容
-v 显示详细信息
-d 指定解压目录
-o 覆盖已存在的文件

示例命令

unzip -d /path/to/destination backup.zip

25. rsync

远程文件和目录同步。

功能

rsync -avz source/ user@remote:/path/to/target/    # 同步本地和远程目录

常用选项表

选项 说明
-a 归档模式,保持文件的权限等信息
-v 显示详细信息
-z 压缩传输数据
-r 递归传输目录

26. scp

通过 SSH 进行安全拷贝。

功能

scp file user@remote:/path/to/target/    # 将文件拷贝到远程服务器
scp user@remote:/path/to/file /local/path  # 从远程服务器拷贝文件到本地

常用选项表

选项 说明
-r 递归拷贝目录及其内容
-v 显示详细信息
-P 指定 SSH 端口
-C 启用压缩

示例命令

scp -r /local/directory user@remote:/path/to/directory

27. wc

计算文件的字数、行数、字节数。

功能

wc file                      # 显示文件的行数、单词数和字节数
wc -l file                   # 显示文件的行数
wc -w file                   # 显示文件的单词数
wc -c file                   # 显示文件的字节数

常用选项表

选项 说明
-l 显示行数
-w 显示单词数
-c 显示字节数
-m 显示字符数

示例命令

wc -l /path/to/file.txt

28. sort

对文本文件内容进行排序。

功能

sort file                    # 对文件内容进行排序
sort -r file                 # 反向排序
sort -n file                 # 按数字排序

常用选项表

选项 说明
-r 反向排序
-n 按数字排序
-k 按指定列排序
-u 去除重复行

示例命令

sort -n /path/to/numbers.txt

29. uniq

去除重复行。

功能

uniq file                    # 去除重复行(前提是内容已排序)
sort file | uniq             # 排序后去除重复行
uniq -c file                 # 统计重复行的出现次数

常用选项表

选项 说明
-c 统计每行重复次数
-d 只显示重复行
-u 只显示非重复行

示例命令

sort data.txt | uniq -c

30. cut

从每行中提取部分字段。

功能

cut -d ' ' -f 1 file              # 提取以空格为分隔符的第1个字段
cut -c 1-5 file                   # 提取每行的15个字符

常用选项表

选项 说明
-d 指定分隔符
-f 指定提取的字段
-c 指定提取的字符范围

示例命令

cut -d ',' -f 2 data.csv

31. sed

流编辑器,用于文本替换、删除或插入。

功能

sed 's/old/new/g' file           # 替换文件中所有的 old 为 new
sed -n '5,10p' file              # 显示文件的第5行到第10

常用选项表

选项 说明
-n 取消默认输出
-i 直接编辑文件
-e 允许多个编辑命令
-s 静默模式,不显示处理信息

示例命令

sed 's/foo/bar/g' example.txt

32. awk

强大的文本处理工具。

功能

awk '{print $1}' file            # 打印每行的第1个字段
awk -F ',' '{print $2}' file.csv  # 使用逗号作为分隔符,打印第2个字段

常用选项表

选项 说明
-F 指定输入分隔符
-v 传递变量给脚本
-f 从文件中读取 awk 命令

示例命令

awk -F ':' '{print $1}' /etc/passwd

33. echo

输出字符串或变量。

功能

echo "Hello, World!"            # 输出字符串
echo $HOME                      # 输出环境变量的值

常用选项表

选项 说明
-n 不输出末尾的换行符
-e 解释转义字符

示例命令

echo "User home directory is $HOME"

34. date

显示或设置系统日期和时间。

功能

date                            # 显示当前日期和时间
date "+%Y-%m-%d %H:%M:%S"       # 自定义格式显示日期和时间

常用选项表

选项 说明
-u 以 UTC 时间显示
-d 显示指定日期和时间
+ 自定义显示格式

示例命令

date "+%Y-%m-%d %H:%M:%S"

35. uptime

显示系统运行时间和负载。

功能

uptime                          # 显示系统运行时间、登录用户数、平均负载

常用选项表

选项 说明
显示系统运行时间和负载

示例命令

uptime

36. uname

显示系统信息。

功能

uname                           # 显示操作系统名称
uname -a                        # 显示所有系统信息
uname -r                        # 显示操作系统内核版本

常用选项表

选项 说明
-a 显示所有系统信息
-r 显示内核版本
-s 显示操作系统名称
-n 显示网络节点主机名

示例命令

uname -a

37. whoami

显示当前用户的用户名。

功能

whoami                          # 输出当前用户的用户名

常用选项表

选项 说明
显示当前用户的用户名

示例命令

whoami

38. history

显示命令历史。

功能

history                         # 显示命令历史
history | grep "search_term"    # 在命令历史中搜索特定命令

常用选项表

选项 说明
-c 清空命令历史
-w 写入命令历史到文件

示例命令

history | grep "ls"

39. clear

清除终端屏幕。

功能

clear                           # 清除屏幕内容

常用选项表

选项 说明
清除当前终端屏幕内容

示例命令

clear

40. man

显示手册页。

功能

man command                     # 显示命令的手册页
man ls                          # 显示 ls 命令的手册页

常用选项表

选项 说明
-k 搜索手册页
-f 显示特定命令的手册页说明

示例命令

man ls

总结

掌握这40个常用的 Linux 命令将大幅提升你在面试中的表现。这些命令涵盖了文件操作、权限管理、进程管理、磁盘管理、文本处理等多个方面,能够帮助你应对常见的系统操作和问题解决。在日常工作中,熟练使用这些命令同样能提升你的工作效率。希望这篇干货满满的技术博客能为您在 Linux 面试中提供实用的帮助!

Linux命令大全学习教程

在微信搜索公众号:Alex技术圈 或者 AlexTechVision,关注公众号后回复:Linux命令大全即可免费下载。

image.png

image.png

image.png

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。