【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(二)

简介: 【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(二)

上期回顾: 🔥🔥🔥【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(一)

🚀Linux基础命令(二)

🌈1. 寻找目录/文件命令

find 命令用于在指定目录下查找文件和目录。它提供了强大的搜索功能,可以根据不同的条件进行文件搜索和匹配。它可以在指定的起点目录及其子目录中递归搜索,根据文件名、大小、修改时间、权限等多种属性进行筛选。

基本语法:

find [搜索起点路径] [表达式]
  1. 查找指定目录下的所有文件和目录:
find /path/to/directory

这将递归地查找 /path/to/directory 目录下的所有文件和目录,并显示它们的路径。

  1. 根据文件名进行搜索:
find /path/to/directory -name "filename"

这将在 /path/to/directory 目录下查找文件名为 “filename” 的文件。

  1. 使用通配符进行模糊匹配:
find /path/to/directory -name "*.txt"

这将在 /path/to/directory 目录下查找所有以 .txt 结尾的文件。

  1. 根据文件类型进行搜索:
find /path/to/directory -type f

这将在 /path/to/directory 目录下查找普通文件。

  1. 根据文件大小进行搜索:
find /path/to/directory -size +10M

这将在 /path/to/directory 目录下查找大小大于 10MB 的文件。

  1. 根据时间戳进行搜索:
find /path/to/directory -mtime -7

这将在 /path/to/directory 目录下查找最近 7 天内修改过的文件。

  1. 使用逻辑运算符进行组合搜索条件:
find /path/to/directory -name "*.txt" -o -name "*.doc"

这将在 /path/to/directory 目录下查找所有以 .txt 或 .doc 结尾的文件。

  1. 对搜索结果执行其他操作,如执行命令、删除文件等:
find /path/to/directory -name "*.tmp" -exec rm {} +

这将在 /path/to/directory 目录下查找所有以 .tmp 结尾的文件,并使用 rm 命令删除它们。


注意:find 命令非常强大且灵活,支持多种搜索条件和选项。你可以根据实际需求来组合和调整命令,以便更精确地搜索和匹配文件或目录。使用时请谨慎操作,避免意外删除或修改重要文件。


⭐2. 创建文件命令

touch命令是Linux和类UNIX系统中用于更新文件或目录的访问和修改时间的一个常用命令,同时,如果指定的文件不存在,touch命令还会创建一个新的空文件。这是一个非常简便的方法来创建新文件,特别是在不需要向文件中写入内容的情况下。


基本语法如下:

touch 文件名


【示例】:创建一个新文件

touch demo.py


执行这条命令后,如果demo.py之前不存在,系统就会在当前目录下创建一个空的demo.py文件。如果文件已经存在,touch命令则会更新该文件的访问和修改时间,而不会改变文件内容。

高级用法

  • 同时创建多个文件:
touch demo1.py demo2.py demo3.py


这条命令会一次性创建三个文件。

  • 更新时间戳而不创建文件:
    对于已存在的文件,仅使用touch命令即可更新其时间戳,而不会创建新文件。
  • 使用时间戳创建或更新文件:
touch -d "2023-01-01 00:00:00" demo.py

  • 更新时间戳而不创建文件:
    对于已存在的文件,仅使用touch命令即可更新其时间戳,而不会创建新文件。
  • 使用时间戳创建或更新文件:
    touch还允许你指定访问和修改时间。

touch命令是一个快速且方便的方式来创建新的空文件或更新现有文件的时间戳,是Linux文件管理中的一个基础而强大的工具。

👊3. 网络接口查询命令

在Linux系统中,查询网络接口信息可以使用以下命令:


  1. ifconfig:
    这是最传统的命令,用于显示和配置网络接口。尽管在某些现代Linux发行版中可能不再预装此命令,但它仍然广泛使用。基本用法如下:
ifconfig

注意:执行ifconfig出现 “ifconfig” not found是因为没有安装net-tools,sudo apt install net-tools 安装一下就好了。


