ファイルの配列があります(一部にはスペースがあります)。これらのファイルから genisoimage を使用して iso ファイルを作成しますが、スペースが原因で混乱します。
次に例を示します。
#これは私のファイルの配列です。注: 「2 a」はスペースを含むファイル名です。 ファイル=(1 "2 a" 3) # ここで、配列内のファイルを使用して iso ファイルを作成しようとしました..失敗しました echo "${files[@]}"|xargs genisoimage -o "test.iso"
私はこの出力を得る:
genisoimage: そのようなファイルまたはディレクトリはありません。無効なノード - '2'。
の出力echo "${files[@]}
を見ると、ファイルの出力がファイル名を適切に引用していないことがわかります(したがって、 に2 a
なります2
)
xargs で使用するために適切にエスケープされるファイルの配列を出力する方法はありますか? -0
xargsでオプションを使用できるように、要素セパレーターをヌル文字として出力する方法を好むでしょう。