2016-08-04 10 views
0
私は、リストのこの種を生成したい要するに

enter image description here拡大変数

for file in * 
do 
    woC=$(sed -n -e 's#some-regex#\1#p' "$file") 
    idL=$(pcregrep -M '/some-regex/\1/p') 
    gridData="$gridData $file $wowC \"$idL\"" 
done 

は何$ WOCと$ IDL内だが重要ではないことをふり。重要なのは、$ idLに空白が含まれている可能性があるということです。私は$ gridData展開するbashのを強制する方法を見つけ出すことはできません

zenity --list \ 
    --title="NCR Service Requests" \ 
    --width=420 --height=500 \ 
    --column="File" --column="Wow Code" --column="ID list" \ 
    $gridData 

空白が保存されるような方法で(または$ IDLを、正確に問題です私は知らない)、まだ別のフィールドが分​​離したままで。

+1

'idL'が空白を含む別の引数(' zenity')にする必要がある場合は、配列を使う必要があります(シェルを分割してループする方法がない限り、 'pcregrep'を使ってそれを設定することはできませんあなたが望む方法)。 –

答えて

0

あなたがxargs使用することができます。

xargsが(二重または単一引用符やバックスラッシュで保護することができます)空白 または改行で区切られた標準入力から項目を読み込み、コマンドを実行します。 ..

あなたは、引数の完全なリストを作成し、zenityにそれを渡します。

#!/bin/bash 
gridData="\"a b\" \"c\" \"d\"" 
gridData="$gridData \"a\" \"b c\" \"d\"" 
gridData="$gridData \"a\" \"b\" \"c d\"" 

echo "--list 
--title=\"NCR Service Requests\" 
--width=420 --height=500 
--column=\"File\" 
--column=\"Wow Code\" 
--column=\"ID list\" $gridData" | xargs zenity 

exit 0 
関連する問題