Ru:Gramps 5.2 Вики Руководство - Командная строка

From Gramps
Revision as of 11:55, 6 October 2023 by Patsyblefebre (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Пред Содержание След


В этом документе описаны возможности командной строки, доступные при запуске Gramps через терминал.

Доступные команды

В этом разделе представлен перечень всех команд, доступных через командную строку Gramps. Если вас интересует большее, чем просто список, смотри следующие разделы: Применение and Примеры. Список так же доступен на этой странице.

Команды списка

Вывести список всех известных семейных древес:

Кратко
-l, print a list of known family trees
Рис. C.1 Пример вывода для python gramps.py -l


Подробно
-L, print a detailed list of known family trees
Рис. C.2 Пример вывода для python gramps.py -L


Обратите внимание, что даты выводятся согласно текущей локали. Вы можете поменять это на системном уровне. Например, для операционных систем на основе POSIX это будет выглядеть так:

LC_TIME=en_AU.UTF-8 gramps -L


Команда версии

-v or --version prints version of Gramps and dependencies,
     information about environment settings and python and system paths
Рис. C.3 Пример вывода для python gramps.py -v


Команда форматов

Формат любого файла, предназначенного для открытия, импорта или экспорта должен быть описан в опции

-f format

. Ниже приведен список допустимых значений аргумента format.

Полная поддержка

Эти форматы содержат все ваши данные, представленные в фамильном древе.

  • gramps - формат Gramps XML: Этот формат доступен для импорта и экспорта. Если не указать явно, этот формат автоматически выберется по расширению файла ".gramps"
  • gpkg - упакованный формат Gramps XML: Этот формат доступен для импорта и экспорта. Если не указать явно, этот формат автоматически выберется по расширению файла ".gpkg". Он состоит из zip-архива ваших даных в формате XML и включает в себя все медиа-файлы
  • grdb - база данных Gramps версии до 3.x: Этот формат доступен для импорта для поддержки старого формата файлов Gramps. Всё содержимое файла grdb будет импортировано. Если не указать явно, этот формат автоматически выберется по расширению файла ".grdb"
  • burn - формат записи GNOME iso: только экспорт, доступен только на GNOME если используется протокол записи дисков

Частичная поддержка

Эти форматы сорержат большинство, но не все данные, которые вы можете создать в Gramps

  • ged - фрмат GEDCOM: Этот формат доступен для экспорта и импорта. Если не указать явно, этот формат автоматически выберется по расширению файла ".ged"
  • gw - файл GeneWeb: Этот формат доступен для экспорта и импорта. Если не указать явно, этот формат автоматически выберется по расширению файла ".gw"

Другие форматы

Эти форматы содержат отдельные подмножества ваших данных

  • csv - значения через запятую: Этот формат доступен для импорта и экспорта. Но будте осторожны, файл для импорта должен быть такого же вида, как и файл созданный функцией экспорта. При экспорте в файл попадает только часть ваших данных.
  • vcf - формат VCard: импорт и экспорт
  • vcs - формат VCalandar: экспорт
  • def - старый формат Pro-Gen: импорт
  • wft - Web Family Tree: этот формат доступен только для экспорта. Если не указать явно, этот формат автоматически выберется по расширению файла ".wft"

Команды открытия

Вы можете открыть фамильное древо или импортировать файл в пустое фамильное древо.

Чтобы Gramps выполнил это, просто укажите фамильное древо или файл, которые вы хотите открыть:

python gramps.py 'Моё древо'
python gramps.py JohnDoe.ged

Первая строка отрывает фамильное древо, вторая импортирует файл gedcom в пустое фамильное древо.

Кроме того, вы можете указать Gramps имя фамильного древа для открытия с помощью команды:

  • так :
    -O famtree
    или так
    --open=famtree 

-O, Открывает фамильное древо. То же самое будет если просто набрать имя древа (или путь к базе данных)

Примеры:

python gramps.py 'Family Tree 1'
python gramps.py /home/cristina/.gramps/grampsdb/47320f3d
python gramps.py -O 'Family Tree 1'
python gramps.py -O /home/cristina/.gramps/grampsdb/47320f3d


Tango-Dialog-information.png
Совет

Если не указать никаких команд, только имя, Gramps проигнорирует остальные аргументы командрой строки. Применяйте команду -O для открытия, команду -i для импорта, если хотите использовать еще и другие команды в командной строке


Tango-Dialog-information.png
Совет

Только фамильные древеса можно открыть напрямую. Для других форматов необходимо использовать опцию импорта, которая создаст пустую базу данных и импортирует данные в нее.


Tango-Dialog-information.png
Совет

Открыть можно только одно фамильное древо. Если вам необходимо объединить данные из нескольких источников, используйте команду импорта.


Команды импорта

Файлы для импорта помещаются в команду

-i filename

или

--import=filename

. Формат может быть определен командой

-f format

или

--format=format

Эта команда должна следовать непосредственно за filename. Если формат не определен, Gramps пытается предположить формат исходя из имени файла.

Пример:

  python gramps.py -i 'Family Tree 1' -i 'Family Tree 2'
  python gramps.py -i test.grdb -i data.gramps
Tango-Dialog-information.png
Совет

В одной командной строке может быть импортировано более одного файла. Если вы импортируете несколько файлов, то данные из следующего файла добавляются в базу данных, полученную на момент окончания импорта предыдущих.


Если вы импортируете больше одного файла, каждому файлу должна предшествовать команда

-i

. Файлы импортируются в порядке следования, т.е.

 -i file1 -i file2 

и

 -i file2 -i file1 

скорей всего создадут разные инеднификаторы (IDs) в конечной базе данных.

Команды экспорта

Файлы для экспорта помещаются в команду

-e filename

или

--export=filename

Формат может быть определен командой

-f

Эта команда должна следовать непосредственно за filename. Если формат не определен, Gramps пытается предположить формат исходя из имени файла. Для формата iso в качестве filename должна быть указана директория, куда будет записана база данных Gramps. Для форматов gramps-xml, gpkg, gedcom, wft, geneweb и gramps-pkg в качестве filename должно быть указано имя файла, куда будет производится экспорт.

-e, экспорт фамильного древа в требуемый формат. Нет возможности экспортировать одно фамильное древо в другое.

Пример:

 python gramps.py -i 'Family Tree 1' -i test.grdb -f grdb -e mergedDB.gramps

Обратите внимание, что командная строка выше не изменит 'Family Tree 1', так так импорт будет производиться во временную базу данных, тогда как:

 python gramps.py -O 'Family Tree 1' -i test.grdb -f grdb -e mergedDB.gramps

импортирует test.grdb в Family Tree 1, а затем результат экспортируется в файл!

Tango-Dialog-information.png
Совет

В одной командной строке можно экспортировать более одного файла. Если вы экспортируете несколько файлов, то Gramps попытается записать каждый файл, использую данные из доступной на текущий момент базы данных.


Если экспортируется несколько файлов, каждому должна предшествовать команда

-e

Файлы будут записываться один за другим в порядке следования в командной строке.

Команды действий

Действие, выполняемое над импортированными данными, должно определяться в команде

-a action

или

--action=action

Действие выполняется после успешного завершении всех операций импорта.

Следующие действия ведут себя подобным образом:

  • report: Позволяет создать отчет из командной строки.
  • tool: Позволяет запустить инструмент из командной строки.

Отчеты и инструменты обычно имеют множество параметров, которые должны следовать за командой действия. Параметры отчетов и инструментов указываются в виде строки в команде

-p option_string

или

--options=option_string

Следующие действия были доступны в старых версиях Gramps и изменены начиная с версии Gramps 3.3:

  • summary: Это действие делает то же, что и Отчеты ->Текстовые отчеты ->Обзор базы данных. В Gramps 3.3 оно было перенесено (переименовано) в -a report -p name=summary.
  • check: Это действие делает то же, что и Инструменты ->Починка семейного древа ->Проверить и исправить базу данных. В Gramps 3.3 оно было перенесено (переименовано) в -a tool -p name=check.

параметры действия report

С помощью действия report можно создавать большинство отчетов из командной строки.

Например:

gramps -O "Family Tree 1" -a report -p "name=family_group,style=default,off=html,of=test.html"

Вы можете задать стили css с помощью параметра css:

gramps -O "Family Tree 1" -a report -p "name=family_group,style=default,off=html,of=test.html,css=Web_Nebraska.css"

или вообще не использовать стили css:

gramps -O "Family Tree 1" -a report -p "name=family_group,style=default,off=html,of=test.html,css="
Tango-Dialog-information.png
Строка параметров отчета

Строка с параметрами отчета должна удовлетворять следующим условиям: Она не должна содержать пробелов (так устроен интерфейс командной строки). Если некоторым параметнам требуются пробелы - сорока с параметрами должна быть заключена в кавычки. Строка параметров должна состоять из списка пар параметр - значение. Внутри пары имя параметра и его значение должны разделяться знаком равенства. Соседние пары должны разделяться запятой.


У каждого отчета свой набор параметров. Есть так же параметры общие для всех типов отчетов.

  • name=report_name: Этот обязательный параметр определяет тип создаваемого отчета. Если тип отчета не соответствует ни одному из доступных, будет выведено сообщение об ошибке вместе со списком типов доступных отчетов.
  • of : имя создаваемого файла
  • off: формат создаваемого файла. Доступны следующие форматы: eg, pdf, html, doc, ...
  • style: для текстовых отчетов задает стилевую таблицу. По умолчанию значение 'default'.
  • show=all: Выводит список имен всех параметров для данного типа отчетов.
  • show=option_name: Выводит описание параметра option_name, а так же его допустимые значения.

Таким образом, чтобы изучить возможности отчета, выполните:

gramps -O "Family Tree 1" -a report -p "name=family_group,show=all"
Tango-Dialog-information.png
Совет

Если параметр отсутствует, будет использоваться последнее значение этого параметра для данного типа отчетов. Если отчет создается впервые, будет использоваться значение этого параметра из другого ранее созданного отчета, когда это допустимо. В противном случае будет использоваться значение параметра по умолчанию.


Если в одной команде выполняется несколько действий, каджому должна предшествовать команда

-a

Действия выполняются одно за другим в порядке следования.

Tango-Dialog-information.png
Списки

Некоторые отчеты имеют параметры, которые должны представляться в отчете в виде нискольких строк. Например некоторые отчеты позволяют задать формат выводимой информации, имя на одной строки и дату рождения на другой. Такие многострочные параметры называются в Gramps "списками".


Такие списки в командной строке всегда должны начинаться с левой квадратной скобки

[

и всегда заканчиваться правой квадратной скобкой

]

но так как обычно квадратные скобки являются спецсимволами для командного интерпретатора (в котором вы набираете команду), вы должны экранировать их для того, чтобы командный интерпретатор их игнорировал.

Подробности зависят от типа командного интерпретатора. В linux/UNIX обычно вы доолжны поставить перед квадратной скобкой обратный слэш

\

или заключить квадратную скобку в кавычки, одинарные или двойные.

Граф "Песочные часы" позволяет указать комментарий сверху отчета. Такой комментарий - пример параметра списк. Пример:

gramps -O "Family Tree 1" -a report -p name=hourglass_graph,note='[line one,line two]'

в котором показано, что строки внутри такого списка разделены запятыми и пробелы вместе с квадратными скобками заключены в кавычки.

Если вам необходимы запятые внутри параметри типа список, вы можете указать Gramps, что эти запятые не разделяют строки. Вы должны заключить такие строки с запятыми в кавычки (одинарные или двойные).

Но если вы уже используете кавычки в своем параметре (чтобы заключить в них квадратные скобки), вы должны использовать другой тип кавычек, чтобы заключить в него строки с запятыми. Пример:

gramps -O "Family Tree 1" -a report -p name=hourglass_graph,note="['line one, also line one','line two, also line two']"

В список можно включать любые символы, но подробности выходят за рамки данного описания.

Нужно иметь подробное описание для вашего командного интерпретатора, чтобы знать, как включать в команду спецсимволы для этого интерпретатора или для Gramps (такие, как запятые в примере выше). Если всегда заключать в кавычки строки в команде дважды, один раз для интерпретатора и один раз для Gramps, не нужно будет обращать внимания на эти экранирования.

параметры действия tool

Вы можете запустить большинство инструментов из командной строки используя действие 'tool'. Чтобы увидеть какие именно, наберите:

gramps -O "Family Tree 1" -a tool -p show=all

Чтобы увидеть параметры конкретного инструмента, например "verify", наберите:

gramps -O "Family Tree 1" -a tool -p name=verify,show=all

Чтобы запустить инструмент, например "verify", наберите:

gramps -O "Family Tree 1" -a tool -p name=verify

параметры действия book (начиная версии 5.2)

Вы можете открыть отчет "Книга" из командной строки с помощью действия 'book'. Чтобы увидеть какие - наберите:

gramps -O "Family Tree 1" -a book

Чтобы увидеть доступные параметры для книги, например с названием "mybook":

gramps -O "Family Tree 1" -a book -p name=mybook,show=all

Чтобы открыть книгу, например с названием "mybook":

gramps -O "Family Tree 1" -a book -p name=mybook

Команда разблокирования базы

-u, вы можете дополнить команду -O командой -u чтобы принудительно разблокировать базу данных. Это позволить снять блокировку семейного древа (базы данных), оставшуюся после сбоя, из командной строки.

Пример (разблокировать базу данных "Family Tree 1"):

gramps -O "Family Tree 1" -a report -u > /dev/null

Обратите внимание, что невозможно открыть семейное древо, которое требует исправления базы данных, из командной строки.

Команда конфигурирования (config)

Команда имеет 3 формы: (следующие примеры, исключая 3.2, используют behavior.database-path в качестве тестовой конфигурационной переменной.)

1) Увидеть все конфигурационные переменные:

