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

目录

一、切换和显示目录

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. 示例

六、汇总表


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:仅列出当前目录下的文件和目录(不包括隐藏文件)
ls
  • ls -l:以长格式列出当前目录下的文件和目录(包括权限、所有者、大小等信息)。
ls -l

输出示例:

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:列出当前目录下的所有文件和目录,包括以点(.)开头的隐藏文件。
ls -a

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

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

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

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

byte轻骑兵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值