当前位置: 首页 > news >正文

Linux 基础命令详解:从入门到实践(1)

Linux 基础命令详解:从入门到实践(1)

前言

在 Linux 操作系统中,命令行是高效管理系统、操作文件的核心工具。无论是开发者、运维工程师还是Linux爱好者,掌握基础命令都是入门的第一步。本文将围绕Linux命令的结构和常用基础命令展开,通过具体示例和详细解析,帮助读者快速理解并上手使用这些命令,为后续深入学习Linux系统打下坚实基础。

一、命令结构

Linux命令的基本结构通常为:命令 [选项] [参数]。其中:

  • 命令:是核心操作指令,如ls(列出文件)、cd(切换目录)等。
  • 选项:用于调整命令的行为,通常以-(短选项,如-l)或--(长选项,如--help)开头,可组合使用(如ls -al)。
  • 参数:指定命令的操作对象,如文件路径、目录名等(如cd /home中的/home)。

理解这一结构有助于快速掌握各类命令的使用逻辑,通过选项和参数的灵活组合,实现多样化的操作需求。

二、基础命令

1. 切换角色

在Linux中,不同用户拥有不同的权限(如普通用户、超级管理员root),切换角色的命令如下:

# 切换到超级管理员(需要输入当前用户密码,密码输入时不显示)
┌──(ly㉿kali)-[/]
└─$ sudo su
[sudo] ly 的密码:(密码会隐藏)# 从超级管理员切换到普通用户(无需密码)
┌──(root㉿kali)-[/]
└─# su ly
  • 说明sudo su 通过sudo获取临时管理员权限后切换到root;su 用户名用于在不同用户间切换,root切换到普通用户无需验证,普通用户切换到其他用户需输入目标用户密码。

2. 切换目录(cd)

cd(Change Directory)命令用于切换当前工作目录,是最常用的命令之一:

# 切换到指定绝对路径目录(从根目录开始的完整路径)
┌──(ly㉿kali)-[/]
└─$ cd /home# 返回上一次所在的目录(类似“返回”功能)
┌──(ly㉿kali)-[/home]
└─$ cd -    
/# 切换到当前目录(无实际效果,可用于刷新目录状态)
┌──(root㉿kali)-[~ly]
└─# cd .  # 切换到上层目录(“..”表示父目录)
┌──(root㉿kali)-[~ly]
└─# cd ../┌──(root㉿kali)-[/home]
└─# 
  • 补充cd ~ 可快速切换到当前用户的主目录;cd 不带参数时,默认切换到当前用户的主目录。

3. 显示当前目录路径(pwd)

pwd(Print Working Directory)命令用于显示当前所在目录的完整路径,避免在目录切换中“迷路”:

# 切换到/home目录后,查看当前路径
┌──(ly㉿kali)-[/]
└─$ cd /home
┌──(ly㉿kali)-[/home]
└─$ pwd
/home
  • 说明:输出结果为绝对路径,清晰展示当前位置在文件系统中的层级关系(如/home表示根目录下的home目录)。

4. 查看目录下的文件(ls)

ls(List)命令用于列出目录中的文件和子目录,配合不同选项可实现多样化的显示效果:

常用选项及示例:
# 显示所有文件(包括隐藏文件,以.开头)和详细信息(权限、所有者等)
┌──(root㉿kali)-[~ly]
└─# ls -al     
总计 140
drwx------ 15 ly   ly    4096  7月14日 11:10 .
drwxr-xr-x  3 root root  4096  7月13日 18:16 ..
-rw-r--r--  1 root root     0  7月14日 11:09 1.mp3
-rw-r--r--  1 root root     0  7月14日 11:08 1.txt
...(省略部分内容)# 递归显示目录及其子目录的内容(-R选项)
┌──(root㉿kali)-[~ly]
└─# ls -lR       
.:
总计 32
-rw-r--r-- 1 root root    0  7月14日 11:09 1.mp3
drwxr-xr-x 2 ly   ly   4096  7月13日 18:21 公共
...(省略部分内容)./公共:
总计 0
...(其他子目录内容)# 以人类可读的单位显示文件大小(-h选项,如KB、MB)
┌──(root㉿kali)-[~ly]
└─# ls -lh
总计 32K
-rw-r--r-- 1 root root    0  7月14日 11:09 1.mp3
drwxr-xr-x 2 ly   ly   4.0K  7月13日 18:21 公共
...(省略部分内容)
文件颜色含义:

ls命令在支持颜色显示的终端中,不同颜色代表不同文件类型:

  • 白色:普通文件(如文本、代码)
  • 蓝色:目录(文件夹)
  • 绿色:可执行文件(如脚本、程序)
  • 红色:压缩文件(如.zip、.tar.gz)
  • 青色:符号链接(软链接,类似快捷方式)
  • 黄色:设备文件(如硬件设备节点)
  • 紫红色:图像或多媒体文件(如.jpg、.mp3)
  • 灰色:其他特殊文件(如命名管道、套接字)

