bash_completion управляют для разрешения IP в имена хостов

Я задал Ваш вопрос разработчику приложения мерзавца на их форумах. Вот мой/Ваш вопрос:

У меня есть вопрос на установке нового repo. Действительно ли возможно инициализировать новый repo использование файлов, которые уже локальны на, говорят что мой ноутбук, вместо того, чтобы загрузить их с удаленного репозитория S3? Извините, если это неясно. Но я пытаюсь использовать файлы, которые локальны на моем ноутбуке так я, Дон должен пройти испытание загрузки их от S3.

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

Автор git-annex, Joey, сказал, что можно использовать одну из следующих опций:

  1. Использовать git annex reinject питаться в определенных файлах.
  2. Проверьте все локальные файлы во временном каталоге. Или Помощник приложения мерзавца или руководство git annex add заметит, имеют ли эти файлы то же содержание как файлы уже в репозитории. Файлы затем будут доступны в двух местах, временном каталоге и везде, где он был проверен в Ваш репозиторий прежде. Можно затем удалить временный каталог.

5
15.05.2014, 19:45
1 ответ
[1130278] Поскольку вы использовали [1130716]compgen -f[1130717], это означает [1130718]compgen[1130719] перечислит все файлы и каталоги по текущему пути. В вашем случае это означает [1130720]0A6F010B 0A6F010C 0A6F010D 0A6F010E[1130721]. [12182]Чтобы получить имена хостов, вы можете пройти по текущему пути, передать каждый IP в [1130722]getnameinfo[1130723], чтобы получить имя хоста, соответствующее этому IP, сохранить его в массиве, а затем использовать этот массив в качестве словаря с [1130724]compgen -W[1130725].[12183]Я провел простой тест в своем окружении. Я создал файл [1130726]/etc/bash_completion.d/cuonglm[1130727]:[12184]Я использовал всю вашу функцию с небольшим изменением:[12185]Я использую массив [1130898]HOST_ARR[1130899] для сохранения имен хостов. [12186]Просмотрите текущий каталог (спасибо [1130900]pushd[1130901]), передавая каждое имя файла в программу [1130902]getnameinfo[1130903]. [12187]Затем я использую [1130904]compgen -W[1130905], чтобы заставить compgen создать словарь для завершения.[12188]И вот результат:[12189]Поскольку два имени хостов имеют одну и ту же порцию [1130734]сервера[1130735], bash сначала автозавершит эту порцию. Если есть другое имя хоста, [1130736]Server.example[1130737]:[12190]
4
27.01.2020, 20:40

Теги

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