GNU/Linux >> Znalost Linux >  >> Linux

Které shelly nepodporují expanzi dolarových závorek a poptávkové backticks?

Moderní doporučení zní:

$(...)

místo staršího:

`...`

hlavně kvůli čitelnosti a vyhnutí se nutnosti útěku při vnořování.

Které shelly nepodporují $(...) a používají se některé z nich dodnes?

Přijatá odpověď:

Původní Bourne shell, csh nebo tcsh nepodporují $() a vyžadují `` pro substituci příkazů.

Bourne shell se již nepoužívá jako výchozí shell (/bin/sh) v mnoha operačních systémech založených na UNIXu. Tyto shelly však stále dodávají prodejci OS, protože se stále používají z historických důvodů.

AIX i HP-UX mají /bin/sh jako shell kompatibilní s POSIX. Bourne shell je stále dostupný na AIX jako ‚bsh‘ (ale zastaralý v roce 1995 s AIX 4.1) a HP-UX 11.11 ‚/usr/old/bin/sh‘ (Bourne byl odstraněn z 11.23). Nejsem si jistý, kdy k přechodu došlo, ale bylo to před mnoha lety.


Linux
  1. Zbarvení vašeho terminálu a prostředí Shell?

  2. Expanze proměnné Shell a účinek globusu a rozdělení na něj?

  3. Rozdíl mezi potrubím a rozšířením příkazů?

  1. Který shell používám?

  2. Který Shell bych se měl naučit pro Freebsd a Debian?

  3. Který Shell bych měl použít – Tcsh vs Bash?

  1. Rozdíl mezi přihlašovacím prostředím a nepřihlašovacím prostředím?

  2. Rozdíl mezi proměnnými Shell, které se exportují, a těmi, které nejsou v Bash?

  3. Na jakém Shellu běžím?