Linux 初学者必学的 10 个命令,学习!

简介: 【10月更文挑战第28天】

Linux 是一个功能强大的开源操作系统,广泛应用于服务器、桌面计算机和移动设备上。对于新手来说,熟悉 Linux 命令行是掌握这个系统的关键之一。

基本导航命令

在 Linux 中,文件系统的导航是最基本的操作之一。大家起码要知道三个基本导航命令:pwdcdls

pwd (Print Working Directory)

pwd 命令用于显示当前目录的绝对路径。这对于了解你在文件系统中的位置非常有用,特别是在处理多个目录时。

$ pwd

当你打开一个终端时,你通常会从用户的主目录开始。通过输入 pwd 命令,你可以看到当前所在的目录路径,这有助于你确定自己在文件系统中的位置。

cd (Change Directory)

cd 命令用于在文件系统中导航。你可以使用它来切换到不同的目录。

$ cd documents  # 切换到当前目录下的 documents 目录
$ cd /home/user/downloads  # 切换到指定的绝对路径
$ cd ..  # 切换到上一级目录
$ cd ~  # 切换到用户的主目录
$ cd -  # 切换到上一次所在的目录
  • cd documents 将你切换到当前目录下的 documents 目录。
  • cd /home/user/downloads 使用绝对路径切换到 downloads 目录。
  • cd .. 返回到当前目录的上一级目录。
  • cd ~ 切换到用户的主目录,这通常是你登录时所在的目录。
  • cd - 切换回上一次所在的目录,这对于在两个目录间来回切换非常有用。

ls (List)

ls 命令用于显示目录内容。你可以使用不同的选项来定制输出格式。

$ ls  # 列出当前目录的内容
$ ls snap  # 列出指定目录的内容
$ ls -l  # 以长格式显示目录内容,包含权限、所有者、大小等信息
$ ls -a  # 显示所有文件,包括隐藏文件(以.开头)
$ ls -lh  # 以人类可读的格式显示文件大小
$ ls -R  # 递归列出所有子目录的内容
  • ls 命令列出当前目录的所有文件和子目录。

  • ls snap 列出 snap 目录中的所有文件和子目录。

  • ls -l 提供详细的文件信息,如权限、所有者、文件大小和修改时间。

  • ls -a 显示所有文件,包括隐藏文件,这些文件通常以点(.)开头。

  • ls -lh 将文件大小以人类可读的格式显示,如 KB、MB。

  • ls -R 递归列出当前目录及其所有子目录的内容。

文件管理

如何创建、复制和删除目录与文件,这些操作是文件管理的核心部分。

mkdir (Make Directory)

mkdir 命令用于创建新目录。

$ mkdir project  # 创建一个名为 project 的新目录
$ mkdir documents/project  # 在 documents 目录下创建 project 子目录
$ mkdir -p documents/project/subproject  # 创建目录及其所需的父目录
  • mkdir project 创建一个名为 project 的新目录。
  • mkdir documents/projectdocuments 目录下创建一个名为 project 的子目录。
  • mkdir -p documents/project/subproject 使用 -p 选项创建 documents/project/subproject 目录,如果父目录不存在则一并创建。

cp (Copy)

cp 命令用于复制文件和目录。

$ cp file1.txt file2.txt  # 复制文件
$ cp documents/report.txt backup/  # 复制文件到指定目录
$ cp -r project backup/  # 递归复制目录及其内容
  • cp file1.txt file2.txt 复制 file1.txtfile2.txt
  • cp documents/report.txt backup/report.txt 复制到 backup 目录中。
  • cp -r project backup/ 递归复制 project 目录及其所有内容到 backup 目录中。

rmdir (Remove Directory)

rmdir 命令用于删除空目录。

$ rmdir emptydirectory  # 删除一个空目录
$ rmdir -p directory/subdirectory  # 删除目录及其父目录
$ rm -r directory_name  # 删除目录及其所有内容
  • rmdir emptydirectory 删除一个名为 emptydirectory 的空目录。
  • rmdir -p directory/subdirectory 使用 -p 选项删除 subdirectory 及其父目录 directory
  • rm -r directory_name 使用 rm -r 命令递归删除目录及其所有内容,适用于非空目录。

权限管理和文本搜索

chmod (Change Mode)