❤️4. 打包命令

.zip、.rar        //windows系统中压缩文件的扩展名
.tar              //Linux中打包文件的扩展名
.gz               //Linux中压缩文件的扩展名
.tar.gz           //Linux中打包并压缩文件的扩展名

语法格式:

tar [选项] 文件或者目录

tar选项

选项 说明
-c 创建新的打包文件
-v 显示打包或者解包的文件的详情
-f 使用打包文件或者设备,这个选项是必选项, 一般放到所有选项后面
-z 用gzip格式来压缩或解压缩文件(.gz)
-j 用bzip2格式来压缩或解压缩文件(.bz2)
-x 解包
-C 解压缩到指定目录


  1. tar:
  • 功能:创建、查看、解压归档文件。
  • 基本用法:
  • 打包(仅归档,不压缩):tar -cvf archive.tar file1 file2 dir1
  • -c 创建新的归档文件。
  • -v 详细模式,显示正在处理的文件。
  • -f指定归档文件名。
  • 解包:tar -xvf archive.tar
  • -x 从归档文件中提取文件。
  • 查看归档内容:tar -tvf archive.tar

压缩:通常tar与压缩工具如gzip, bzip2, xz结合使用来创建压缩的归档文件。

  • 打包并用gzip压缩:tar -czvf archive.tar.gz file1 file2 dir1
  • 打包并用bzip2压缩:tar -cjvf archive.tar.bz2 file1 file2 dir1
  • 打包并用xz压缩:tar -cJvf archive.tar.xz file1 file2 dir1

  1. zip:
  • 功能:创建、解压.zip格式的压缩文件。
  • 基本用法:
  • 打包并压缩:zip -r archive.zip file1 file2 dir1
  • -r 递归处理,用于压缩目录。
  • 解压:unzip archive.zip

3. gzip:

  • 功能: 压缩单个文件,不适用于目录。常与tar一起使用。
  • 基本用法:
  • 压缩:gzip file1.txt 生成 file1.txt.gz
  • 解压:gunzip file1.txt.gz 或 gzip -d file1.txt.gz


  1. bzip2:
  • 功能: 提供比gzip更高的压缩比,但压缩和解压速度较慢。
  • 基本用法:
  • 压缩:bzip2 file1.txt 生成 file1.txt.bz2
  • 解压:bunzip2 file1.txt.bz2 或 bzip2 -d file1.txt.bz2


  1. xz:
  • 功能: 提供高压缩比,尤其适合大文件。
  • 基本用法:
  • 压缩:xz file1.txt 生成 file1.txt.xz
  • 解压:unxz file1.txt.xz 或 xz -d file1.txt.xz 2f8dc8aa4e7e3d1ad613fd6ee98e9b7f_4cc96f6abda84b539300f4d61b929dad.png
💥5. 解压命令

在Linux系统中,解压各种压缩文件的常用命令如下:

  tar -zxvf a.tar                      //解包至当前目录
  tar -zxvf a.tar -C /usr        //指定解压的位置
  unzip test.zip             //解压*.zip文件 
  unzip -l test.zip          //查看*.zip文件的内容 
  1. tar 归档文件的解压:
  • tar文件 (tar自身不压缩,但常和压缩工具一起使用):
tar -xf archive.tar
  • tar.gz (gzip压缩):
tar -zxvf archive.tar.gz
  • tar.bz2 (bzip2压缩):
tar -jxvf archive.tar.bz2
  • tar.xz (xz压缩):
tar -Jxvf archive.tar.xz
  1. zip 文件解压:
unzip archive.zip
  1. gzip 解压(注意gzip通常用于单个文件压缩,解压后需知道原文件名):
gunzip file.gz
# 或者
gzip -d file.gz
  1. bzip2 解压:
unxz file.xz
# 或者
xz -d file.xz
  1. rar 文件解压(需要安装unrar非默认工具):
unrar e archive.rar

