Estoy trabajando en un programa para descargar un video de YouTube, convertirlo a MP3 y crear una estructura de directorios para los archivos.
Mi código es:
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
El primero va a la carpeta de música ya creada. Dentro de eso estoy ejecutando get
. Después de eso tengo dos archivos en el directorio: "xyz.mp4" y "xyz.m4a".
Me gustaría buscar el nombre de archivo sin la extensión para poder manejar ambos archivos de manera diferente.
Estoy usando una matriz, pero una matriz para una sola partida me parece una locura.
¿Alguien otra idea?
$globals
como eres. Son una pista muy fuerte de que no entiendes el alcance variable y confías en los globales para "hacer trampa". Son olor a código y conducen a la miseria y al dolor.rip.to_s
yrip.split
no hacer nada.Respuestas:
Puede usar las siguientes funciones para su propósito:
fuente
extn
es la cadena".mp4"
o incluso la cadena".*"
.