chmod 命令用于更改文件或目录的权限。

$ chmod u+x file.txt  # 为文件所有者添加执行权限
$ chmod 755 directory  # 设置目录权限为755,所有者可读写执行,组和其他用户可读执行
$ chmod 644 file1.txt file2.txt  # 设置文件权限为644,所有者可读写,组和其他用户只读
  • chmod u+x file.txt 为文件所有者(用户)添加执行权限。
  • chmod 755 directory 设置目录权限为 755,所有者有所有权限(读写执行),组和其他用户有读和执行权限。
  • chmod 644 file1.txt file2.txt 将多个文件的权限设置为 644,所有者可读写,组和其他用户只读。

grep (Global Regular Expression Print)

grep 命令用于在文本文件中搜索指定的模式,并打印包含该模式的行。

$ grep pattern input-file  # 在文件中搜索模式
$ grep error log.txt  # 在 log.txt 文件中搜索 "error"
$ grep '[0-9][0-9][0-9]' input-file  # 使用正则表达式搜索三位数字
$ grep -r error /var/log  # 递归搜索目录中的文件
  • grep pattern input-fileinput-file 文件中搜索 pattern 并打印匹配的行。
  • grep error log.txtlog.txt 文件中搜索包含 "error" 的行。
  • grep '[0-9][0-9][0-9]' input-file 使用正则表达式搜索 input-file 文件中包含三位数字的行。
  • grep -r error /var/log 递归搜索 /var/log 目录及其子目录中的所有文件,查找包含 "error" 的行。

查找文件和内容显示

find (Find)

find 命令用于根据各种条件在文件系统中搜索文件和目录。

$ find / -name "example.txt"  # 搜索文件名为 example.txt 的文件
$ find / -size +100M  # 搜索大于100MB的文件
$ find / -mtime +30  # 搜索最近30天未修改的文件
$ find / -type f -name "*.sh"  # 搜索所有扩展名为.sh的文件
  • find / -name "example.txt" 从根目录开始搜索名为 example.txt 的文件。
  • find / -size +100M 搜索大于 100MB 的文件。
  • find / -mtime +30

索最近 30 天未修改的文件。

  • find / -type f -name "*.sh" 搜索所有扩展名为 .sh 的文件。

cat (Concatenate)

cat 命令用于连接文件并显示其内容。它常用于查看文件内容、创建新文件和合并文件。

$ cat file.txt  # 显示文件内容
$ cat > newfile.txt  # 创建一个新文件并输入内容
This is the first line of text in the new file.
This is the second line of text in the new file.
# 按 CTRL+D 保存并退出
$ cat file1.txt file2.txt  # 合并两个文件并显示内容
$ cat -n file.txt  # 显示文件内容并带行号
  • cat file.txt 显示 file.txt 文件的内容。
  • cat > newfile.txt 创建一个名为 newfile.txt 的新文件并输入内容,按 CTRL+D 保存并退出。
  • cat file1.txt file2.txt 显示 file1.txtfile2.txt 的内容。
  • cat -n file.txt 显示 file.txt 的内容并带有行号。

总结

命令 全称 功能描述
pwd Print Working Directory 显示当前目录的路径
cd Change Directory 切换目录
ls List 列出目录内容
mkdir Make Directory 创建新目录
cp Copy 复制文件或目录
rmdir Remove Directory 删除空目录
chmod Change Mode 修改文件或目录权限
grep Global Regular Expression Print 在文件中搜索模式
find Find 查找文件或目录
cat Concatenate 显示文件内容,合并文件
目录
相关文章
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
138 8
|
2月前
|
Linux 编译器 开发工具
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
111 2
|
29天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
53 14
Linux 10 个“who”命令示例
|
9天前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
31 8
|
18天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
104 20
|
18天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
47 7
|
2月前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
37 9
|
2月前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
2月前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
162 3
|
2月前
|
存储 运维 Linux
如何在 Linux 系统中使用 envsubst 命令替换环境变量?
`envsubst` 是 Linux 系统中用于替换文本中环境变量值的实用工具。本文分三部分介绍其工作原理、使用方法及实际应用,包括配置文件替换、脚本执行中环境变量替换和动态生成文件等场景,帮助用户高效利用 `envsubst` 进行开发和运维工作。
77 4