-s or --show
Рис. C.4 Пример вывода для python gramps.py -s


2) Посмотреть значение переменной:

--config=behavior.database-path
или
-c behavior.database-path

3) Записать переменную:

--config=behavior.database-path:'/media/mydb'
или
-c behavior.database-path:'/media/mydb'

3.1) Записать в переменную значение по умолчанию:

--config=behavior.database-path:DEFAULT
или
-c behavior.database-path:DEFAULT

3.2) Записать несколько переменных:

--config=behavior.use-tips:False --config=behavior.autoload:True
или
-c behavior.use-tips:False -c behavior.autoload:True

После записи конфигурационной переменной (переменных) Gramps стартует, используя новые значения.

Использование

Если первый аргумент в командной строке не начинается с дефиса (т.е. не команда), Gramps попытается открыть файл с именем, указанным в первом аргументе и запустить интерактивную сессию, игнорируя оставшуюся часть командной строки.

Если задана команда

-O

, Gramps попытается открыть соответствующий файл, затем выполнить остальные команды в командной строке.

Gramps-notes.png
Заметка

За один запуск Gramps можно открыть только один файл. Если вам нужно получить данные из нескольких источников, используйте команду импорта:
-i

Независимо от наличия команды

-O

, в одной командной строке можно выполнить несколько импортов, экспортов и действий, используя команды

