GNU/Linux >> Linux Esercitazione >  >> Linux

Quali shell non supportano l'espansione tra parentesi del dollaro e richiedono backtick?

La moderna raccomandazione è di utilizzare:

$(...)

invece del più vecchio:

`...`

principalmente per la leggibilità e per evitare la necessità di scappare durante l'annidamento.

Quali shell non supportano il $(...) modulo e qualcuno di loro è ancora in uso oggi?

Risposta accettata:

La shell Bourne originale, csh o tcsh non supportano tutti $() e richiedono `` per la sostituzione dei comandi.

La shell Bourne non è più utilizzata come shell predefinita (/bin/sh) su molti sistemi operativi basati su UNIX. Tuttavia, queste shell sono ancora fornite dai fornitori di sistemi operativi poiché sono ancora utilizzate per ragioni storiche.

Sia AIX che HP-UX hanno /bin/sh come shell compatibile con POSIX. Bourne shell è ancora disponibile su AIX come "bsh" (ma deprecato nel 1995 con AIX 4.1) e HP-UX 11.11 "/usr/old/bin/sh" (Bourne è stato rimosso da 11.23). Non sono sicuro di quando sia stato effettuato il passaggio, ma è successo molti anni fa.


Linux
  1. Quale shell sto usando?

  2. Differenza tra shell di accesso e shell non di accesso?

  3. Differenza tra variabili Shell che vengono esportate e quelle che non sono in Bash?

  4. Stai colorando il tuo terminale e l'ambiente della shell?

  5. Espansione di una variabile shell ed effetto di glob e split su di essa?

Terminali, shell, console e righe di comando

Come installare e utilizzare ZSH Shell in Linux

Come installare e utilizzare Nu Shell su Linux

Supporto per Tmux, Term e 256 colori?

Come creare ed eseguire uno script di shell in Ubuntu 22.04

8 tipi di shell Linux