Ich habe 385 Unterordner in einem Verzeichnis, von denen jedes eine CSV-Datei zusammen mit mehreren PDFs enthält. Ich versuche, einen Weg zu finden, jeden Unterordner zu durchsuchen und eine Liste der PDFs in eine TXT-Datei zu schreiben. (Ich weiß, es gibt bessere Sprachen als Ruby, aber ich bin neu in der Programmierung und es ist die einzige Sprache, die ich kenne.)Ruby - Schreiben von Dateinamen aus Unterordnern in eine TXT-Datei
Ich habe Code, der die Arbeit erledigt, aber das Problem, das ich bin Running in es ist auch das Unterordner Verzeichnis aufgelistet. Beispiel: Anstatt "document.pdf" in eine Textdatei zu schreiben, wird "subfolder/document.pdf" geschrieben.
Kann mir bitte jemand zeigen, wie man nur den PDF-Dateinamen schreibt?
Vielen Dank im Voraus! Hier ist mein Code:
class Account
attr_reader :account_name, :account_acronym, :account_series
attr_accessor :account_directory
def initialize
@account_name = account_name
@account_series = account_series
@account_directory = account_directory
end
#prompts user for account name and record series so it can create the directory
def validation_account
print "What account?"
account_name = gets.chomp
print "What Record Series? "
account_series = gets.chomp
account_directory = "c:/Processed Batches Clone/" + account_name + "/" + account_series + "/Data"
puts account_directory
return account_directory
end
end
processed_batches_dir = Account.new
#changes pwd to account directory
Dir.chdir "#{processed_batches_dir.validation_account}"
# pdf list
processed_docs = []
# iterates through subfolders and creates list
Dir.glob("**/*.pdf") { |file|
processed_docs.push(file)
}
# writes list to .txt file
File.open("processed_batches.txt","w") { |file|
file.puts(processed_docs)
}
Das ist lustig, Ihr Kommentar zu Rubin. Ich habe seit Jahrzehnten programmiert und habe mindestens ein Dutzend Sprachen verwendet, und ich würde jedem neuen Programmierer empfehlen, mit Ruby zu beginnen! Das mag ich am Liebsten. –