traceroute
может быть хорошее начало: это показывает Вам количество транзитных участков между Вашим собственным хостом и удаленным. Я не знаю о способе получить этот вид информации для пары пультов ДУ, кроме путем выполнения traceroute
на одном из них.
Нет никакой опции использовать locate
для нахождения выбранного типа файла (как каталог) но можно использовать синтаксис от вопроса - Dropnot$
найти строки, который заканчивается Dropnot
. Для этого необходимо использовать -e
опция расположиться для включения регулярного выражения POSIX.
В этом случае необходимо использовать:
locate -e Dropnot$
Важно, какой версии определяют местоположение, Вы имеете. В моей системе (хинду Linux) я имею Безопасный, Найдите:
$ locate --version
Secure Locate 3.1 - Released March 7, 2006
в котором существует нет --basename
опция от uther
ответ. Эта возможность предоставляется GNU, Располагаются от findutils пакета:
$ ./locate --version
locate (GNU findutils) 4.4.2
Если Вы хотите использовать regexp с GNU, Располагаются, необходимо использовать -r
переключатель вместо этого -e
.
Я имею mlocate
установленный. Это - значение по умолчанию, распределенное Redhat, таким образом, это будет на Fedora, RHEL, CentOS. От man 1 locate
-b, --basename
Match only the base name against the specified patterns. This
is the opposite of --wholename.
Таким образом, если Вы работаете locate -b '\Dropknot'
, это только сообщит о файлах или каталогах с точно той строкой.
Because \ is a globbing character, this disables the implicit replacement
of NAME by *NAME*.
С GNU располагаются (другой располагаться, реализации могли бы отличаться):
locate '*/Dropnot'
locate Dropnot | grep '/Dropnot$'
Когда нет никакого подстановочного знака в аргументе, locate
ищет путь, имеющий указанный критерий поиска как подстрока. Когда аргументом является шаблон оболочки, содержащий один или несколько подстановочных символов, locate
ищет полное соответствие. Если Вы не хотите производить /Dropnot
в конце:
locate -0 '*/Dropnot' | xargs -0 -n1 dirname
locate Dropnot | sed -n 's:/Dropnot$::p'
Если вы используете RedHat, возможно, у вас установлен mlocate, а не Secure Locate. В этом случае нет опции -e, и вы должны использовать -r или --regexp для поиска с использованием основных регулярных выражений.
Slackware по умолчанию использует slocate
, который имеет поиск по регулярному выражению с опцией r
:
locate -r '/Dropnot$'
будет искать каталоги с именем Dropnot
.
Это приведет к поиску, например,. только для пронумерованных-Dropnot
каталогов (Dropnot1, Dropnot2 и т. д. ) :
locate -r '/Dropnot[[:digit:]]\+$'
-e
опцияonly print entries for currently existing files
? – phuclv 27.12.2016, 12:22