.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)