私はディレクトリからN個のランダムファイルを選ぶスクリプトを持っており、amarokまたはvlcの引数として出力を渡す必要があります。awk/sedはすべての行を結合して別のプログラムに渡します
マイスクリプトpick.shがある:だから、ランダムに私は私の音楽のディレクトリ上の3つのファイルを選択し
#!/usr/bin/env bash
find "$1" -name *mp3 | shuf -n "$2" | sed -r 's/(.*)/"&"/' | awk 'NR%10{printf $0" ";next;}1'#it should be $2 instead of 10
:
pick.sh /music/ 3
を、スクリプトが二重引用符で囲まれた3曲を返します(理由これらはすべて1行で):
"/ music/s/Los Straitjackets /!Viva!/ Los Straitjackets - Outta Gear.mp3" "/ music/p/Plastilina Mosh/Juan Manuel/Plastilina Mosh - Graceland.mp3" "/ music/s/Snoop Dogg/R & G(リズム&ギャングスタ);マスターピース/スヌープ・ドッグ - Me.mp3" にはタン
しかし、私は直接のvlcにpick.shの結果を渡したい:
vlc "$(pick.sh /music/ 3)" &
をしかし、それは、スペースで区切って各トークンが追加されます私はpick.shの出力をコピーしてVLCを呼び出した後に貼り付けた場合。
しかし、すべてがOKになります。
を私が正しくpick.sh年代を解析するVLC(Amarokにまたは任意のプログラムまたは)を行うことができますどのように出力?
ありがとうございました!
間違いなく!オリジナルをコピーし、徹底的に修正していない。 – user3159253
上手く動作したThanx! – Balpo