迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

在 Bash 中循环目录中的文件

作者:迹忆客 最近更新:2023/03/17 浏览次数:

Bash 中的循环使得对许多文件进行操作变得可行。你必须拥有一些权限才能使用文件和文件夹。

最有效的方法是循环,它允许用户通过使用简单的代码行再次将相同的逻辑应用于对象。

循环文件

首先,我们将创建一个 test 目录并在该目录中创建多个文件。让我们在 test 目录中创建五个文件,分别为 file1.txtfile2.txtfile3.txtfile4.txtfile5.txt

循环遍历 bash 目录中的文件

我们使用 mkdir 创建了一个 test 文件夹,并使用 touch 命令在其中创建了五个文件。

bash 循环示例

循环目录

让我们遍历新创建的 test 目录并显示目录中的文件名。我们将使用 for 循环来执行此操作。

~/test$ for file in *; do echo $file; done

导航到 test 目录并在 $ 后面输入上述命令。 * 表示目录中的所有文件。

输出:

file1.txt
file2.txt
file3.txt
file4.txt
file5.txt

使用循环写入目录中的所有文件

Hello World!在每个文件中,我们将使用 for 循环来迭代文件,并使用 echo 中的 -e 标志来保留换行符。

~/test$ for file in *; do echo -e "$file\nHello World!"> $file ; done

$file 会在文件开头显示文件名,\n 会换行,Hello World! 会在第二行预览。要检查我们添加到文件中的数据,我们需要使用 catfor 循环来显示它。

~/test$ for file in *; do cat $file ; done

输出:

file1.txt
Hello World!
file2.txt
Hello World!
file3.txt
Hello World!
file4.txt
Hello World!
file5.txt
Hello World!

备份目录内的所有文件

.bak 扩展名表示备份文件。我们将使用 cpfor 循环来创建备份。

~/test$ for file in *; do cp $file "$file.bak" ; done

你可以使用 ls -l 列出 test 目录中的所有文件。

~/test$ ls -l

让我们看看 test 目录。

bash 备份

你可以看到在文件夹内创建了带有后缀 .bak 扩展名的备份文件。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便