一致する名前を持つすべてのファイルを削除します。
ルビー - 私は、複数の(数千のファイルを含むフォルダ内のファイル)、EX持っパターン
を...
page_bonus.txt
page_code1.txt page_code2.txt
page_text1.txt
page_text2.txt
page_text3.txt
...
すべてのpage_code *ファイルを削除するにはどうすればよいですか?
注:私はのfileutilsを使用するか、
一致する名前を持つすべてのファイルを削除します。
ルビー - 私は、複数の(数千のファイルを含むフォルダ内のファイル)、EX持っパターン
を...
page_bonus.txt
page_code1.txt page_code2.txt
page_text1.txt
page_text2.txt
page_text3.txt
...
すべてのpage_code *ファイルを削除するにはどうすればよいですか?
注:私はのfileutilsを使用するか、
Dir::glob
単一文字のワイルドカード(すなわち?
)をサポートするシェルにしたくありません。あなたの例に基づいて、?
を使って特定のディレクトリに適切なファイルを見つけて削除することができます。
Dir.glob('/home/your_username/Documents/page_code?.txt').each { |file| File.delete(file)}
ワイルドカードを含むファイルを削除するには
Dir.glob("/tmp/files/*").select{ |file| /MY STRING/.match file }.each { |file| File.delete(file)}
select内の正規表現を使用して、必要なファイルを取得します。
はうまく動作します^^ –
... 1文字のワイルドカードでは不十分な場合は、すべてのファイルを返すために '*'を使い、 'each'の前にブロックで' select'を挿入してください。 –
は、File.join 'Dir.glob(File.join(File.dirname(__ FILE__)、 './tmp/ *。png')))であっても動作します。each' –