回答:
探しているファイルがディレクトリかどうかが重要な場合単なるファイルではなくFile.directory?
またはを使用できますDir.exist?
。これは、ファイルが存在し、ディレクトリである場合にのみtrueを返します。
余談ですが、メソッドを作成するより慣用的な方法は、Rubyがメソッド内の最後の式の結果を自動的に返すという事実を利用することです。したがって、次のように書くことができます。
def directory_exists?(directory)
File.directory?(directory)
end
この場合、メソッドを使用する必要はありません。
Dir.exists?
よりもきれいになりませんFile.directory?
か?
Dir.exists?
廃止予定です。使用してくださいDir.exist
Dir.exist?
undefined method `exists?' for Dir:Class (NoMethodError)
。また、複数形は非推奨になり.exist?
ました。代わりに使用してください。
あなたは使うことができますKernel#test
:
test ?d, 'some directory'
https://ss64.com/bash/test.htmlからオリジンを取得し
ますbashにディレクトリが存在するかどうかをテストするための
test
このフラグがあることに気づくでしょう-d
-d file True if file is a Directory. [[ -d demofile ]]