Sto lavorando a un programma per scaricare un video da YouTube, convertirlo in MP3 e creare una struttura di directory per i file.
Il mio codice è:
FileUtils.cd("#{$musicdir}/#{$folder}") do
YoutubeDlhelperLibs::Downloader.get($url)
if File.exists?('*.mp4')
puts 'Remove unneeded tempfile'
Dir['*.mp4'].each do |waste|
File.delete(waste)
end
else
puts 'Temporary file already deleted'
end
Dir['*.m4a'].each do |rip|
rip.to_s
rip.split
puts 'Inside the function'
puts rip
end
end
Il primo va alla cartella musicale già creata. Dentro quello che sto eseguendo get
. Dopo di che ho due file nella directory: "xyz.mp4" e "xyz.m4a".
Vorrei recuperare il nome del file senza l'estensione in modo da poter gestire entrambi i file in modo diverso.
Sto usando un array, ma un array per una sola corrispondenza suona folle per me.
Qualcuno ha un'altra idea?
rip.to_s
e rip.split
non fare nulla.
$globals
come sei. Sono un indizio molto forte che non capisci lo scoping delle variabili e ti affidi alle globali per "barare". Sono odori di codice e portano a sofferenza e dolore.