Arka plana komutlar / işlemler nasıl gönderilir

Çoğu zaman bir terminalde çalıştığımızda bir komutu yürütmek isteriz, ancak daha sonra terminali kapatabilmek ve yürüttüğümüz şeyin KAPANMADIĞINI, örneğin terminalde bir komut dosyası çalıştırıp terminali kapatın, ancak script çalışmaya devam ediyor ... bunu nasıl başarabilirim?

Bunu başarmak için satırın sonuna bir & koymalıyız, örneğin, wifi-log.sh adında bir betiğimiz var ve onu çalıştırıp arka planda tutmak için:

./wifi-log.sh &

Burada bir ekran görüntüsüne bakın:

arka planda komut

Burada, yukarıdaki satırı uyguladıktan sonra, [1] dışında hiçbir şeyin görünmediğini açıkça görüyoruz, ancak [29675] XNUMX Bu ne anlama geliyor?

29675, yürüttüğümüz betiğin PID'sidir (işlem numarası), yani betiği öldürmek ve yürütmeyi durdurmak istiyorsak, basitçe şunu koyarız:

29675'i öldür

Ve voila, koşmayı bıraktı.

Yani ve Özetle, arka plana (veya arka plana) bir işlem (komut, birkaç komut veya komut dosyası) göndermek için satırın sonuna & koymalı ve ardından Keşfet

Bu yeni bir şey değil, ondan uzak ama… Açık olmak her zaman iyidir, ayrıca bu yazı kısa bir süre sonra yayınlayacağım bir başkası için bana hizmet edecek.


18 yorum, sizinkini bırakın

Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.

  1.   Percaff_TI99 dijo

    Bahşiş için teşekkürler, çok kullanışlı olan küçük detaylar.

    Konu dışı: Herkese iyi tatiller.

    1.    KZKG ^ Gaara dijo

      Ayrıca teşekkürler

  2.   Bilgisayar Koruyucu dijo

    Komutlar hakkında konuşmaktan zarar gelmez fg y bg; özellikle ikincisi, işlemleri ön plana ve / veya arka plana göndermek için.

    Komutlardan sonra & eklemeyi unutursak çok kullanışlıdır 😉

    Selamlar compi

  3.   Atheyus dijo

    Ayrıca, konuyu biraz daha genişletmek için bekle hakkında konuşmalısınız, bazı durumlarda $$ PID ve $ PID ile kullanılır veya örneğin bir işlemin kabuğunu değiştirmek için reddedilir:

    sudo apt-get update &
    [1] 3983

    disown 3983

    Başka bir kabukta

    sudo reptyr 3983

    Selamlar 😀

    1.    KZKG ^ Gaara dijo

      Bilgi için teşekkürler 🙂

  4.   öfori dijo

    Çok faydalı teşekkürler, ekranın pencereleri taklit ettiğini biliyordum ve uzun zaman önce rtorrent ile kullanmak zorunda kaldım. Birisinin ilgilenmesi durumunda o sırada kullandığınız öğreticiyi ekliyorum.
    http://tuxpepino.wordpress.com/2007/05/24/%C2%BFconocias-screen/

    Selamlar.

  5.   Anibal dijo

    SCREEN komutunu kullanmak da çok uygundur, ancak zaten daha gelişmiş bir şeydir.

  6.   Hugo dijo

    Ekranı çok ileri düzey olanlar için deneyin byobu, genelde kullandığım şey ve çok rahat olmasının yanı sıra durum çubuğunda faydalı bilgiler sunuyor.
    PD. Mis disculpas por escribir desde Linux (vagancia de no reiniciar despues de jugar GRID2)

    1.    Hugo dijo

      Üzgünüm, "yazmamak için" demek istedim

      1.    f3niX dijo

        İstediğin yerden yazabilirsin dostum, burada saygı duyulan.

        1.    eliotime3000 dijo

          Herhangi Kalem kayması Genellikle Disqus gibi olmadığı için affet.

  7.   dcoy dijo

    Ö Her zaman yaptım → nohup süreci &

  8.   dhunter dijo

    Ya zaten çalışan bir işleminiz varsa ve onu arka plana taşımaya karar verirseniz?

    Eh, Ctrl + z ve durur, işlerde hangi sayıya sahip olduğunu görebilirsiniz ve bg ile arka planda çalıştırmak için koyarsınız.

    $mc
    $ ctrl + z
    $ işler
    [1] + Durduruldu / usr / bin / mc -P "$ MC_PWD_FILE" "$ @"
    bg 1

    1.    Percaff_TI99 dijo

      Archlinux'u güncelliyorum ve onu 2 düzlemine (pacman -Syu) değiştirdim, ctrl + z ile size zaten sahip olduğu numarayı söylüyor, şimdi ön plana dönmesini istersem, hangi sipariş kullanılır? Veya sizde var Süreci sonlandırmak ve yeniden çalıştırmak için.

      1.    Matias dijo

        "fg" komutu ile 🙂

        eski için
        pacman -Syu
        ctrl-z # onu durdurur
        bg # arka planda çalıştırmaya gönder
        fg # onu öne getirir 🙂

  9.   msx dijo

    Arka planda çalışan işlemlere dönmek için fg veya%:
    $ sg
    $% 2
    $fg3

  10.   gevşeklikten dijo

    Merhaba nasılsın?
    Tar'ı arka planda çalıştırmayı test ediyorum ve ilk önce onu çalıştırıyor.
    Tar cvf backup.tar / var & komut satırlarını kullanarak.
    Bana biraz yardım edebilirsen. Ben zaten senaryo ile pipo yapmaya çalıştım ve n anladım.