YouTube에서 비디오를 다운로드하고 MP3로 변환하고 파일에 대한 디렉토리 구조를 만드는 프로그램을 작업 중입니다.
내 코드는 다음과 같습니다.
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
첫 번째는 이미 생성 된 음악 폴더로 이동합니다. 그 안에서 나는 실행하고 get
있습니다. 그 후 디렉토리에 "xyz.mp4"와 "xyz.m4a"라는 두 개의 파일이 있습니다.
두 파일을 다르게 처리 할 수 있도록 확장자없이 파일 이름을 가져오고 싶습니다.
나는 배열을 사용하고 있지만, 하나의 일치에 대한 배열은 나에게 미친 소리로 들립니다.
다른 생각이 있습니까?
또한
—
틴 남자
rip.to_s
및 rip.split
아무것도하지 않습니다.
의 가능한 중복 루비에서 파일 경로에서 확장자없이 파일 이름을 얻을하는 방법
—
ymoreau
$globals
처럼 사용하지 마십시오 . 변수 범위 지정을 이해하지 못하고 "속임수"를 위해 전역에 의존하는 매우 강력한 힌트입니다. 그것들은 코드 냄새이며 불행과 고통으로 이어집니다.