mpv
특정 폴더에 최신 영화 5개가 포함된 재생 목록을 만들려고 합니다. - 재생 목록(생성 날짜)에 추가합니다.
다음 명령은 실패했습니다❌:
mpv --playlist | ls -lrt1 /home/Georgette/Downloads/Bridgerton | tail -n 5
mpv --playlist=$(ls -lrt1 /home/Georgette/Downloads/Bridgerton | tail -n 5)
댓글 후 업데이트(감사합니다!):
mpv $(ls -lrt1 /home/Georgette/Downloads/Bridgerton | tail -n5)
작동하지만 파일 이름의 공백 및 기타 항목에 문제가 있습니다. [file] Cannot open file 'zzz': No such file or directory
.그래서 여전히 인용 문제가 있습니다.
답변1
mpv 매뉴얼 페이지에는 --playlist
명령에 다음이 필요하다고 명시되어 있습니다.기존 재생목록 파일. 명령줄에 파일을 전달하여 mpv가 파일 목록을 재생하도록 할 수 있습니다.
파일에 공백이 있는 것 같습니다. 이로 인해 예기치 않은 동작이 발생할 수 있으며 이것이 이유입니다. 왜 `ls`를 구문 분석하지 *않나요*(그리고 어떻게 수행합니까)?또는유사한 토론.
다음과 같이 시도해 볼 수 있습니다.
cd /home/Georgette/Downloads/Bridgerton
IFS=$'\n' ; mpv $(ls -rt1 . | tail -n 5)
설정은 IFS
쉘이 각각을 처리하도록 지시합니다.철사ls는 파일 이름으로 출력합니다(각 단어가 아닌). 또한 출력에 메타 정보가 추가되므로 ls 호출에서 긴 목록을 제거했습니다. 필요한 것은 파일 이름뿐입니다.
참고: mpv 재생 중에 >
및 를 사용하여 <
한 파일에서 다음 또는 이전 파일로 이동할 수 있습니다.