GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa indicano P ed E in Exec Family of Calls?

l e v nelle chiamate exec denotano se gli argomenti sono forniti tramite list o array(vector) . L'ho letto da qualche parte che p denota il percorso dell'utente e e denota l'ambiente ma non capisci cosa significa?

Risposta accettata:

Controlla questo link di Wikipedia sulla funzione Exec e questo link su Avvio di un processo con le chiamate exec()

e – Un array di puntatori a variabili di ambiente viene passato in modo esplicito alla nuova immagine di processo.

Le versioni del suffisso "e" passano un ambiente al programma. Un ambiente
è proprio questo:una sorta di "contesto" in cui il programma
può operare. Ad esempio, potresti avere un correttore ortografico con un
dizionario di parole. Invece di specificare la posizione del dizionario
ogni volta sulla riga di comando, puoi fornirla nell'ambiente
:

l – Gli argomenti della riga di comando vengono passati individualmente (un elenco) alla funzione.

Ad esempio, se voglio invocare il comando ls con gli argomenti -t,
-r e -l (che significa "ordina l'output per ora, in ordine inverso, e mostrami la versione lunga dell'output" ), potrei anche specificarlo come
.

p – Utilizza la variabile di ambiente PATH per trovare il file denominato nell'argomento del percorso da eseguire.

Le versioni del suffisso "p" cercheranno le directory nella variabile di ambiente PATH
per trovare l'eseguibile. Probabilmente avrai notato
che tutti gli esempi hanno una posizione codificata per l'eseguibile:
/bin/ls e /usr/bin/spellcheck. E gli altri eseguibili? A meno che
tu non voglia prima scoprire il percorso esatto per quel particolare programma,
sarebbe meglio che l'utente indichi al tuo programma tutti i posti in cui
cercare gli eseguibili. La variabile di ambiente PATH standard fa
proprio questo.

v – Gli argomenti della riga di comando vengono passati alla funzione come una matrice (vettore) di puntatori.

L'elenco degli argomenti viene specificato tramite un puntatore a un vettore di argomenti.

Come accennato nell'altra risposta, anche questo collegamento su Unix System Calls è ugualmente fantastico per ulteriori letture.

Correlati:$PWD? (rispetto alla directory di lavoro corrente)?
Linux
  1. Che cos'è un Makefile e come funziona?

  2. Che cos'è un server Web e come funziona un server Web?

  3. Il punto di Uniq -u e cosa fa??

  4. Cosa significa // in un percorso?

  5. Cos'è un file .pid e cosa contiene?

Comando file Linux:cosa fa e come usarlo

Cosa significa null in Linux e nell'informatica

PDF Dividi e unisci "PDFSAM" fa esattamente quello che dice

Che cosa sono le chiamate di sistema Linux e le funzioni di libreria?

Che cosa fa "exec [e-mail protetta]"?

Cosa significa NT_STATUS_BAD_NETWORK_NAME in Samba?