确保你在执行这些命令前已经安装了相应的工具,并且位于包含这些压缩文件的目录中,或者提供了文件的完整路径。如果文件是从Windows系统传输过来并且有特殊字符(如中文或空格),可能需要使用引号将文件名括起来。

相关文章
|
1天前
|
Linux Shell 开发工具
|
1天前
|
网络协议 安全 Linux
|
7天前
|
运维 监控 网络协议
Linux抓包命令tcpdump使用技巧大全
【7月更文挑战第10天】
29 5
Linux抓包命令tcpdump使用技巧大全
|
1天前
|
Ubuntu Linux 测试技术
Linux终端玩转bastet俄罗斯方块小游戏
【7月更文挑战第14天】Linux终端玩转bastet俄罗斯方块小游戏
17 7
|
4天前
|
存储 安全 Linux
Linux命令sync详解
`sync`命令在Linux中用于将内存缓冲区的数据强制写入磁盘,保证数据持久性和一致性。它在关机、重启或重要文件操作前后使用,以防数据丢失。工作原理是强制将内存中的数据同步到磁盘,特点是阻塞式执行且通常无需参数。常见用法包括安全关机、数据备份和配置文件修改后确保更改生效。应注意,过度使用可能影响性能,应适时使用`fsck`检查文件系统一致性。
|
4天前
|
安全 数据管理 Shell
Linux命令su详解
`su`命令在Linux中用于切换用户身份,常用于权限管理。它允许用户无须注销当前会话就切换到另一个用户,尤其是root。`su`有多种选项,如`-`或`--login`加载目标用户环境,`-c`执行指定命令后返回。使用时需注意权限安全,建议用`sudo`以减少风险。通过限制`/etc/pam.d/su`可加强访问控制。`su`在系统维护和数据管理中扮演角色,但不直接处理数据。
|
4天前
|
存储 运维 安全
Linux命令stat:深入了解文件与文件系统状态
`stat`命令在Linux中用于显示文件和文件系统的详细状态,包括权限、大小、时间戳等。它通过读取inode获取信息,特点是显示全面、易用且支持多种参数,如`-c`自定义格式,`-f`查看文件系统状态,`-L`处理符号链接。例如,`stat example.txt`显示文件详情,`stat -c "%n 的大小是 %s 字节" example.txt`输出文件大小。理解`stat`有助于系统管理和故障排查。
|
4天前
|
关系型数据库 MySQL Linux
Linux命令systemctl详解
`systemctl`是Linux系统用于管理systemd服务的核心命令,它与systemd守护进程交互,实现启动、停止、重启服务及查看服务状态等功能。主要参数包括`start`、`stop`、`restart`、`status`、`enable`和`disable`等。例如,启动Apache服务使用`systemctl start httpd.service`,查看服务状态用`systemctl status <service>`。使用时需注意权限,服务名通常以`.service`结尾,但命令中可省略。最佳实践包括利用tab键补全、定期查看服务状态和合理配置服务自启。
|
4天前
|
安全 Linux 数据安全/隐私保护
Linux命令strings详解
`strings`是Linux工具,用于从二进制文件中提取可打印字符串,常用于文件分析、安全审计和逆向工程。它可以识别至少4个连续可打印字符的序列,并支持多种参数,如`-n`调整最小长度,`-f`显示文件名。示例用法包括`strings /bin/ls`和`strings -n 6 /usr/bin/uptime | grep GLIBC`。注意敏感信息泄露,结合其他命令可增强分析能力。
|
4天前
|
存储 监控 Linux
stdbuf命令在Linux中的深度解析
`stdbuf`是Linux工具,用于控制命令的stdin、stdout和stderr的缓冲模式。它可以设置为无缓冲、行缓冲或块缓冲,以优化数据处理和实时性。例如,`stdbuf -o0 cmd`禁用cmd的输出缓冲,`-oL`则按行缓冲。在需要实时监控或高效处理大量数据时,选择合适的缓冲模式至关重要。注意,过度使用无缓冲可能影响性能,并非所有系统都支持`stdbuf`。