如何在Ruby中自动查找当前目录或任意指定子文件夹中指定类型的文件?
我正在使用以下代码将文件从 php 转换为 html。为了使其工作,我必须在第二行输入每个文件的名称。
p "convert files"
%w(file1 file2 file3).each do |name|
system %(php #{DIR}/#{name}.php > #{DIR2}/#{name}.htm)
end
有人可以告诉我如何制作它,以便它自动查找主目录中的任何 .php 文件,并在任何定义的文件夹及其子文件夹中查找其他 .php 并将它们保存在类似的文件夹名称中吗?
例如:
file1.php -> file1.htm
about-us/file2.php -> about-us/file2.htm
contact-us/department/file3.php -> contact-us/department/file3.htm
I am using the following code to convert files from php to html. In order for it to work, I have to enter the name of each file on the second line.
p "convert files"
%w(file1 file2 file3).each do |name|
system %(php #{DIR}/#{name}.php > #{DIR2}/#{name}.htm)
end
Can someone tell me how to make it so it will automatically find any .php files in the main directory and look in any defined folder and their sub-folders for additional .php and save them in similar folder names?
For example:
file1.php -> file1.htm
about-us/file2.php -> about-us/file2.htm
contact-us/department/file3.php -> contact-us/department/file3.htm
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
最简单的方法是使用
Dir
:Dir.glob
的**
模式(又名Dir[]
)以递归方式匹配目录,因此Dir[**/*.php ]
将为您提供当前目录下的所有 PHP 文件。The easiest way is to use
Dir
:The
**
pattern forDir.glob
(AKADir[]
) matches directories recursively soDir[**/*.php]
will give you all the PHP files under the current directory.