首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >linux常见目录/文件操作命令汇总

linux常见目录/文件操作命令汇总

作者头像
byte轻骑兵
发布2026-01-20 17:30:05
发布2026-01-20 17:30:05
1210
举报

Linux系统中常见的目录操作命令非常丰富,这些命令在文件管理和系统维护中扮演着重要角色。以下是一些常见的目录操作命令及其功能说明。

一、切换和显示目录

cd(Change Directory)和pwd(Print Working Directory)这两个命令在Unix/Linux系统的命令行界面(CLI)和类Unix系统(如macOS的终端)中非常基础且常用。

1.1. cd(Change Directory)命令
  • 作用:改变当前工作目录到指定的目录。
  • 用法cd [选项] [目录名]。其中,[选项] 通常是可选的,而 [目录名] 是你希望切换到的目录的路径。
  • 示例
    • cd /home/user:切换到根目录下的home目录中的user目录。
    • cd ..:切换到当前目录的上一级目录(父目录)。
    • cd .:保持在当前目录(. 代表当前目录)。
    • cd -:切换到上一次所在的目录(这在需要在两个目录之间频繁切换时非常有用)。
1.2. pwd(Print Working Directory)命令
  • 作用:显示当前工作目录的完整路径。
  • 用法pwd。此命令没有参数或选项。
  • 示例
    • pwd:输出类似于/home/user/documents的当前目录完整路径。

这两个命令是导航文件系统和了解当前位置的基本工具。熟练使用它们将大大提高你在命令行中的工作效率。

二、文件和目录的查看

ls 命令是 Linux 和 Unix 系统中用于列出目录内容的非常基础且强大的命令。通过使用不同的选项,用户可以定制 ls 命令的输出,以满足不同的需求。

2.1. 常用选项
  • -l(长格式显示信息):这个选项会以列表的形式显示文件和目录的详细信息,包括文件权限、所有者、组、大小、最后修改时间等。
  • -a(显示所有文件,包括隐藏文件):默认情况下,ls 命令不会显示以点(.)开头的文件或目录,这些文件或目录通常被认为是隐藏的。使用 -a 选项可以显示这些隐藏文件。
  • -h(与 -l 一起使用时,以易读的格式显示文件大小):当与 -l 选项结合使用时,-h 选项会将文件大小以 KB、MB、GB 等易读的格式显示,而不是以字节为单位。
2.2. 示例
  • ls:仅列出当前目录下的文件和目录(不包括隐藏文件)
代码语言:javascript
复制
ls
  • ls -l:以长格式列出当前目录下的文件和目录(包括权限、所有者、大小等信息)。
代码语言:javascript
复制
ls -l

输出示例:

代码语言:javascript
复制
total 12  
drwxr-xr-x 2 user group 4096 Mar 15 12:34 dir1  
-rw-r--r-- 1 user group    0 Mar 15 12:34 file1.txt
  • ls -a:列出当前目录下的所有文件和目录,包括以点(.)开头的隐藏文件。
代码语言:javascript
复制
ls -a

输出示例(包含 ...):

代码语言:javascript
复制
.  ..  .hiddenfile  dir1  file1.txt
  • ls -lah:结合 -l-a-h 选项,以长格式、易读的格式列出所有文件和目录。
代码语言:javascript
复制
ls -lah

输出示例(文件大小以 KB、MB 等格式显示):

代码语言:javascript
复制
total 12K  
drwxr-xr-x 2 user group 4.0K Mar 15 12:34 .  
drwxr-xr-x 3 user group 4.0K Mar 15 12:33 ..  
-rw-r--r-- 1 user group    0 Mar 15 12:34 .hiddenfile  
drwxr-xr-x 2 user group 4.0K Mar 15 12:34 dir1  
-rw-r--r-- 1 user group    0 Mar 15 12:34 file1.txt

这些选项可以组合使用,以提供用户所需的具体信息。

三、目录的创建和删除

