De multe ori când lucrăm într-un terminal vrem să executăm o comandă, dar apoi să putem închide terminalul și că ceea ce executăm NU se închide, de exemplu, executăm un script în terminal și apoi închidem terminalul, dar că scriptul continuă să se execute ... cum se realizează acest lucru?
Pentru a realiza acest lucru, trebuie pur și simplu să punem un & la sfârșitul liniei, de exemplu, avem un script numit wifi-log.sh și pentru al rula și a-l păstra în fundal ar fi:
./wifi-log.sh &
Vedeți aici o captură de ecran:
Aici vedem clar că după ce executăm linia de mai sus nu apare nimic altceva, cu excepția [1] 29675 Ce înseamnă asta?
29675 este PID (numărul procesului) al scriptului pe care îl executăm, adică, dacă vrem să ucidem scriptul și să nu-l mai executăm, pur și simplu punem:
ucide 29675
Și voila, a încetat să mai funcționeze.
Adică și În concluzie, pentru a trimite un proces (comandă, mai multe comenzi sau script) pe fundal (sau pe fundal) trebuie să punem la sfârșitul liniei și apoi să apăsăm Intrați
Acest lucru nu este ceva nou, departe de el, dar ... este întotdeauna bine să fiu clar, de asemenea, această postare mă va servi pentru încă una pe care o voi publica în curând.
Mulțumim pentru pont, mici detalii care sunt foarte utile.
Off-topic: Sărbători fericite tuturor.
Mulțumesc, de asemenea
Nu ar strica să vorbim despre comenzi fg y bg; în special din urmă, pentru a trimite procese în prim plan și / sau în fundal.
Foarte util dacă uităm să includem comenzile & după 😉
Salutări compi
De asemenea, ar trebui să vorbiți despre așteptare pentru a extinde puțin mai mult subiectul, este folosit în unele ocazii cu $$ PID și $ PID sau respingeți, de exemplu, pentru a schimba shell-ul unui proces:
sudo apt-get update &
[1] 3983
disown 3983
Într-o altă cochilie
sudo reptyr 3983
Salutări 😀
Vă mulțumim pentru informații 🙂
Foarte util mulțumesc, știam ecranul pentru a emula ferestrele și am ajuns să-l folosesc cu rtorrent cu mult timp în urmă. Am adăugat tutorialul pe care îl utilizați în acel moment în cazul în care cineva este interesat.
http://tuxpepino.wordpress.com/2007/05/24/%C2%BFconocias-screen/
Salutări.
De asemenea, este foarte convenabil să folosiți comanda SCREEN, dar este deja ceva mai avansat.
Pentru cei care sunt ecran foarte avansat, încercați byobu, este ceea ce folosesc de obicei și este foarte confortabil și în bara de stare oferă informații utile.
P.S. Scuzele mele pentru scris desde Linux (lenea de a nu reporni după ce ați jucat GRID2)
Îmi pare rău, am vrut să spun „pentru a nu scrie”
Poți scrie de unde vrei, prietene, asta este respectat aici.
Orice Alunecarea stiloului iartați, deoarece nu este de obicei ca Disqus.
Ö Întotdeauna am făcut-o → proces nohup &
Și dacă aveți deja un proces în desfășurare și decideți să îl mutați în fundal?
Ei bine, Ctrl + z și rămâne oprit, cu joburi poți vedea ce număr are și cu bg îl pui să ruleze în backbround.
$mc
$ ctrl + z
$ locuri de munca
[1] + Oprit / usr / bin / mc -P "$ MC_PWD_FILE" "$ @"
bg 1
Actualizez Archlinux și l-am schimbat în plan 2 (pacman -Syu), cu ctrl + z îți spune deja numărul pe care îl are, acum dacă vreau să revină în prim plan, ce ordine se folosește? pentru a ucide procesul și a-l rula din nou.
cu comanda `fg` 🙂
de ex
pacman -Syu
ctrl-z # îl oprește
bg # îl trimite la fundalul care rulează
fg # îl readuce în față 🙂
fg sau% pentru a reveni la procesele care rulează în fundal:
$fg
$% 2
$fg 3
Iubitorii terminalului și care rulează în fundal vor găsi probabil următoarele articole utile:
https://blog.desdelinux.net/asignar-prioridad-a-comandos-ejecutados-desde-el-terminal/
https://blog.desdelinux.net/como-recibir-notificaciones-al-finalizar-la-ejecucion-de-un-comando-en-un-terminal/
https://blog.desdelinux.net/como-cerrar-un-terminal-sin-que-se-cierre-el-programa-ejecutado-desde-el-mismo/
Îmbrăţişare! Paul
Salut, ce faci?
Testez rularea gudronului în fundal și sfârșește să ruleze mai întâi.
Folosind liniile de comandă tar cvf backup.tar / var &.
Dacă ai putea să-mi dai un ajutor. Am încercat deja să-l fac pipă, cu script și n-o primesc.