Как диагностировать медленное заполнение вкладки?

Существует определенный пользователь, который, когда они нажимают клавишу вкладки, чтобы завершить путь к файлу, занимает несколько секунд, чтобы машина выполнила завершение. Они используют оболочку bash.

Как я могу диагностировать, что именно вызывает завершение вкладок для этого пользователя?

  • Выход из программы завершения tcsh по программе
  • Отключить выполнение вкладки в Bash для какой-либо директории, содержащей большое количество файлов?
  • Настройте автозаполнение для первого аргумента, оставьте остальных в покое
  • Можно ли вручную вызвать функцию завершения zsh?
  • zsh - полностью расширяет двоичный путь на вкладке <tab>
  • Могу ли я изменить способ отображения файла?
  • Использовать все хосты, завершенные zsh для cssh
  • Автозаполнение имени файла в командной строке bash
  • One Solution collect form web for “Как диагностировать медленное заполнение вкладки?”

    В bash запустите echo $$ чтобы увидеть идентификатор процесса оболочки, затем приготовьтесь нажать Tab в bash. Откройте другой терминал и запустите strace -p1234 где 1234 – это идентификатор процесса bash. strace будет печатать следы системных вызовов, которые выполняет bash. Даже если вы не понимаете точно, что происходит, этого достаточно часто, чтобы понять, что занимает время – обычно это делает сетевой запрос, или он обращается к очень большому количеству файлов. Выяснение того, какие настройки для изменения, чтобы избежать медленности, может быть или не быть легким.

    В зависимости от настроек безопасности вашей системы вам не разрешается запускать strace в несвязанный процесс. Если вы этого не сделаете, запустите strace в качестве родителя bash:

     strace -tt -T -o bash.trace bash 

    Сделайте попытку завершения, затем выйдите из bash и посмотрите файл трассировки bash.trace . Каждая строка имеет отметку времени в начале, указывающую, когда начался системный вызов, а число в угловых скобках в конце строки – это время, затраченное на системный вызов.

    strace – это команда Linux. Если вы не используете Linux, найдите соответствующую команду в своей системе – dtrace , dtrace , trace , …

    Interesting Posts

    Как автоматически снимать конечные пробелы при сохранении в Vi и Vim?

    Почему, когда я нажимаю blok num, мой linux записывает на диск?

    Как запустить cgminer при загрузке?

    Разрешить пользователю запускать команду с аргументами (которая содержит пробелы)

    С crtl-p я могу открыть файл за пределами текущего дерева?

    Просмотреть удаленное значение $ PATH внутри сценария оболочки

    iptables – masqueraded NAT задерживает первый прыжок в traceroute

    OverlayFS не работает с непривилегированным пространством имен пользователей

    grep – почему скобки в шаблоне grep удаляют процесс grep из результатов ps?

    Каталог mv и содержимое в новый каталог

    сеть: хост назначения недоступен

    Диск появляется ОК, будет читать / записывать в LiveCD, не загружаться, останавливается при initramfs / busybox

    Использование протокола отчетов о прохождении через эфир «sendto: Network down»

    Как работает механизм set-user-ID в Unix?

    Система управления документами для Linux

    Linux и Unix - лучшая ОС в мире.