3.1. mkdir(Make Directory)命令
  • 作用:创建新的目录。
  • 用法mkdir [选项] 目录名...。可以一次性创建多个目录,只需在命令中列出它们的名字,用空格分隔。
  • 常用选项
    • -p:允许mkdir命令创建多级目录(即目录的目录),如果上级目录不存在,则一并创建。
  • 示例
    • mkdir newdir:在当前目录下创建一个名为newdir的新目录。
    • mkdir -p dir1/dir2/dir3:创建多级目录结构,即如果dir1不存在,则先创建dir1,然后在dir1下创建dir2,最后在dir2下创建dir3
3.2. rmdir(Remove Directory)命令
  • 作用:删除空目录。
  • 用法rmdir [选项] 目录名...。与mkdir类似,可以一次性删除多个空目录。
  • 注意
    • rmdir只能删除空目录。如果目录中有文件或其他目录,则无法删除,并会报错。
    • 要删除非空目录及其内容,可以使用rm -r命令,但请谨慎使用,因为这会删除目录及其中的所有内容,包括文件和子目录。
  • 示例
    • rmdir emptydir:删除名为emptydir的空目录。

在实际使用中,如果需要删除非空目录及其内容,并且希望有更安全的提示(以防误删),可以使用rm -ri命令(-i选项会在删除每个文件或目录之前提示用户确认)。然而,对于仅删除空目录的需求,rmdir命令是更快且更安全的选择。

四、文件和目录的复制、移动与删除

4.1. cp(Copy)

cp 命令用于复制文件或目录。如果不指定目标目录,则默认在当前目录下创建与源文件同名的副本。

常用选项

  • -r-R:递归复制目录及其所有子目录和文件。
  • -i:在覆盖目标文件之前提示用户确认。

示例

  • cp file1.txt file2.txt:复制 file1.txt 到当前目录,并重命名为 file2.txt
  • cp -r dir1 dir2:递归复制 dir1 目录及其所有内容到 dir2 目录。如果 dir2 不存在,则创建它;如果已存在,则 dir1 的内容会被复制到 dir2 中。
4.2. mv(Move or Rename)

mv 命令用于移动文件或目录到另一个位置,或者在同一位置重命名文件或目录。

示例

  • mv file1.txt dir1/:将 file1.txt 移动到 dir1 目录中。
  • mv file1.txt file2.txt:将 file1.txt 重命名为 file2.txt
4.3. rm(Remove)

rm 命令用于删除文件或目录。默认情况下,它不会删除目录,除非使用 -r-R 选项。

常用选项

  • -r-R:递归删除目录及其所有内容。
  • -f:强制删除,不提示用户确认。

注意: 慎用 -rf 选项,因为它会无提示地删除指定的文件或目录及其所有内容,可能导致数据丢失。

示例

  • rm file.txt:删除名为 file.txt 的文件。
  • rm -r dir1:递归删除名为 dir1 的目录及其所有内容。
  • rm -rf dir1:强制递归删除名为 dir1 的目录及其所有内容,不提示用户确认。

这些命令是 Linux 和 Unix 系统中处理文件和目录的基础。在使用时,特别是涉及删除操作(特别是 -rf 选项)时,请务必小心,以避免不必要的数据丢失。在删除重要文件或目录之前,最好先使用 ls 命令确认其存在和位置。

五、 磁盘空间使用情况

du命令是一个非常有用的工具,用于估计文件或目录在磁盘上占用的空间量。

5.1. du(Disk Usage)命令
  • 作用:统计文件或目录的磁盘空间占用情况。
  • 常用选项
    • -s:对每个参数指定的目录或文件,显示其占用的总大小,而不是列出每个子目录或文件的大小。
    • -h:以易读的格式(如KB、MB、GB)显示大小。这有助于更好地理解文件或目录占用的空间量。
  • 其他选项
    • --max-depth=N:限制目录树的深度为N层。这在只想了解顶层目录的大小而不关心更深层次目录的细节时很有用。
    • -a--all:显示目录中所有文件的磁盘使用情况,包括以.开头的隐藏文件。默认情况下,du不会显示空目录的大小。
    • -c--total:除了个别目录或文件的大小外,还显示总计大小。
