Puncte:1

completarea automată a filei bash este prea lentă, dar nu este cu teraterm sau chit

drapel us

Folosesc Ubuntu 18.04 și s-a blocat în 1 ~ 2 secunde când apăs butonul de filă pentru completare automată.

Am încercat să rezolv această problemă, dar nu am reușit. Mi-am schimbat chiar și computerul cu unul nou, dar are aceeași problemă.

Un lucru ciudat este că atunci când îmi conectez ubuntu cu ssh pe alt computer (folosind teraterm sau putty sau ubuntu al altui computer), problema a dispărut și funcționează bine.

Nu știu de ce.. Ar putea fi o problemă de rețea? PC-ul meu ubuntu este în spatele firewall-ului și proxy-ului, dar ubuntu-ul companiei mele de lângă mine funcționează bine.

Există ceva suspect pentru tine?

Iată ce am făcut pentru problemă

  • Schimbați computerul cu unul nou.
  • sudo updatedb
  • sudo apt install --reinstall bash-completion

Și, am urmat https://unix.stackexchange.com/a/185960 metoda de a investiga acest lucru.Dar, când apăs pe butonul tab după setați -x, este blocat pe primul loc. Vreau să spun,

$ set -x
$ ls a<tab>
# a rămas blocat ca 2~3 secunde
ieșirea lui `set -x`

