İşleri durdurmadan arka plana nasıl gönderirim?


10

Ctrl + z geçerli işi arka plana gönderir, ancak durdurur.

Ve durdurulmuş bir işe nasıl devam edilir?

Yanıtlar:


17

arka planda çalıştırmak için "bg" çalıştırabilirsiniz.

"fg" bunu ön plana taşır

Bg ve fg'nin PID yerine # işi aldığını unutmayın, bu nedenle aynı anda birden fazla işiniz varsa, iş numaralarını almak için "jobs" komutunu kullanın.


8

bir programı komut satırında "&" ile arka plan işi olarak da başlatabilirsiniz.

Örneğin

programım &

Çıktının (hem stdout hem de stderr) hala geçerli tty'ye gideceğini unutmayın, bu nedenle / dev / null veya bir günlük dosyasına yeniden yönlendirmek genellikle iyi bir fikirdir:

programım> ~ / program.log 2> & 1 &

her iki örnekte de, diğerleri gibi bir arka plan işi olduğundan, yine de 'fg' ile ön plana getirebilirsiniz (ancak çıktıyı yeniden yönlendirdiyseniz çok fazla görmezsiniz).


5

Bash'ta, bir "bg" girilmesi, işin girilmesi gereken girişi engelleyene kadar arka plana koyar. Yararsız olabilecek STDERR ve STDOUT'a çıktı vermeye devam edecektir. İşi ön plana getirmek için "fg" girebilirsiniz.

[adjuster@mx02 ~]$ cp ~/crap/* ~/crap2 
(Ctrl-Z)
[1]+  Stopped                cp ~/crap ~/crap2 

[adjuster@mx02 ~]$ cp ~/crap3/* ~/crap4
(Ctrl-Z)
[2]+  Stopped                cp ~/crap3/* ~/crap

[adjuster@mx02 ~]$ jobs
[1]+  Stopped                cp ~/crap ~/crap2 
[2]+  Stopped                cp ~/crap3/* ~/crap

[adjuster@mx02 ~]$ bg 1
[1]- cp ~/crap ~/crap2 &
[1]-  Exit 1                  cp ~/crap ~/crap2 

[adjuster@mx02 ~]$ fg 2
[adjuster@mx02 ~]$ 

Bu, uzun bir kopyalama işi başlatmak ve askıya almak, ikinci bir uzun kopyalama işi başlatmak ve askıya almak, ardından ilk kopyalama işini arka plana koymak ve çalışmasını sağlamak, ardından ilk kopyalama işinden çıkmaktı. Sonra son kopyalama işini ön plana koydum ve bitmesine izin verdim.


bg 1ve fg 1benim için çalışma, ama bg %1ve fg %1yap.
Alexej Magura

4

nohup görev.sh &

Arka planda çalışır, çıkış geçerli dizindeki nohup.out öğesine gider. Oturumu kapattığınızda çalışmaya devam eder.


2

Başka bir seçenek, bir terminali açık tutmak zorunda kalmadan aynı anda birçok işlemi çalıştırmak için kullanılabilen mükemmel ekran yardımcı programıdır. Aynı zamanda bg ve fg'den çok daha kolay etkileşim sağlar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.