Rc
Цю статтю написано занадто професійним стилем зі специфічною термінологією, що може бути незрозумілим для більшості читачів. Ви можете допомогти вдосконалити цю статтю, зробивши її зрозумілою для неспеціалістів без втрат змісту. Можливо, сторінка обговорення містить зауваження щодо потрібних змін. (грудень 2015) |
rc | |
---|---|
![]() | |
Парадигма | Імперативне програмування, Конвеєр (Unix) |
Дата появи | 1989 |
Творці | Tom Duff |
Розробник | Bell Labs |
Система типізації | weak |
Діалекти | Byron's rc |
Під впливом від | Bourne shell |
Вплинула на | Es shell, The Inferno shell. |
Операційна система | Cross-platform, (Plan 9) |
Вебсайт | Rc - The Plan 9 Shell |
rc — інтерпретатор командного рядка для 10 версії Unix і операційної системи Plan 9 від Bell Labs. Нагадує оболонку Bourne shell, але має дещо простіший синтаксис. Створений Томом Даффом.
Приклади
Для прикладу, скрипт написаний на Bourne shell
if test "$1" = hello; then echo hello, world else case "$2" in 1) echo $# 'hey' "jude's"$3;; 2) echo `date` :$*: :"$@":;; *) echo why not 1>&2 esac for i in a b c; do echo $i done fi
і той самий скрипт на rc
if(~ $1 hello) echo hello, world if not { switch($2) { case 1 echo $#* 'hey' 'jude''s'^$3 case 2 echo `{date} :$"*: :$*: case * echo why not >[1=2] } for(i in a b c) echo $i }
Через те що if та if not це два різні оголошення, в деяких ситуаціях вони мають бути правильним чином згруповані.
Rc також підтримує гнучкіший пайпінг:
a |[2] b # pipe only standard error of a to b — in Bourne shell as a 3>&2 2>&1 >&3 | b a <>b # opens b as a's standard input and standard output a <{b} <{c} # becomes a {standard output of b} {standard output of c}
Посилання
- "Rc - The Plan 9 Shell" [Архівовано 22 квітня 2021 у Wayback Machine.] - by Tom Duff
rc(1)
– сторінка довідки man по користувацьким командам Plan 9 (англ.)- Plan 9 from User Space - Includes rc and other Plan 9 tools for Linux, Mac OS X and other Unix-like systems.
- Byron Rakitzis' rewrite for Unix
- werc [Архівовано 2 вересня 2011 у Wayback Machine.] - A web document management system implemented completely in the rc shell.
- ircrc [Архівовано 4 жовтня 2013 у Wayback Machine.] - An IRC client, using /net directly, implemented completely in one rc file.
- contrib [Архівовано 4 жовтня 2013 у Wayback Machine.] - A Plan 9 package manager made with rc.