Zadania w tle i kontrola zadań
Uruchamiaj polecenia bez blokowania terminala. Naucz się obsługi zadań w tle, sterowania nimi za pomocą jobs/fg/bg oraz utrzymywania procesów po wylogowaniu dzięki nohup.
Zadania w tle i kontrola zadań to bezpłatna lekcja Linux Command Line & Bash Scripting Mastery na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Linux Command Line & Bash Scripting Mastery, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Linux Command Line & Bash Scripting Mastery zawiera 4 lekcji w sumie.
Po co używać zadań w tle
Niektóre polecenia działają długo. Zamiast blokować terminal, można przenieść je do tła i nadal pracować w tej samej powłoce.
Uruchamianie w tle
Dodaj & na końcu polecenia, aby uruchomić je w tle. Powłoka wyświetli numer zadania i PID, a następnie natychmiast ponownie wyświetli znak zachęty.
sleep 300 &
[1] 4821Wyświetlanie zadań
Polecenie jobs wyświetla zadania działające w tle oraz zatrzymane w bieżącej powłoce; każde z nich ma numer zadania w nawiasach kwadratowych.
jobs
[1]+ Running sleep 300 &Wstrzymywanie zadania
Naciśnij Ctrl+Z, aby wstrzymać polecenie działające na pierwszym planie. Zostanie ono zatrzymane (nie zakończone), a znak zachęty powróci.
^Z
[1]+ Stopped nano notes.txtWznawianie w tle
bg wznawia w tle ostatnie zatrzymane zadanie, dzięki czemu nadal działa ono podczas pracy.
bg
[1]+ nano notes.txt &Przenoszenie na pierwszy plan
fg przenosi zadanie działające w tle lub zatrzymane z powrotem na pierwszy plan. Konkretne zadanie można wskazać za pomocą fg %n.
fg %1 # bring job 1 to the foregroundOdwoływanie się do zadań
Użyj %n, aby odwołać się do zadania po numerze w poleceniach takich jak fg, bg i kill.
kill %1 # terminate job number 1Zadania a PID-y
Numery zadań to udogodnienia lokalne dla powłoki, natomiast PID-y są unikatowe w całym systemie. Używaj numerów zadań w swojej powłoce, a PID-ów z narzędziami systemowymi, takimi jak kill, z innego terminala.
Zachowanie działania po wylogowaniu za pomocą nohup
Zwykle zadania działające w tle kończą się po wylogowaniu. nohup odłącza polecenie od terminala, dzięki czemu nadal działa ono po zakończeniu pracy.
nohup ./long_task.sh > out.log 2>&1 &Odłączanie zadania od powłoki
disown usuwa działające zadanie z tabeli zadań powłoki, dzięki czemu zamknięcie powłoki nie wyśle do niego sygnału rozłączenia.
./task &
disown %1Narzędzia takie jak screen i tmux
W przypadku długotrwałych lub zdalnych sesji terminalowe multipleksery, takie jak tmux lub screen, podtrzymują całe sesje i umożliwiają ponowne dołączenie po rozłączeniu.
Szybki test
Sprawdź, czy rozumiesz ten temat.
Podsumowanie
Poznałeś(-aś) sterowanie zadaniami: uruchamianie za pomocą &, wyświetlanie za pomocą jobs, wstrzymywanie za pomocą Ctrl+Z, przenoszenie za pomocą bg/fg i %n, a także podtrzymywanie działania zadań po wylogowaniu za pomocą nohup, disown lub tmux/screen.
Często zadawane pytania
Czy lekcja „Zadania w tle i kontrola zadań” jest bezpłatna?
Tak — pełny tekst „Zadania w tle i kontrola zadań” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Linux Command Line & Bash Scripting Mastery, przejdź na CoddyKit PRO. Kurs Linux Command Line & Bash Scripting Mastery zawiera 4 lekcji w sumie.
Co nauczysz się w „Zadania w tle i kontrola zadań”?
Uruchamiaj polecenia bez blokowania terminala. Naucz się obsługi zadań w tle, sterowania nimi za pomocą jobs/fg/bg oraz utrzymywania procesów po wylogowaniu dzięki nohup. Ćwiczysz Linux Command Line & Bash Scripting Mastery z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Linux Command Line & Bash Scripting Mastery?
Nie wymagamy żadnego doświadczenia. Linux Command Line & Bash Scripting Mastery w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Zadania w tle i kontrola zadań”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Linux Command Line & Bash Scripting Mastery?
Tak. Każda lekcja Linux Command Line & Bash Scripting Mastery zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Zarządzanie procesami (ps, top, kill)
- Przekierowywanie wejścia i wyjścia (>, >>, <)
- Łączenie poleceń potokami (|)
- Zadania w tle i kontrola zadań