rc (coajă)
Rc limbaj de programare | |
---|---|
Autor | Tom Duff |
Data de origine | 1989 |
Paradigme | programare imperativă și programare procedurală |
Influențată de | Bourne shell |
Implementare referință | |
Sistem de operare | Multiplatform |
Site-ul web | doc.cat-v.org/plan_9/4th_edition/papers/rc |
rc (scurt pentru comenzi de rulare ) este interpretul de comenzi pentru sistemele de operare Unix Versiunea 10 și Plan 9 de la Bell Labs . Arată ca shell-ul Bourne , dar sintaxa este puțin mai simplă.
A fost creat de Tom Duff , cel mai bine cunoscut pentru construcția neobișnuită de limbaj de programare C numită dispozitivul lui Duff .
Caracteristici
Rc foloseste C- ca structurile de control în loc de ALGOL- cum ar fi, cum ar fi cele folosite de original Bourne shell , cu excepția utilizării unei dacă nu în loc de construct altfel și având o pentru Bourne-ca bucla pentru a itera prin liste.
Pe rc toate variabilele sunt liste de șiruri, ceea ce elimină necesitatea unor construcții precum "$ @" .
Versiuni
Un port Unix al rc-ului original face parte din Planul 9 din Spațiul utilizatorului . Există, de asemenea, o rescriere a rc pentru sistemele de operare de tip Unix, realizată de Byron Rakitzi, care a necesitat însă modificări care îl fac incompatibil.
Exemple
De exemplu, scriptul shell Bourne
dacă test $ 1 = salut ; atunci
ecou salut, lume
altceva
găzduiește 2 dolari în
1 ) ecou $ # 'hei' "jude's" $ 3 ;;
2 ) ecou ` data` : $ * :: " $ @ " : ;;
* ) ecou de ce nu 1 > & 2
hexac
pentru i in abc ; do
ecou $ i
Terminat
fi
în rc se exprimă cu
if (~ $ 1 salut)
ecou salut, lume
dacă nu {
comutați (2 USD) {
case 1
ecou $ # * 'hei' 'jude''s' ^ $ 3
case 2
ecou `{data}: $" * :: $ *:
case *
ecou de ce nu> [1 = 2]
}
pentru (i în abc)
ecou $ i
}
Deoarece dacă și dacă nu sunt două afirmații diferite, în cazuri particulare, acestea trebuie grupate.
Rc acceptă, de asemenea, conducte mai dinamice:
a | [2] b # conductează eroarea standard a a cu b - În shell-ul Bourne este egal cu 1> & 2 | b
a <> b # deschide b ca intrare standard și eroare de aa <{b} <{c} # devine o {ieșire standard a lui b} {ieșire standard a lui c}
Elemente conexe
linkuri externe
- Site-ul oficial , la doc.cat-v.org .
- Rc , pe packages.debian.org .
- „Rc - The 9 Plan Shell” - de Tom Duff
- Pagina de mană Plan 9 rc , la man.cat-v.org .
- Plan 9 din Spațiul utilizatorului - Include rc și alte instrumente Plan9 pentru Linux, Mac OS X și alte sisteme similare Unix.
- Rescrierea lui Byron Rakitzis pentru Unix , la libra-aries-books.co.uk . Accesat la 29 decembrie 2009 (arhivat din original la 28 mai 2009) .
- werc - Un sistem de gestionare a documentelor pentru web complet implementat în rc.