Tôi đang cố gắng tự động chuyển đổi các tập tin flac được chuyển sang một thư mục thành mp3 trong một thư mục khác.
Dòng mã hiện tại của tôi là:
inotifywait -m -r -q -e moved_to --format "'%w%f'" ~/test | xargs -I x flac -cd x - | lame -b 320 - /media/1tb/x.mp3
Để giải thích cách thức hoạt động cho đến nay, inotifywait màn hình ~ / kiểm tra đệ quy cho các tệp được di chuyển ở đó, xuất đường dẫn và tên tệp vào một đường ống. xargs lấy tên đó và tạo lệnh flac thích hợp, thay thế x bằng tên tệp và giải mã tệp sang một đường ống khác. Trong đường ống mới, què xử lý đầu ra của flac vào mp3 dưới / media. Tôi muốn xargs tiếp cận qua đường ống theo một cách nào đó, thay thế x trong lệnh què hoặc bằng một cách nào đó gửi nó đến một biến cả hai lệnh có thể truy cập hoặc một cái gì đó. Tôi đã cố gắng làm rối tung các ống có tên và nhạc jazz đó nhưng thực tế là có dữ liệu thực tế được đặt giữa hai lệnh khiến tôi phải lo lắng.
while read …
là một giải pháp, nhưng sau đó, thảxargs
. Những gì bạn viết chỉ không có ý nghĩa: bạn nghĩ nơi nàoxargs
nhận được đầu vào của nó? Và bạn nên trích dẫn mọi thứ một cách chính xác, thông thường tên tệp nhạc có chứa khoảng trắng.