# ieșire completă când apăs pe tab cu `set -x`
+ _init_completion -s
+ local exclude= flag outx errx inx OPTIND=1
+ getopts n:e:o:i:s flag -s
+ case $flag in
+ split=fals
+ exclude+==
+ getopts n:e:o:i:s flag -s
+ COMPREPLY=()
+ local 'redir=@(?([0-9])<|?([0-9&])>?(>)|>&)'
+ _get_comp_words_by_ref -n '=<>&' curv cuvintele anterioare cword
+ flag de excludere locală i OPTIND=1
+ cuvinte=()
+ cuvinte locale cur cword
+ upargs=()
+ upvars=()
+ upargs locale upvars vcur vcword vprev vwords
+ getopts c:i:n:p:w: flag -n '=<>&' curv cuvintele anterioare cword
+ case $flag in
+ exclude='=<>&'
+ getopts c:i:n:p:w: flag -n '=<>&' curv cuvintele anterioare cword
+ [[ 6 -ge 3 ]]
+ caz ${!OPTIND} în
+ vcur=cur
+ lasă „OPTIND += 1”
+ [[ 6 -ge 4 ]]
+ caz ${!OPTIND} în
+ vprev=prev
+ lasă „OPTIND += 1”
+ [[ 6 -ge 5 ]]
+ caz ${!OPTIND} în
+ vwords=cuvinte
+ lasă „OPTIND += 1”
+ [[ 6 -ge 6 ]]
+ caz ${!OPTIND} în
+ vcword=cword
+ lasă „OPTIND += 1”
+ [[ 6 -ge 7 ]]
+ __get_cword_at_cursor_by_ref '=<>&' cuvinte cword cur
+ cuvinte=()
+ cuvinte cword locale
+ __reassemble_comp_words_by_ref '=<>&' cuvinte cword
+ local exclude i j linie ref
+ [[ -n =<>& ]]
+ exclude='=<>&'
+ printf -v cword %s 1
+ [[ -n =<>& ]]
+ line='ls '
+ (( i=0, j=0 ))
+ (( i < 2 ))
+ [[ 0 -gt 0 ]]
+ ref='cuvinte[0]'
+ printf -v 'cuvinte[0]' %s ls
+ line=' '
+ [[ 0 == 1 ]]
+ (( i++, j++ ))
+ (( i < 2 ))
+ [[ 1 -gt 0 ]]
+ [[ '' == +([=<>&]) ]]
+ ref='cuvinte[1]'
+ printf -v 'cuvinte[1]' %s ''
+ line=' '
+ [[ 1 == 1 ]]
+ printf -v cword %s 1
+ (( i++, j++ ))
+ (( i < 2 ))
+ [[ 2 == 1 ]]
+ local i cur index=3 'lead=ls'
+ [[ 3 -gt 0 ]]
+ [[ -n ls ]]
+ [[ -n ls ]]
+ cur='ls '
+ (( i = 0 ))
+ (( i <= cword ))
+ [[ 3 -ge 2 ]]
+ [[ ls != \l\s ]]
+ [[ 0 -lt 1 ]]
+ local old_size=3
+ cur=' '
+ local new_size=1
+ index=1
+ (( ++i ))
+ (( i <= cword ))
+ [[ 1 -ge 0 ]]
+ [[ '' != '' ]]
+ [[ 1 -lt 1 ]]
+ (( ++i ))
+ (( i <= cword ))
+ [[ -n ]]
+ [[ ! -n '' ]]
+ cur=
+ [[ 1 -lt 0 ]]
+ cuvinte locale cword cur
+ _upvars -a2 cuvinte ls '' -v cword 1 -v cur ''
+ (( 10 ))
+ (( 10 ))
+ carcasa de 1 USD in
+ [[ -n 2 ]]
+ printf %d 2
+ [[ -n cuvinte ]]
+ unset -v cuvinte
+ eval 'words="("${@:3:2}")'
++ cuvinte=(„${@:3:2}”)
+ tura 4
+ (( 6 ))
+ carcasa de 1 USD in
+ [[ -n cword ]]
+ unset -v cword
+ eval 'cword="$3"'
++ cword=1
+ tura 3
+ (( 3 ))
+ carcasa de 1 USD in
+ [[ -n cur ]]
+ unset -v cur
+ eval 'cur="$3"'
++ cur=
+ tura 3
+ (( 0 ))
+ [[ -n cur ]]
+ upvars+=("$vcur")
+ upargs+=(-v $vcur „$cur”)
+ [[ -n cword ]]
+ upvars+=("$vcword")
+ upargs+=(-v $vcword „$cword”)
+ [[ -n prev ]]
+ [[ 1 -ge 1 ]]
+ upvars+=("$vprev")
+ upargs+=(-v $vprev „${cuvinte[cword - 1]}”)
+ [[ -n cuvinte ]]
+ upvars+=("$vcuvinte")
+ upargs+=(-a${#words[@]} $vwords „${words[@]}”)
+ (( 4 ))
+ cuvintele anterioare cur cword local
+ _upvars -v cur '' -v cword 1 -v prev ls -a2 cuvinte ls ''
+ (( 13 ))
+ (( 13 ))
+ carcasa de 1 USD in
+ [[ -n cur ]]
+ unset -v cur
+ eval 'cur="$3"'
++ cur=
+ tura 3
+ (( 10 ))
+ carcasa de 1 USD in
+ [[ -n cword ]]
+ unset -v cword
+ eval 'cword="$3"'
++ cword=1
+ tura 3
+ (( 7 ))
+ carcasa de 1 USD in
+ [[ -n prev ]]
+ unset -v prev
+ eval 'prev="$3"'
++ prev=ls
+ tura 3
+ (( 4 ))
+ carcasa de 1 USD in
+ [[ -n 2 ]]
+ printf %d 2
+ [[ -n cuvinte ]]
+ unset -v cuvinte
+ eval 'words="("${@:3:2}")'
++ cuvinte=(„${@:3:2}”)
+ tura 4
+ (( 0 ))
+ _variabile
+ [[ '' =~ ^(\$(\{[!#]?)?)([A-Za-z0-9_]*)$ ]]
+ [[ '' =~ ^(\$\{[#!]?)([A-Za-z0-9_]*)\[([^]]*)$ ]]
+ [[ '' =~ ^\$\{[#!]?[A-Za-z0-9_]*\[.*]$ ]]
+ caz $prev în
+ întoarcere 1
+ [[ '' == @(?([0-9])<|?([0-9&])>?(>)|>&)* ]]
+ [[ ls == @(?([0-9])<|?([0-9&])>?(>)|>&) ]]
+ local omit
+ (( i=1 ))
+ (( i < 2 ))
+ [[ '' == @(?([0-9])<|?([0-9&])>?(>)|>&)* ]]
+ i=2
+ (( 1 ))
+ (( i < 2 ))
+ [[ 1 -le 0 ]]
+ prev=ls
+ [[ -n false ]]
+ _split_longopt
+ [[ '' == --?*=* ]]
+ întoarcere 1
+ returnează 0
+ caz „${prev,,}” în
+ fals
+ [[ '' == -* ]]
+ [[ ls == @(rmdir|chroot) ]]
+ [[ ls == mkdir ]]
+ _filedir
+ local 'IFS=
'
+ _tilde ''
+ rezultat local=0
+ [[ '' == \~* ]]
+ returnează 0
+ local -a toks
+ local x tmp
++ compgen -d -- ''
+ x=
+ [[ '' != -d ]]
+ local citat
+ _quote_readline_by_ref '' citat
+ '[' -z '' ']'
+ printf -v a citat %s ''
+ [[ '' == *\* ]]
+ [[ '' == \$* ]]
+ local xspec=
++ compgen -f -X '' --
+ x=
+ [[ -n '' ]]
+ [[ 0 -ne 0 ]]

Iată informațiile despre computerul meu.

$ uname -a
Linux seongwoo 5.4.0-72-generic #80~18.04.1-Ubuntu SMP Luni 12 apr 23:26:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Deși folosesc oh-my-zsh, are aceleași probleme când eu exec /bin/bash.

drapel hr
Vă rugăm să includeți primele ~10 sau cam așa ceva dintre liniile de ieșire `set -x`, astfel încât să putem vedea dacă acestea sunt cel puțin normale
chae seongwoo avatar
drapel us
@steeldriver am actualizat:)
Puncte:1
drapel us

In sfarsit am gasit raspunsul!!

Pentru a rezolva această problemă, dezactivați opțiunea „Terminal bell” a terminalului.

În terminal,

Editare > Preferințe > Sunet > Sonerie terminală

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.