-i

,

-e

и

-a

Порядок команд

-i

,

-e

или

-a

друг относительно друга не важен. Порядок выполнения всегда одинаков: сначала все импорты (если есть), затем все экспорты (если есть) и затем все действия (если есть).

Gramps-notes.png
Заметка

Но открытие всегда должно быть первым!

При отсутствии команд

-O

или

-i

Gramps покажет свое главное окно и запустит обычную интерактивную сессию с пустой базой данный, потому что данные для обработки нет. (Если конечно вы не используете опцию всегда стартовать с последней загруженной базой данных). При отсутствии команд

-e

или

-a

Gramps покажет свое главное окно и запустит обычную интерактивную сессию с базой данных, полученной после открытия и выполнения всех импортов (если такие есть). Эта база данных располагается в директории ~/.gramps/import/, файле import_db.grdb.

Все ошибки, возникающие во время импорта, экспорта или действий будут выведены в поток stdout (если исключения обработаны Gramps) или в stderr (если не обработаны). Используйте обычные перенаправления stdout и stderr, чтобы записать сообщения об ошибках в файл.

Примеры

  • Чтобы импортировать четыре базы данных (форматы которы определяются их именами) и после проверить полученную базу данных на ошибки, наберите:
gramps -i file1.ged -i file2.gpkg -i ~/db3.gramps -i file4.wft -a check
  • Чтобы явно задать форматы в предыдущем примере, добавьте после имен файлов команды -f:
