
シェル (私の場合は bash) のコマンドを使用すると、「引数リストが長すぎます」という問題が発生します。この問題を回避するためのほとんどの提案では、find
引数の長さ制限を超えているのはファイルの長いリストであると想定して、 またはそのバリエーションを使用することが提案されています。
ただし、私の場合はファイルのリストではなく、引数のリストです。オーディオ処理ソフトウェアを使用しておりsox
、必要な数のコマンドライン引数を使用できる必要があります (入力オーディオ ファイルの長さによって異なります)。したがって、たとえば、必要なコマンドの短縮版は次のようになります。
sox input.wav output.wav trim 0 1 gain 1 : trim 0 1 gain 2 : trim 0 1 gain 1
しかし、3 つのトリム/ゲイン引数ペアだけではなく、必要なだけ継続させたいのです (つまり、 が継続すると想像してください) trim 0 1 gain X
。
引数の長さ制限を覆すためにこれを生成する関数を書く方法はありますか? いくつかのバリエーションを試してみましたが、わかりません。
答え1
に固有のソリューションがsox
当面のニーズを満たす場合は、マニュアル ページを見ると、コマンド ライン引数ではなくファイル内のすべての編集内容を指定できるsox(1)
オプションがあることがわかります。--effects-file