.csvファイルの内容をZenityリストに出力する方法。ファイルには複数の行と列があり、固定行数はありません。また、ユーザーがいずれかの項目をダブルクリックするとcsvファイルを更新できるように、テキストフィールドが埋め込まれたZenityフォームが開き、シェルbashファイルを使用したいと思います。
インターネットを検索しようとしましたが、運がありませんでした。一部のみサポートがある場合は、回答を投稿してください。
答え1
入力csv
$>猫データ.csv
Mumbai,India
Chicago,USA
London,UK
New York,USA
CSV出力フォーマットを指定します。行番号を追加し、各列の値を新しい行に分割します。
cat data.csv | \
awk -F ',' '{
print NR; # Print Record Number
for(i=1;i<=NF;i++){
print $i; # Print Each Column separeted by Default EOL
}
}' | \
zenity --list \
--title="Title" \
--column="Index" --column="City" --column="Country" \
--print-column=2
答え2
$ cat lang.txt
Brazil,Brasilia,Portugues
England,London,English
France,Paris,French
Germany,Berlim,German
$ zenity --list --title Foolish \
--column Contry --column Capitol --column Language \
--print-column=2 $(tr , \\n < lang.txt)