我编写了一个用于搜索特定文件的代码,用户在其中输入 astarting path
和 a filename
,然后程序在文件存在时打印其详细信息,否则打印not found
。
该代码基于递归。我想用一个大文件夹层次结构来测试它,比如说 1000 个文件夹,一个在另一个文件夹中,然后david.txt
在第 1000 个文件夹中放置一个名为的文件。
如何在接下来的 3 小时内不创建 1000 次文件夹的情况下做到这一点?
代码写在C
, 下Ubuntu
。
谢谢
在您的 shell 中键入以下内容:
mkdir -p folder$( seq -s "/folder" 999 )1000
然后就可以进入这个文件夹了:
cd folder$( seq -s "/folder" 999 )1000
并创建一个文件:
touch david.txt
并回到你以前的目录:
cd -
正如一些评论所述,我将外壳用于此类目的:
#!/bin/sh
for i in $(seq 1000)
do
mkdir tst
cd tst
done
touch david.txt
关于一个相关主题,让我推荐这篇文章,它展示了有时 shell 脚本如何在更短的开发时间内解决您的问题。特别适用于像这样的临时问题。
简单的 bash 循环:
$ pushd .
$ for i in {1..1000}; do
mkdir d$i;
cd d$i;
done
$ touch david.txt
$ popd
(几乎)使用相同的代码来创建文件夹和文件。一旦开始工作,搜索/报告也几乎完成。这是一种自我测试:)