5.2. 示例
  • du -sh dir1:显示dir1目录的总大小,以易读的格式(如KB、MB、GB)表示。
  • du -sh *:显示当前目录下所有文件和目录的大小(不包括以.开头的隐藏文件和目录),以易读的格式表示。
  • du -sh --max-depth=1:显示当前目录下所有一级子目录和文件的大小,但不包括更深层次的目录和文件。
  • du -ah | sort -rh | head -n 10:这个命令组合显示了当前目录及其子目录下所有文件和目录的大小,并通过sort命令按大小降序排序,最后通过head命令显示前10个最大的文件或目录。注意,这个命令可能需要一些时间来完成,尤其是在包含大量文件和子目录的目录中。

六、汇总表

命令

描述

示例

文件和目录的查看

ls

列出目录内容

ls

ls -l

以长格式列出目录内容

ls -l

ls -a

列出包括隐藏文件在内的所有文件

ls -a

ls -R

递归列出目录内容

ls -R

cat

查看文件内容

cat file

cat -n

查看文件内容并显示行号

cat -n file

head

查看文件的前几行

head -n 5 file

tail

查看文件的最后几行

tail -n 5 file

tail -f

动态追踪文件尾部新增内容

tail -f file

more

分页查看文件内容(向前翻页)

more file

less

分页查看文件内容(前后翻页,支持搜索)

less file

tree

以树状图显示目录结构

tree

tree -d

以树状图显示目录结构(只显示目录)

tree -d

文件创建

touch

创建空文件或修改文件时间戳

touch file.txt

echo

创建文件并写入内容

echo "Hello, World!" > file.txt

cat >

创建文件并写入多行内容

cat > file.txt (输入内容后按Ctrl+D)

vim / vi

文本编辑器,创建和编辑文件

进入插入模式(i)后输入内容,:wq保存并退出

文件和目录的复制、移动与删除

cp

复制文件或目录

cp source_file destination_file

cp -r

递归复制目录

cp -r source_dir destination_dir

mv

移动或重命名文件/目录

mv file_or_dir new_location

rm

删除文件或目录

rm file

rm -r

递归删除目录及其内容

rm -r dir

rm -f

强制删除文件,不提示确认

rm -f file

rm -rf

递归强制删除目录及其内容,不提示确认

rm -rf dir

文件权限与所有权

chmod

修改文件/目录的权限

chmod 755 file

chown

修改文件/目录的所有者和所属组

chown user:group file

chgrp

修改文件/目录的所属组

chgrp group file

盘空间使用情况

du

统计目录或文件的磁盘空间占用情况

du -sh dir1 显示 dir1 目录的总大小,以易读的格式

其他常用命令

pwd

显示当前工作目录的路径

pwd

cd

切换当前工作目录

cd /path/to/directory

cd ..

进入上一级目录

cd ..

cd -

切换到上一次所在的目录

cd -

find

在目录树中搜索文件

find / -name filename

grep

在文件中搜索匹配的行

grep "pattern" file

tar

归档或解归档文件

tar -cvf archive.tar files...

gzip

压缩文件

gzip file

gunzip

解压缩文件

gunzip file.gz

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-09-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、切换和显示目录
    • 1.1. cd(Change Directory)命令
    • 1.2. pwd(Print Working Directory)命令
  • 二、文件和目录的查看
    • 2.1. 常用选项
    • 2.2. 示例
  • 三、目录的创建和删除
    • 3.1. mkdir(Make Directory)命令
    • 3.2. rmdir(Remove Directory)命令
  • 四、文件和目录的复制、移动与删除
    • 4.1. cp(Copy)
    • 4.2. mv(Move or Rename)
    • 4.3. rm(Remove)
  • 五、 磁盘空间使用情况
    • 5.1. du(Disk Usage)命令
    • 5.2. 示例
  • 六、汇总表
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档