5. 查看命令参数用法说明(–help)

几乎所有Linux命令都支持--help选项,用于查看该命令的详细用法、选项说明和参数要求,是自学命令的重要工具:

# 查看ls命令的帮助信息
┌──(root㉿kali)-[~ly]
└─# ls --help
用法:ls [选项]... [文件]...
列出 <文件>(默认为当前目录)的信息。
...(省略大量选项说明)--help        显示此帮助信息并退出--version     显示版本信息并退出
  • 说明:帮助信息中会详细列出命令的所有选项(短选项和长选项)、功能描述及使用示例,遇到不熟悉的命令时,--help是快速上手的关键。

6. 创建文件夹(mkdir)

mkdir(Make Directory)命令用于创建新目录,基本用法和扩展选项如下:

# 创建单个文件夹(指定完整路径)
┌──(root㉿kali)-[~ly]
└─# mkdir /home/ly/test   # 递归创建多级目录(父目录不存在时,-p选项自动创建)
┌──(root㉿kali)-[~ly]
└─# mkdir -p  /home/ly/test123/test456  # 成功创建test123和其子目录test456# 创建文件夹时指定权限(-m选项,权限数字含义见下文)
┌──(root㉿kali)-[~ly]
└─# mkdir -m=777 123  # 创建权限为777的目录123
  • 说明-p选项常用于创建多级目录(如a/b/c),避免因父目录不存在而报错;-m选项可直接设置目录权限,无需创建后再用chmod修改。

7. 文件权限解析

Linux系统通过权限控制用户对文件/目录的访问,权限分为读(r)、写(w)、执行(x),分别对应数值4、2、1,三组权限(所有者、所属组、其他用户)的数值之和构成权限数字(如755)。

权限对应关系:
数字二进制符号表示含义(读r=4、写w=2、执行x=1)
7111rwx读+写+执行
6110rw-读+写
5101r-x读+执行
4100r–只读
3011-wx写+执行
2010-w-只写
1001–x只执行
0000无权限
长格式权限解析:

drwxr-xr-x为例(来自ls -l输出):

  • 第一位d:表示文件类型为目录(-为普通文件,l为符号链接)
  • 接下来9位分三组,每组3位:
    • 第一组rwx:所有者权限(可读、可写、可执行)
    • 第二组r-x:所属组权限(可读、可执行,不可写)
    • 第三组r-x:其他用户权限(可读、可执行,不可写)

总结

本文介绍了Linux中的基础命令,包括角色切换、目录操作、文件查看、命令帮助和目录创建等核心功能,并通过具体示例解析了命令的用法、选项含义和实际效果。掌握这些命令是使用Linux系统的基础,后续可通过组合命令、学习更多选项和进阶命令(如文件操作cp/mv/rm、文本处理cat/grep等),逐步提升对Linux系统的操作能力。

在学习过程中,建议多动手实践,结合--help查看命令细节,遇到问题时通过权限分析、路径检查等方式排查,逐步培养Linux命令行的使用思维。

http://www.lryc.cn/news/587867.html

相关文章:

  • 基于Hadoop的竞赛网站日志数据分析与可视化(上)
  • STM32介绍和GPIO
  • Spring Boot启动原理:从main方法到内嵌Tomcat的全过程
  • Datawhale AI夏令营-基于带货视频评论的用户洞察挑战赛
  • [Python] -实用技巧4-Python中浅拷贝与深拷贝的区别详解
  • 工业软件加密锁复制:一场技术与安全的博弈
  • 借助DeepSeek编写输出漂亮表格的chdb客户端
  • 终端安全最佳实践
  • IIS错误:Service Unavailable HTTP Error 503. The service is unavailable.
  • SpringAi笔记
  • OpenCV 视频处理与摄像头操作详解
  • MySQL Innodb Cluster配置
  • 【CV综合实战】基于深度学习的工业压力表智能检测与读数系统【3】使用OpenCV读取分割后的压力表读数
  • DiffDet4SAR——首次将扩散模型用于SAR图像目标检测,来自2024 GRSL(ESI高被引1%论文)
  • vue-v-model进阶-ref-nextTick
  • 网络安全核心定律
  • 5G 到 6G通信技术的革新在哪里?
  • libimagequant windows 编译
  • 基于Python的就业数据获取与分析预测系统的设计与实现
  • Boost.Asio 异步写:为什么多次 async_write_some 会导致乱序,以及如何解决
  • 机器学习中的朴素贝叶斯(Naive Bayes)模型
  • 微软发布BioEmu模型
  • Web3:Foundry使用指南
  • 银河麒麟KYSEC安全机制详解
  • 《C++初阶之STL》【泛型编程 + STL简介】
  • 宝塔面板常见问题
  • 【算法】贪心算法:将数组和减半的最少操作次数C++
  • ubuntu22.04下配置qt5.15.17开发环境
  • 2.查询操作-demo
  • 解决Chrome此扩展程序不再受支持,因此已停用