Я не думаю, что Вы можете. xterm
не должен быть установлен везде и действительно вероятно, не по умолчанию. Особенно, когда настольная среда используется, который обеспечивает ее собственный терминал.
Я думаю, что Ваш лучший выбор состоит в том, чтобы, вероятно, проверить на существование нескольких различных терминалов (скажите, xdg-terminal
, x-terminal-emulator
, gnome-terminal
, konsole
, xterm
). И возможно работа для получения xdg-терминального на самом деле добавленный к стандартам FreeDesktop.org.
Затем Вы доберетесь, чтобы найти, что различные терминалы имеют различные пути к командам выполнения и иногда даже различные версии того же терминала..., например, см. Ошибку Debian № 648271.
Необходимо, вероятно, также дать администратору/пользователю способ установить пользовательскую команду. Это, конечно, будет необходимо.
На данный момент это невозможно с помощью GNU tar, но вещи существуют :
Обратите внимание, что жесткая привязка и вывод не имеют одинаковой семантики, нужен другой тип узла tar для представления "дублирующих данных", чтобы процесс извлечения архивов правильно воссоздавал дублирующие (и, таким образом, несомненно, живые) файлы; это создало бы несовместимые tar-архивы с большинством стандартных инструментов (GNU tar, pax и т.д.), что было бы жирным движением.
Позвольте мне настаивать: если бы вы смогли ассимилировать дубликаты с жестко связанными файлами, у вас возникла бы проблема при извлечении архивов: * действительно ли это жестко привязанные файлы, как в Git repo ? Тогда они должны быть действительно воссозданы как жесткосвязанные файлы, иначе восстановленный Git repo не будет работать ? * или это действительно идентичные файлы, и если бы они были восстановлены как жесткие связки, то в восстановленном архиве, вероятно, произошла бы серьёзная утечка данных (представьте, что вы ассимилировали идентичные файлы /etc/passwd во время архивирования, восстановите их как один файл с несколькими жёсткими связками: одна модификация в одной ВМ становится видимой в другой!)