Как получить данные из Libre Office Calc и использовать их в сценарии bash?

Я использую Ubuntu 20.04.1

У меня есть Libre Office Calc. с двумя рабочими колоннами.
I do edit these two columns weekly once..

A   987654320
B   987654321
C   987654322
D   987654323
E   987654324
F   987654325
G   987654326

I need to write a bash script that gets the data from the above two columns and make a text file like below as an example..

BEGIN:VCARD
VERSION:3.0
FN:$(content of column1, row1)
N:$(content of column1,row1)
TEL;TYPE=cell:$(content of column2, row1)
END:VCARD

BEGIN:VCARD
VERSION:3.0
FN:$(content of column1, row2)
N:$(content of column1,row2)
TEL;TYPE=cell:$(content of column2, row2)
END:VCARD

and so on till it finds the content at last existing row
3
задан 22 August 2020 в 20:02

1 ответ

Мы можем получить требуемый результат с помощью двухэтапного процесса:

  1. конвертируем электронную таблицу в file.txt (на самом деле CSV):

     localc --headless --convert-to txt: "Текст - txt - csv (StarCalc)" file.ods
    
  2. используйте некоторые сценарии AWK:

     awk -F, '{
    напечатать "НАЧАЛО: VCARD"
    распечатать "ВЕРСИЯ: 3.0"
    напечатать "FN:" $ 1
    напечатайте "N:" $ 1
    print "TEL; TYPE = cell:" $ 2
    напечатать "КОНЕЦ: VCARD"
    Распечатать ""
    } 'file.txt 
    
3
ответ дан 24 August 2020 в 08:20

Другие вопросы по тегам:

Похожие вопросы: