폴더로 이동 된 flac 파일을 다른 폴더의 mp3로 자동 변환하려고합니다.
내 현재 코드 줄은 다음과 같습니다.
inotifywait -m -r -q -e moved_to --format "'%w%f'" ~/test | xargs -I x flac -cd x - | lame -b 320 - /media/1tb/x.mp3
이것이 지금까지 어떻게 작동하는지 설명하기 위해, inotifywait는 경로로 이동 한 파일을 파이프로 경로와 파일 이름을 출력하여 재귀 적으로 ~ / test를 모니터링합니다. xargs는이 이름을 사용하여 x를 파일 이름으로 바꾸고 파일을 다른 파이프로 디코딩하여 적절한 flac 명령을 작성합니다. 새로운 파이프 라메에서는 flac의 출력을 / media에서 mp3로 처리합니다. xargs가 파이프를 가로 질러 lame 명령의 x를 바꾸거나 어떤 식 으로든 두 명령이 액세스 할 수있는 변수로 보내길 원합니다. 나는 명명 된 파이프와 그 재즈로 엉망을 시도했지만 두 명령 사이에 실제 데이터가 파이프되어 있다는 사실이 저를 방해합니다.
while read …
솔루션이지만 드롭xargs
. 당신이 쓴 것은 이해가되지 않습니다 : 당신은 어디에서xargs
입력을 받고 있다고 생각 합니까? 그리고 당신은 물건을 올바르게 인용해야하며, 음악 파일 이름에 공백이 포함되는 것이 일반적입니다.