-1 do wszystkich aktualnych odpowiedzi. Wszystkie odmiany „po prostu zabij terminal i zacznij od nowa”. Jaki jest podstawowy problem? Dlaczego nie mogę mieć 100 terminali?
RJFalconer,
32
Miałem ten problem przez tak długi czas i nigdy nie byłem w stanie dotrzeć do sedna. Wygląda na to, że aplikacje są pozostawione otwarte, co może spowodować, że niektóre uchwyty pozostaną otwarte, ale w moim przypadku procesy bash były zamykane i nie ma w pobliżu żadnych procesów ssh (używam mosh). Właśnie udało mi się odtworzyć problem, uruchamiając vscode za pomocą, vscode .a następnie zamykając terminal używany do jego otwierania. Podczas gdy okno vscode pozostaje otwarte, wygląda na to, że Cygwin nie chce otwierać więcej terminali, jak tylko je zamknę, działa.
Elven Spellmaker
25
@ElvenSpellmaker masz rację, dotyczy to również code .mojego przypadku.
Bilal Khoukhi,
15
Dla potwierdzenia: problem napotkany dzisiaj, był również spowodowany code .w moim przypadku. Zamknięcie VS Code rozwiązało problem. Świetne znalezisko @ElvenSpellmaker
kb.
Odpowiedzi:
88
Znalazłem podobny problem i rozwiązanie w grupach google
Otworzyłem wiersz polecenia systemu Windows i uruchomiłem polecenie
$ tasklist
Wygląda na to, że połączenia ssh, które utworzyłem w moich powłokach git bash, nie były zamykane, gdy te okna były zamknięte i zawieszały dostępne okna powłoki git bash.
Może to być niebezpieczne rozwiązanie, ale z wiersza poleceń systemu Windows uruchomiłem
$ taskkill /F /IM ssh.exe
Wygląda na to, że po tym wszystko znów działa. Może nie była to bezpośrednio kwestia procesów osieroconych, ale przynajmniej w moim przypadku to zadziałało.
Dodatkowa uwaga: możesz także zabić inne procesy, na przykład:
Ta procedura zadziałała, chociaż w moim przypadku winowajcami były node.exe(Node.js) i link.exe(GNU link). Być może będziesz musiał przeszukać listę zadań w poszukiwaniu winnych procesów. Nie jestem pewien dlaczego, ale wydaje się, że programy uruchamiane z sesji Bash mogą w jakiś sposób przeżyć swoją powłokę nadrzędną.
mamacdon
2
Dziękuję Scott, ta procedura zadziałała, jak wspomniał @mamacdon, nawet w moim przypadku winowajcą był node.exe.
S52
22
W moim przypadku musiałem wykonać polecenie „taskkill / F / IM ssh-agent.exe”, ale wystarczająco blisko, aby uzyskać pozytywny wynik.
Dylan Kapp
13
Musiałem zabić node.exe za pomocą poleceniataskkill /F /IM node.exe
Tarator
1
W moim przypadku (z Cygwin) był to pojedynczy plik adb.exe, który nadal działał. Zabijanie to rozwiązane.
Diego Andrade
62
Widzę problem w systemie Windows w git bash, gdy zabijam konsolę git bash bez użycia wyjścia. Znalazłem zabijanie zadania ssh-agent.exe z menedżera zadań systemu Windows, aby naprawić problem.
To działało początkowo. Teraz nadal to rozumiem, nawet po zabiciu ssh-agent.exe.
Leo
1
to jest rozwiązanie krótkoterminowe. problem w końcu powraca. mając nadzieję, że istnieje trwalszy sposób rozwiązania tego problemu
Sonic Soul
1
Odkryłem również, że Node czasami również działa, zabijając, co wydawało się rozwiązać problem za mnie.
MusicDev
po zabiciu procesu „sh.exe” problem został rozwiązany. Dziękuje wszystkim.
maris
59
W moim przypadku było to związane z wykorzystaniem kodu VS. Wcześniej otworzyłem kod VS za pomocą terminala git bash i wykonałem
code .
następnie zamknięcie terminala.
Problem można rozwiązać, zamykając wszystkie otwarte okna kodu VS.
Jeśli masz jakikolwiek edytor lub skonfigurowane IDE, aby otworzyć terminal jako git bash, wtedy gdy IDE / IDE jest uruchomione, git bash uruchomi bash z "C: \ Windows \ System32 \ bash.exe" i każda inna próba open bash z osobnego okna może się zawiesić.
Najlepszym rozwiązaniem jest zabicie IDE / Editor bash i otwarcie go z nowego okna lub kontynuowanie za pomocą polecenia IDE / Editor.
A jeśli to nie zadziała, zainstaluj ponownie komputer lub kup nowy.
john16384
6
Dla mnie (lub ktokolwiek z systemem kątomierz, które mogą rozpędzać się samodzielnym selen / serwer WebDriver), musiałem taskkillna webdriver konkretnej który był uruchomiony w moich testów.
Więc tylko inny argument: lub twoja wersja chromedriver może się różnić
taskkill /f /im chromedriver_2.34.exe
Uwaga: Twój sterownik może się różnić:
IEDriverServer*.*.*.exevschromedriver_*.**exe
Wersja twojego sterownika może się różnić: chromedriver_2.34.exevschromedriver_2.33.exe
Ten problem pogorszył się po zamknięciu kątomierza bez zamykania przeglądarki automatycznej / testowej (z powodu osobnego problemu, którego jeszcze nie rozumiem). Oczywiście wiele chromedriverzadań pozostaje uruchomionych, dlatego je zabij.
Tak, to był mój problem. Mam wygodny skrypt, który używa Selenium do pobierania niektórych rzeczy z niektórych stron internetowych, gdzie curl i wget nie mogą być używane z powodu konieczności przetwarzania JavaScript. W każdym razie, zwykle uruchamiam to raz rano i czasami się rozłącza. Nigdy nie dokonałem korelacji z tym błędem cygwin, dopóki nie zobaczyłem tego postu, więc DZIĘKUJĘ! Mam zamiar zaktualizować skrypt, który wywołuje selen w celu zabicia procesu chromedriver.exe przed zamknięciem.
beaudet
6
Otwórz menedżera zadań i zabij proces z nazwą bash, to zadziałało.
Dzieje się tak, gdy wyjdziesz z git bash bez kończenia istniejącego procesu. Po prostu spróbuj zabić te procesy, które zacząłeś od git bash. Uruchomiłem proces węzłowy wewnątrz git bash, więc zabiłem wszystkie kroki procesów węzła do zabicia
nie znaleziono procesu bash.exe. To coś więcej niż jakiś bezpański exe, który kręci się w pobliżu.
Larry_C
3
Wydaje się, że rzeczywiście jest to problem z procesami uruchamianymi z git bash, jak zasugerował @mamacdon w swoim komentarzu do najlepszej odpowiedzi autorstwa @Scott Newson.
U mnie problem pojawił się, gdy uruchomiłem vscode z basha za pomocą codei jeśli ta instancja vscode uruchomiła zintegrowany terminal git, gdy oryginalny bash wciąż działał.
Nie ma znaczenia, czy ten terminal został uruchomiony na początku, czy później, o ile był jeszcze uruchomiony pierwotny bash.
Nie wydarzyło się, gdy bash został zamknięty przed otwarciem zintegrowanego terminala. Nie rozróżniłem między exiti zamykaniem bash przez okna. Nie wydarzyło się, gdy inne starsze okno bash nadal działało.
Aby sobie z tym poradzić, zamknąłem terminale w vscode za pomocą exitlub „Kill Terminal” (uważaj, aby nie pomylić tego z „close pane”) lub oczywiście zamknięcie samego vscode.
Jeśli pojawi się ten błąd, spróbuj zapamiętać, co uruchomiłeś z basha i zabij go. Jeśli inne odpowiedzi zadziałały dla ciebie, prawdopodobnie chodzi o to, że są to rzeczy uruchomione przez twój bash lub uruchomione przez procesy, które uruchomiłeś z basha i w jakiś sposób otrzymały dziecko twojego oryginalnego basha.
Jeśli korzystasz z Visual Studio Code i nie możesz znaleźć ssh-agent.exe lub nie możesz go wykonać, a po otwarciu Git Bash pojawia się ten błąd, po prostu przejdź do swojego VSCode otwórz Terminal> Nowy terminal i po prostu naciśnij ikonę kosza (Zabij terminal). np. (1: bash) jeśli masz wiele, po prostu zabij je wszystkie i powinieneś być dobry.
W nowszej wersji git dla systemu Windows procesem do zabicia w menedżerze zadań był „GitExtensions.exe”. Zabiłem to i terminale uruchomiły się ponownie bez żadnych problemów.
Nie wiem, dlaczego jest to dyskutowane, zadziałało dla mnie. Ponadto kod Visual Studio może generować terminale, więc nie jest zaskakujące, że może to wpłynąć na ten problem.
3) Jeśli wystąpił błąd: Nie znaleziono procesu „ssh-agent.exe”. następnie:
rodzaj:
tasklist
4) Znajdź i zabij każdy proces słowami takimi jak „bash” lub „git” (może to być niebezpieczne rozwiązanie, ale gdy już znajdziesz nazwę procesu, następnym razem się zorientujesz).
mosh
). Właśnie udało mi się odtworzyć problem, uruchamiając vscode za pomocą,vscode .
a następnie zamykając terminal używany do jego otwierania. Podczas gdy okno vscode pozostaje otwarte, wygląda na to, że Cygwin nie chce otwierać więcej terminali, jak tylko je zamknę, działa.code .
mojego przypadku.code .
w moim przypadku. Zamknięcie VS Code rozwiązało problem. Świetne znalezisko @ElvenSpellmakerOdpowiedzi:
Znalazłem podobny problem i rozwiązanie w grupach google
Dodatkowa uwaga: możesz także zabić inne procesy, na przykład:
źródło
node.exe
(Node.js) ilink.exe
(GNU link). Być może będziesz musiał przeszukać listę zadań w poszukiwaniu winnych procesów. Nie jestem pewien dlaczego, ale wydaje się, że programy uruchamiane z sesji Bash mogą w jakiś sposób przeżyć swoją powłokę nadrzędną.taskkill /F /IM node.exe
Widzę problem w systemie Windows w git bash, gdy zabijam konsolę git bash bez użycia wyjścia. Znalazłem zabijanie zadania ssh-agent.exe z menedżera zadań systemu Windows, aby naprawić problem.
źródło
W moim przypadku było to związane z wykorzystaniem kodu VS. Wcześniej otworzyłem kod VS za pomocą terminala git bash i wykonałem
następnie zamknięcie terminala.
Problem można rozwiązać, zamykając wszystkie otwarte okna kodu VS.
Jeśli masz jakikolwiek edytor lub skonfigurowane IDE, aby otworzyć terminal jako git bash, wtedy gdy IDE / IDE jest uruchomione, git bash uruchomi bash z "C: \ Windows \ System32 \ bash.exe" i każda inna próba open bash z osobnego okna może się zawiesić.
Najlepszym rozwiązaniem jest zabicie IDE / Editor bash i otwarcie go z nowego okna lub kontynuowanie za pomocą polecenia IDE / Editor.
źródło
Rozwiązuję to za pomocą obejścia:
Teraz powinno być dobrze.
źródło
Dla ułatwienia życia (ten problem zdarza się dość często) utwórz plik o nazwie
fixbash.bat
w katalogu domowym i wklej to:taskkill /F /IM ssh-agent.exe
Gdy wystąpi problem, po prostu otwórz
cmd
i wpisz,fixbash.bat
aby rozwiązać problem.Lub
Po prostu wklej polecenie taskkill do swojego,
cmd
jeśli nie chcesz tworzyć skryptu.źródło
ERROR: The process "ssh-agent.exe" not found.
Uruchom ponownie komputer.
(Inne odpowiedzi nie pomogły. (Nie próbowałem ponownej instalacji. Ponowne uruchomienie jest prawdopodobnie szybsze).)
źródło
Dla mnie (lub ktokolwiek z systemem kątomierz, które mogą rozpędzać się samodzielnym selen / serwer WebDriver), musiałem
taskkill
na webdriver konkretnej który był uruchomiony w moich testów.Więc tylko inny argument: lub twoja wersja chromedriver może się różnić
Uwaga: Twój sterownik może się różnić:
IEDriverServer*.*.*.exe
vschromedriver_*.**exe
Wersja twojego sterownika może się różnić:
chromedriver_2.34.exe
vschromedriver_2.33.exe
Ten problem pogorszył się po zamknięciu kątomierza bez zamykania przeglądarki automatycznej / testowej (z powodu osobnego problemu, którego jeszcze nie rozumiem). Oczywiście wiele
chromedriver
zadań pozostaje uruchomionych, dlatego je zabij.źródło
Otwórz menedżera zadań i zabij proces z nazwą bash, to zadziałało.
źródło
Dzieje się tak, gdy wyjdziesz z git bash bez kończenia istniejącego procesu. Po prostu spróbuj zabić te procesy, które zacząłeś od git bash. Uruchomiłem proces węzłowy wewnątrz git bash, więc zabiłem wszystkie kroki procesów węzła do zabicia
źródło
adb shell
. Więc uruchomiłemadb kill-server
już otwarte okno i naprawiłem to dla mnie. +1w końcu zorientowałem się, co jest tego przyczyną.
jeśli używamy takiego kodu (jawnie lub niejawnie) np. w
.bashrc
plikurodzi nowy proces.
jeśli go nie wyjdziesz i po prostu zamkniesz okno, ten proces nadal działa. więc każdy nowy bash po prostu dodaje nowe, bez usuwania starych.
kiedy skończysz z oknem bash, po prostu naciśnij
ctrl+d
lub wpisz,exit
aby zabić proces agenta, i nie powinieneś zabraknąć forków.źródło
W moim przypadku muszę zabić Git bash w systemie Windows. Więc otworzył wiersz polecenia i uruchomił poniższe polecenie
Wyświetli listę wszystkich uruchomionych zadań, a następnie będzie musiał zabić zadanie bash.exe za pomocą poniższego polecenia
źródło
Wydaje się, że rzeczywiście jest to problem z procesami uruchamianymi z git bash, jak zasugerował @mamacdon w swoim komentarzu do najlepszej odpowiedzi autorstwa @Scott Newson.
U mnie problem pojawił się, gdy uruchomiłem vscode z basha za pomocą
code
i jeśli ta instancja vscode uruchomiła zintegrowany terminal git, gdy oryginalny bash wciąż działał.Nie ma znaczenia, czy ten terminal został uruchomiony na początku, czy później, o ile był jeszcze uruchomiony pierwotny bash.
Nie wydarzyło się, gdy bash został zamknięty przed otwarciem zintegrowanego terminala. Nie rozróżniłem między
exit
i zamykaniem bash przez okna. Nie wydarzyło się, gdy inne starsze okno bash nadal działało.Aby sobie z tym poradzić, zamknąłem terminale w vscode za pomocą
exit
lub „Kill Terminal” (uważaj, aby nie pomylić tego z „close pane”) lub oczywiście zamknięcie samego vscode.Jeśli pojawi się ten błąd, spróbuj zapamiętać, co uruchomiłeś z basha i zabij go. Jeśli inne odpowiedzi zadziałały dla ciebie, prawdopodobnie chodzi o to, że są to rzeczy uruchomione przez twój bash lub uruchomione przez procesy, które uruchomiłeś z basha i w jakiś sposób otrzymały dziecko twojego oryginalnego basha.
źródło
Jeśli korzystasz z Visual Studio Code i nie możesz znaleźć ssh-agent.exe lub nie możesz go wykonać, a po otwarciu Git Bash pojawia się ten błąd, po prostu przejdź do swojego VSCode otwórz Terminal> Nowy terminal i po prostu naciśnij ikonę kosza (Zabij terminal). np. (1: bash) jeśli masz wiele, po prostu zabij je wszystkie i powinieneś być dobry.
źródło
Otwórz swojego menedżera zadań, wyszukaj procesy „sh” i zabij je. Powodzenia
źródło
W moim przypadku rozwiązaniem było zamknięcie programu Visual Studio Code - tam, gdzie miałem też uruchomioną konsolę, nie zauważając -
Po zamknięciu wszystko wróć do normy. Mam nadzieję, że to komuś pomoże.
źródło
Próbowałem zabić wszystkie terminale git w menedżerze zadań, rozwiązując problem. U mnie to też działa. powodzenia.
źródło
W nowszej wersji git dla systemu Windows procesem do zabicia w menedżerze zadań był „GitExtensions.exe”. Zabiłem to i terminale uruchomiły się ponownie bez żadnych problemów.
źródło
Znajdź proces ssh-agent w oknie Menedżera zadań. Po zatrzymaniu lub zabiciu procesu ssh-agent błąd zniknie.
źródło
W moim przypadku działał kod Visual Studio i zamknięcie go rozwiązało problem.
źródło
Ponownie zainstalowany git, teraz działa dobrze.
źródło
Odkryłem, że zabicie terminalu msys2 w menedżerze zadań rozwiązuje problem
źródło
Otwórz Menedżera zadań, znajdź proces bash.exe i zakończ go. Pomogło w moim przypadku.
źródło
Windows 10 to zadziałało dla mnie:
1) otwórz cmd jako administrator
2) rodzaj:
3) Jeśli wystąpił błąd: Nie znaleziono procesu „ssh-agent.exe”. następnie:
rodzaj:
4) Znajdź i zabij każdy proces słowami takimi jak „bash” lub „git” (może to być niebezpieczne rozwiązanie, ale gdy już znajdziesz nazwę procesu, następnym razem się zorientujesz).
źródło
W systemie Windows w menedżerze zadań zabij sh.exe.
źródło
W moim przypadku miałem zbłąkany plik abd.exe, który nadal był otwarty w menedżerze zadań. Zabicie go rozwiązało problem.
źródło
W moim przypadku musiałem zabić sh.exe
taskkill /F /IM sh.exe
źródło
W systemie typu bash:
ps
Zabij każdy źle wyglądający proces:
kill -9 <ID>
Pracował dla mnie.
źródło
Po prostu uruchom ponownie komputer, podczas ponownego uruchamiania naszego komputera problem został rozwiązany, spróbuj.
źródło