gramps -i file1.ged -f gedcom -i file2.gpkg -f gramps-pkg -i ~/db3.gramps -f gramps-xml -i file4.wft -f wft -a check
  • Чтобы сохранить базу данных, полученную после всех импортов, используйте команду -e (добавьте команду -f, если Gramps не сможет предположить формат исходя из имени файла):
gramps -i file1.ged -i file2.gpkg -e ~/new-package -f gramps-pkg
  • Чтобы сохранить возможные сообщения об ошибках в предыдущих примерах в файлы outfile and errfile, запустите:
gramps -i file1.ged -i file2.dpkg -e ~/new-package -f gramps-pkg >outfile 2>errfile 
  • Чтобы импортировать три базы данных и запустить интерактивную сессию Gramps с результатом:
gramps -i file1.ged -i file2.gpkg -i ~/db3.gramps 
  • Чтобы открыть базу данных и создать по ней отчет с временной диаграммой в PDF-файл с именем my_timeline.pdf
gramps -O 'Family Tree 1' -a report -p name=timeline,off=pdf,of=my_timeline.pdf 
Tango-Dialog-information.png
Список параметров отчета

Используй строку name=timeline,show=all, чтобы выяснить все доступные параметры отчета. Чтобы посмотреть описание на конкретный параметр, используйте строку show=option_name.Чтобы узнать все доступные типы отчетов, используйте строку name=show.


  • Чтобы преобразовать на лету grdb в .gramps xml:
