Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di Alcott
    Registrato dal
    Jul 2003
    Messaggi
    154

    Programmi in background

    Ciao,
    vorrei sapere come si eseguono i programmi (in C avendo l'eseguibile a.out) in background.
    Sapreste dirmi inoltre cosa fa il comando bash (mica è proprio questo il comando per eseguire in background)?
    Grazie

  2. #2
    basta lanciare il comando seguito dal carattere &.

    esempio:

    ./miofilec &

    bash è una shell, praticamente il prompt che tu vedi dove puoi digitare i comandi.

  3. #3
    Utente di HTML.it L'avatar di Alcott
    Registrato dal
    Jul 2003
    Messaggi
    154
    Grazie... pensa che io credevo che bash stava per "background shell"
    Thx

  4. #4
    Utente di HTML.it L'avatar di alvinet
    Registrato dal
    Apr 2004
    Messaggi
    651
    ehm... bash non è un comando ,ma bensì un terminale.
    Esistet anche un linguaggio che si chiama bash scripting conil quale è posibile fare un disastro di cose anche relative al sistema.

    Per eseguire i programmi in background basta farli partire on la & (mi pare)dopo il nome del programma. ES: nomeprogramma &
    con il comano jobs o job :master: vedi i programmi in background.
    Per riportarli in foreground debi dare fg ID JOB (ES: fg 1).
    Poi se premi ctrl+z sospendi il programma e lo puoi riportare in backgorund con il comando bg ID JOB

    EDIT: ops.. non avevo notato le risp...0_0
    Il mio povero neurone addormantato!!

  5. #5
    Utente di HTML.it L'avatar di Alcott
    Registrato dal
    Jul 2003
    Messaggi
    154
    Meglio l'abbondanza alla carenza

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    1,157
    E se un come sono io vi chiedesse di spiegarmi in parole semplici cosa significa eseguire un programma in background, mi prendete in giro?

  7. #7
    Originariamente inviato da Enrico81
    E se un come sono io vi chiedesse di spiegarmi in parole semplici cosa significa eseguire un programma in background, mi prendete in giro?
    In 2 parole, fare in modo che il programma liberi il terminale una volta eseguito. La shell non attende la terminazione del programma lanciato in background per presentare un nuovo prompt, lo fa subito.
    "Qualsiasi esperto ha paura di combattere usando la katana vera. Anch'io. Ma non ignoro la mia paura, riesco ad accettarla, e a metterla da parte accanto a me".

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    1,157
    Originariamente inviato da Ikitt
    In 2 parole, fare in modo che il programma liberi il terminale una volta eseguito. La shell non attende la terminazione del programma lanciato in background per presentare un nuovo prompt, lo fa subito.


    Praticamente mi restituisce il prompt subito pronto per lanciare qualche altro comando se ho capito bene.
    Ci sono delle controindicazioni rispetto ai programmi in foreground (che di conseguenza credo voglia dire lanciare un programma senza & e quindi occupando il terminale fino al suo arresto).
    Grazie per la risposta.



    ps. appena ho visto che la risposta era tua mi sono preoccupato, di solito in 3D tecnici come questo dai delle risposte che per capirle dovrei rinascere con tre cervelli (per essere intelligente in pratica)

  9. #9
    Originariamente inviato da Enrico81
    Praticamente mi restituisce il prompt subito pronto per lanciare qualche altro comando se ho capito bene.
    In due parole si.
    Ci sono delle controindicazioni rispetto ai programmi in foreground (che di conseguenza credo voglia dire lanciare un programma senza & e quindi occupando il terminale fino al suo arresto).
    Controindicazioni, beh... Dipende da come vuoi considerare certe proprieta` dei processi in background. Per esempio:
    - un processo in background continuera` a mandare output su terminale, salvo esplicita richiesta (> /dev/null o analoghi).
    Esempio tipico: yes &
    - un processo in background NON potra` (ovviamente) prendere input da terminale, dev'essere riportato in foreground ogni volta per questo o deve avere redirezione dello standard input (< /qualche/file).
    - se la shell viene chiusa il processo in background tira le cuoia

    E altro ancora che non mi viene in mente

    ps. appena ho visto che l risposta era tua mi sono preoccupato , di solito in 3D tecnici come questo dai delle risposte che per capirle dovrei rinascere con tre cervelli (per essere intelligente in pratica)
    VVoVe: Dovro` smettere di rispondere allora
    "Qualsiasi esperto ha paura di combattere usando la katana vera. Anch'io. Ma non ignoro la mia paura, riesco ad accettarla, e a metterla da parte accanto a me".

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    1,157
    Originariamente inviato da Ikitt
    In due parole si.


    Controindicazioni, beh... Dipende da come vuoi considerare certe proprieta` dei processi in background. Per esempio:
    - un processo in background continuera` a mandare output su terminale, salvo esplicita richiesta (> /dev/null o analoghi).
    Esempio tipico: yes &
    - un processo in background NON potra` (ovviamente) prendere input da terminale, dev'essere riportato in foreground ogni volta per questo o deve avere redirezione dello standard input (< /qualche/file).
    OK grazie mille

    - se la shell viene chiusa il processo in background tira le cuoia
    Ma allora è una semi-fregatura

    -E altro ancora che non mi viene in mente
    Non ce problema.

    VVoVe: Dovro` smettere di rispondere allora
    No, dai, scherzavo, fa piacere parlare con persone molto brave e preparate e chissa che un giorno dai tuoi post non riesca a capirci qualcosa in linux



Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.