gramps -O 'Family Tree 1' -e output.gramps -f gramps-xml
  • Чтобы создать веб-сайт на другой языке (на немецком):
LANGUAGE=de_DE; LANG=de_DE.UTF-8 gramps -O 'Family Tree 1' -a report -p name=navwebpage,target=/../de 
  • Ну и наконец, чтобы запустить обычную интерактивную сессию Gramps:
gramps

Переменные окружения

Gramps использует следующие переменные окружения (но вы не должни их менять, если не уверены в последствиях):

  • GRAMPSHOME - если установлена, перекрывает настройки пути по умолчанию к профилю, что позволяет использовать, например, сетевые диски для сохранения данных и всех настроек. Для технически продвинутых пользователей, которые запускают несколько версий Gramps, установка разных значений переменной $GRAMPSHOME позволяет избежать взаимного влияния этих версий.
  • LANG - используется Gramps для определения загружаемого файла языковой поддержки.
Пред Содержание След
Gnome-important.png Особое уведомление об авторских правах: Все правки на этой странице должны удовлетворять требованиям двух следующих лицензий:

Указанные лицензии позволяют проекту Gramps максимально использовать настоящее вики-руководство в качестве свободного и бесплатного источника информации для будущих версий Gramps. Если Вы не согласны с условиями такого двойного лицензирования размещаемых на страницах вики-руководства материалов, то не редактируйте эту страницу. В этом случае Вы имеете право лишь создавать ссылки на другие страницы настоящего вики-руководства, которые соответствуют требованиям только лицензии GFDL, с использованием внешних ссылок (используя синтаксис: [http://www.gramps-project.org/...]), но не внутренних ссылок.
Также, используйте только принятые соглашения по оформлению текста.