Сайт о телевидении

Сайт о телевидении

» » Командный интерпретатор. Команды и командный интерпретатор

Командный интерпретатор. Команды и командный интерпретатор

1. (выберите неправильный ответ) Базовое регулярное выражение включает в себя понятие

2. (выберите неправильный ответ) Как на время приостановить слишком объёмистый вывод программы (например, "ls - r /")?

3. (выберите неправильный ответ) Как остановить запущенную без параметров программу "cat"?

4. (выберите неправильный ответ) Процесс в UNIX-системе

5. (выберите неправильный ответ) Соблюдение принципов организации процедурных систем помогает

6. (выберите неправильный ответ) Утилита ed - это

7. (выберите неправильный ответ) Чем отличается поток управления от потока данных?

8. PID (идентификатор процесса) - это

9. The X window System - это

10. UNIX - это

11. X11R6 - это

12. XFree86 - это

13. X-клиент - это

14. X-сервер - это

15. Аббревиативность команд в vi приводит к тому, что

16. Активный процесс отличается от фонового тем, что

17. Без соблюдения какого принципа невозможна полноценная проективная система?

18. Больше всего в vi

19. Большинство функций пользовательского интерфейса в Unix-системах берёт на себя

20. В shell запись в произвольный файл и чтение оттуда реализованы в виде

21. В UNIX-системах

22. В графической среде X11:

23. В графической среде X11:

24. В графической среде X11:

25. В каком случае оператор if в shell посчитает условие выполненным?

26. В каталогах rc1.d, rc2.d и т. п. находятся

27. В качестве кого выступает пользователь проективной системы?

28. В качестве кого выступает пользователь процедурной системы?

29. В команде ls a b "c d" утилита ls получит

30. В основе проективной системы лежит требование

31. В основе процедурной системы лежит требование

32. В редакторе vi три режима работы с текстом:

33. В редакторе vim сделаны усовершенствования для более удобного редактирования

34. В странице руководства обязаны присутствовать поля

35. В строке "Qbab*cdecW" регулярному выражению "(a|b).*c" соответствует подстрока

36. В строке, набираемой в ответ на "подсказку" shell первое слово - это чаще всего

37. В т. н. новой BSD-схеме начальной загрузки (FreeBSD5), использующей принцип ".d"

38. В формате ls представлено содержимое каталога. Кто, помимо суперпользователя, имеет возможность удалить файл, содержащийся в нём?

39. В формате ls представлено содержимое каталога. Кто, помимо суперпользователя, имеет возможность удалить файл, содержащийся в нём?

40. В формате ls представлено содержимое каталога. Кто, помимо суперпользователя, имеет возможность удалить файл, содержащийся в нём?

41. В функции операционной среды входит

42. В функции операционной среды входит

43. В функции операционной среды входит

44. В чём заключается "проблема управляющего ввода" в текстовых редакторах?

45. В чём причина разделения прикладной и инструментальной областей при решении задачи?

46. В чём разница между операционной системой и операционной средой?

47. В чём разница между терминами "X-терминал" и "xterm"

48. В чём смысл аппаратной поддержки контекста задачи?

49. В чём смысл различения системного и пользовательского наполнения ОС?

50. Вертикальные информационные потоки имеют дело с

51. Все страницы руководства

52. Выберите пункт, в котором упомянуты только важнейшие поля руководства

53. Выберите пункт, в котором упомянуты только важнейшие поля руководства

54. Выберите пункт, в котором упомянуты только важнейшие поля руководства

55. Выберите пункт, в котором упомянуты только основные источники информации о системе

56. Выберите пункт, в котором упомянуты только основные источники информации о системе

57. Выберите пункт, в котором упомянуты только основные источники информации о системе

58. Выберите пункт, в котором этапы решения задачи расположены в оптимальном порядке

59. Выберите пункт, подпункты которого соответствуют трём последовательным уровням досистемной загрузки

60. Выберите пункт, подпункты которого соответствуют трём последовательным уровням досистемной загрузки

61. Выберите пункт, подпункты которого соответствуют трём последовательным уровням досистемной загрузки

62. Выберите пункт, содержащий только принципы организации проективных систем

63. Выберите пункт, содержащий только принципы организации проективных систем

64. Выберите пункт, содержащий только принципы организации проективных систем

65. Выберите пункт, содержащий только принципы организации процедурных систем

66. Выберите пункт, содержащий только принципы организации процедурных систем

67. Выберите пункт, содержащий только принципы организации процедурных систем

68. Главная область применения текстового редактора в UNIX

69. Главный недостаток "линейной" схемы начальной загрузки (т. н. старая BSD-схема, FreeBSD4)

70. Гнёзда UNIX

71. Гнездовая команда в vi может состоять из

72. Действительный субъект - это

73. Действительный субъект в UNIX однозначно определяется

74. Демоны в типичной UNIX-системе

75. Диаграмма достижимости описывает

76. Диалог человека и машины в процедурной системе чаще всего строится на основе

77. Для комфортного освоения редактора vim необходимо

78. Для определения прав доступа субъекта к файлу, системе, вдобавок к атрибутам файла, необходимо знать

79. Для традиционного механизма виртуальной памяти справедливо утверждение:

80. Для управления UNIX-системой необходимо

81. Для чего нужен "t-бит" каталога?

82. Доверенный субъект

83. Документацию по UNIX-системе

84. Документация в виде info-страниц

85. Дополнительный раздел диска (extended partition) - это

87. Достраивание - это

88. Если в текущем каталоге есть по крайней мере файл с именем "a", то по команде ls a* утилита ls получит

90. Задача операционной среды:

91. Задачи в очереди UNIX-процессов

92. Закавычивание необходимо для того, чтобы

93. Знание каких областей необходимо опытному пользователю проективной системы?

94. Знание каких областей необходимо опытному пользователю процедурной системы?

95. Имеет ли смысл хранить сложные команды vi в виде комментариев к тексту?

96. Имя макрокоманды в vi - это

98. Интерфейс UNIX-системы

99. Интерфейс UNIX-системы

100. Интерфейс командной строки появился вследствие

101. Информационный поток в модели надёжности - это

102. Информационный поток в модели секретности - это

103. Как много стандартных основных разделов можно завести на диске IBM-совместимого компьютера?

104. Как много стандартных разделов можно завести на диске IBM-совместимого компьютера?

105. Как много стандартных разделов помещается в одной таблице разбиения диска (HDPT) IBM-совместимого компьютера?

107. Как остановить "зависшую" программу?

108. Какая из строк "abcdf" "abcdbcdf" "abcdef" "af" "adbdf" "acf" соответствуют РВ "a(bcd)*f"

109. Какая из строк "abcdf" "abcdbcdf" "abcdef" "af" "adbdf" "acf" соответствуют РВ "af"

110. Какая из строк соответствуют РВ "m(1.3|)+"

111. Какая из строк соответствуют РВ "n(|x-z)+"

112. Какая из строк соответствуют РВ "o|+"

113. Какая область применения не характерна для процедурных систем?

114. Какой принцип проективной системы соблюдается в vi строже всего?

115. Какой процесс связан с каждым терминалом немедленно по окончании загрузки?

116. Какой тип человеко-машинных систем требует от пользователя знания инструментальной области?

117. Какому из подходов к разработке ОС отвечает метафора "рабочего стола"?

118. Каталог /etc в типичной UNIX-системе применяется для хранения

119. Каталог /usr в типичной UNIX-системе применяется для хранения

120. Каталог /var в типичной UNIX-системе применяется для хранения

121. Контекстный адрес задаёт

122. Кто чаще всего запускает команду "chown"?

123. Легенда в процедурной системе - это

124. Лидером сеанса называется

125. Метки текста

126. Модель надёжности вводит запрет

127. Модель секретности вводит запрет

128. Модули в типичной UNIX-системе

129. Можно ли записать данные в файл, имеющий атрибуты "r--r--r--"?

130. Можно ли реализовать функцию звукового сопровождение команд?

131. Можно ли реализовать функцию перемещения по гипертекстовым ссылкам в формате HTML?

132. Можно ли реализовать функцию редактирования электронных таблиц?

133. Можно ли удалить чужой файл из своего каталога?

134. Назначение поля NAME:

135. Назначение поля SEE ALSO

136. Назначение поля SYNOPSIS:

137. Назовите инструментальную и прикладную область при решении следующей задачи: создание железнодорожного расписания

138. Назовите инструментальную и прикладную область при решении следующей задачи: создание интернет-казино

139. Назовите инструментальную и прикладную область при решении следующей задачи: проектирование корпуса инвалидной коляски

140. Настройки редактора vi можно изменить

141. Номинальный субъект - это

142. Номинальный субъект в UNIX однозначно определяется

143. Обратная задача проективной системы - это

144. Одно и то же регулярное выражение можно использовать во всех утилитах, работающих с РВ

145. Окружение - это

146. Операция "|" в shell

147. Основное направление развития проективных систем

148. Основное направление развития процедурных систем

149. Основные задачи ядра системы

150. Основные команды работы с файлами:

151. Основные функции shell

152. Особенность графических ресурсов в том, что они

153. Отсроченная передача данных возможна

154. Пакеты в типичной UNIX-системе

155. Перемещением, изменением размера и внешнего вида окон в X занимается

156. По возможностям редактор vim

157. Подстановка в shell - это

158. Поиск нужной страницы руководства происходит

159. Пользователь какого вида систем чаще выступает в роли посредника между машиной и заказчиком?

160. Понятие "терминал" может обозначать

161. Понятие "терминал" может обозначать

162. Понятие "терминал" может обозначать

163. Понятия "системная утилита" и "пользовательская утилита" в UNIX

164. Почему "login" может запустить shell "от лица" любого пользователя?

165. Правило "левый-длинный" говорит о том, что

166. Предписание в процедурной системе - это

167. Предписание в процедурной системе - это

168. При нажатии клавиши "c" в командном режиме vi произойдёт

169. При нажатии клавиши "d" в командном режиме vi произойдёт

170. При нажатии клавиши "y" в командном режиме vi произойдёт

171. При освоении проективной системы пользователю придётся

172. При редактировании командной строки и истории главное - это

173. При типичном использовании шаблона

174. Принцип гарантированных навыков требует, чтобы

175. Принцип информационной открытости требует, чтобы

176. Принцип минимизации затрат требует, чтобы

177. Принцип ограниченной осведомлённости требует, чтобы

178. Принцип перекрытия процедур требует, чтобы

179. Принцип умопостижимости контекста требует, чтобы

180. Причина частого применения регулярных выражений в UNIX

181. Проект в проективной системе - это

182. Проект в проективной системе - это набор данных, однозначно описывающий

183. Профиль (profile) командного интерпретатора - это

184. Процедура в процедурной системе - это

185. Прямое построение проекта означает

186. Псевдотерминал - это

187. Разделение времени - это

188. Разделение ресурсов - это

189. Расширенное регулярное выражение включает в себя понятие

190. Регулярное выражение состоит из

191. С точки зрения UNIX, сценарий - это

192. Сигнал - это

194. Сколько _способов_ доступа в файловой системе UNIX?

195. Сколько X-серверов может быть зарегистрировано на одном компьютере?

196. Сколько карманов у редактора vi?

197. Сложнее всего в UNIX-системе соблюсти

198. Создатели UNIX-систем рассчитывали

199. Стандартные каталоги UNIX подразделяются

200. Стартовый виртуальный диск (initrd) - это

201. Субъект-объектная модель на основе ACL

202. Субъект-объектная модель прав доступа используется для

203. Субъект-субъектная модель прав доступа используется для

204. Субъект-субъектная модель с множественным субъектом

205. Термин "стандартный ввод программы" обозначает

206. Термин "стандартный вывод ошибок программы" обозначает

207. Термин "стандартный вывод программы" обозначает

208. Термин "устройство" обозначает

209. Терминальная линия - это

210. Типичные командные интерпретаторы UNIX

211. Трёхуровневая схема позволяет

212. Укажите область применения, не характерную для проективных систем

213. Управление сеансами доступа используется для

214. Уровни выполнения - это

215. Утилита ed - это

216. Утилита ex - это

217. Утилита sed - это

218. Утилита vi - это

219. Файловая система - это

220. Фильтром в UNIX-системах называется

221. Фильтром в UNIX-системах называется

222. Фильтром в UNIX-системах называется

223. Функцию менеджера ресурсов в UNIX выполняет

224. Чего нельзя сделать в схеме загрузки FreeBSD?

225. Чем отличаются счётные и обменные задачи?

227. Число 11 в имени X11 - это

228. Что _однозначно_ определяет пользователя в UNIX?

229. Что делает команда mount?

230. Что находится в каталоге /etc/init. d в Linux-системе?

231. Что находится в каталоге /etc/rc3.d в Linux-системе?

232. Что не поддерживается в редакторе vim?

233. Что не поддерживается в редакторе vim?

234. Что не поддерживается в редакторе vim?

235. Что не характерно для командного интерпретатора?

236. Что нельзя сделать в схеме загрузки LILO?

237. Что полностью реализовано в UNIX?

238. Что такое "виртуальная память"?

239. Что такое "контекст задачи"?

240. Что такое "псевдопараллелизм"?

241. Что такое "псевдопользователь"?

242. Что такое инструментальная область человеческой деятельности?

243. Что такое прикладная область человеческой деятельности

244. Что такое человеко-машинная система?

245. Что характерно для командного интерпретатора?

246. Что характерно для командного интерпретатора?

247. Экранный редактор vi

248. Этапы процедуры трёхуровневой загрузки:

Developer Project предлагает поддержку при сдаче экзаменов учебных курсов Интернет-университета информационных технологий INTUIT (ИНТУИТ). Мы ответили на экзаменационные вопросы 380 курсов INTUIT (ИНТУИТ) , всего вопросов, ответов (некоторые вопросы курсов INTUIT имеют несколько правильных ответов). Текущий каталог ответов на экзаменационные вопросы курсов ИНТУИТ опубликован на сайте объединения Developer Project по адресу: http://www. dp5.su/

Подтверждения правильности ответов можно найти в разделе «ГАЛЕРЕЯ», верхнее меню, там опубликованы результаты сдачи экзаменов по 100 курсам (удостоверения, сертификаты и приложения с оценками).

Болеевопросов по 70 курсам и ответы на них, опубликованы на сайте http://www. dp5.su/, и доступны зарегистрированным пользователям. По остальным экзаменационным вопросам курсов ИНТУИТ мы оказываем платные услуги (см. вкладку верхнего меню «ЗАКАЗАТЬ УСЛУГУ». Условия поддержки и помощи при сдаче экзаменов по учебным программам ИНТУИТ опубликованы по адресу: http://www. dp5.su/

Примечания:

- ошибки в текстах вопросов являются оригинальными (ошибки ИНТУИТ) и не исправляются нами по следующей причине - ответы легче подбирать на вопросы со специфическими ошибками в текстах;

- часть вопросов могла не войти в настоящий перечень, т. к. они представлены в графической форме. В перечне возможны неточности формулировок вопросов, что связано с дефектами распознавания графики, а так же коррекцией со стороны разработчиков курсов.

В этом разделе описаны команды и символы, имеющие специальное значение, которые позволяют:

  • - находить с помощью шаблона и манипулировать группами файлов;
  • - запускать команду в фоновом режиме или в определенное время;
  • - выполнять последовательно группу команд;
  • - перенаправлять стандартные ввод и вывод;
  • - завершать работающие программы.

Интерпретатор SHELL является оболочкой всей операционной системой и выполняет интерфейсные функции между пользователем и ОС. Он перехватывает и интерпретирует все команды пользователя, формирует и выводит ответные сообщения.

Помимо запуска на выполнение стандартных команд UNIX и исполняемых файлов, интерпретатор включает собственный язык, который по своим возможностям приближается к высокоуровневым языкам программирования. Этот язык позволяет создавать программы (shell-файлы, скрипты), которые могут включать операторы языка и команды UNIX. Такие файлы не требуют компиляции и выполняются в режиме интерпретации, но они должны обладать правом на исполнение (устанавливается с помощью команды chmod ).

Общение пользователя с командным интерпретатором осуществляется вводом команд с клавиатуры после появления промпта (приглашения), обычно, символа "$". Введенную последовательность символов интерпретатор будет рассматривать либо как имя внутренней команды, либо как имя исполняемого файла.

Процедуре (скрипту) shell могут быть переданы аргументы при запуске. Каждому из первых девяти аргументов ставится в соответствие позиционный параметр от $1 до $9 ($0 - имя самой процедуры), и по этим именам к ним можно обращаться из текста процедуры.

Прежде, чем начать рассмотрение некоторых операторов shell, следует обратить внимание на использование в командах некоторых символов.

Ниже приведены метасимволы, используемые shell :

* ? - позволяют указывать сокращенные имена файлов при поиске по шаблону;

& - означает, что команда будет выполняться в фоновом режиме;

; - разделяет команды в командной строке;

Отменяет специальное значение символов, таких как *, ?, [, ], &, ;, <,

"..." - отменяют значение пробела как разделителя и специальное значение

всех символов;

"..." - отменяют значение пробела как разделителя и специальное значение всех символов, за исключением $ и;

> - перенаправляет вывод команды в файл;

< - перенаправляет ввод команды из файла;

>> - перенаправляет вывод команды, который должен быть добавлен в

конец существующего файла;

| - создает канал, направляющий вывод одной команды во ввод другой

`...` - используется в паре; позволяет использовать вывод команды как

аргументы в командной строке;

$ - используется с позиционными параметрами и определенными поль-

зователем переменными, также используется по умолчанию в

качестве подсказки shell .

Кроме того, для удобства работы с файлами почти все командные интерпретаторы интерпретируют символы "?" и "*", используя их как шаблоны имен файлов (т.н. метасимволы ):

  • ? - один любой символ;
  • * - произвольное количество любых символов.

Например: *.c - задает все файлы с расширением "c";

pr???.* - задает файлы, имена которых начинаются с "pr", содержат пять символов и имеют любое расширение.

Переменные языка shell

Язык shell позволяет работать с переменными (без предварительного объявления). Имена переменных начинаются с буквы и могут включать буквы и цифры. Обращение к переменным начинается со знака "$".

Пример. Переход к начальному каталогу пользователя: cd $HOME

Оператор присваивания . Присвоение значений переменным осуществляется с помощью оператора `=" без пробелов.

Из книги Журнал «Компьютерра» N 33 от 12 сентября 2006 года автора Журнал «Компьютерра»

СОФТЕРРА: Высокохудожественный командный интерпретатор Автор: Илья ШпаньковКогда разговор заходит о растровых графических редакторах, абсолютное большинство людей в первую очередь вспоминает Adobe Photoshop. Сторонники свободного софта, конечно, не забудут упомянуть и

Из книги Давайте создадим компилятор! автора Креншоу Джек

Из книги Архитектура операционной системы UNIX автора Бах Морис Дж

Из книги Linux-сервер своими руками автора Колисниченко Денис Николаевич

19.7. Интерпретатор команд bash Интерпретатор команд - это программа, выполняющая команды пользователя. Стандартным интерпретатором (или оболочкой) является bash (Bourne Again Shell). Достаточно распространенными также являются следующие интерпретаторы: sh, ash, bsh, tcsh, csh, zsh. Список

Из книги Программирование на языке Пролог для искусственного интеллекта автора Братко Иван

Из книги Бесплатные разговоры через Интернет автора Фрузоров Сергей

16.2. Простой интерпретатор программ, управляемых образцами Для описания модулей, управляемых образцами, мы применим следующую синтаксическую конструкцию:ЧастьУсловия ---> ЧастьДействияЧасть условия представляет собой список условий:[ Условие1, Условие2, Условие3, ...]где

Из книги Ubuntu 10. Краткое руководство пользователя автора Колисниченко Д. Н.

Глава 4 TeamSpeak - командный разговор через компьютерную сеть Чем TeamSpeak отличается от TeamTalk Программа TeamSpeak очень уж похожа на TeamTalk: те же каналы, та же возможность работать как в Интернете, так и в локальной сети, выбор разнообразных кодеков по сжатию звука, клиент-серверный

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Глава 22 Командный интерпретатор bash 22.1. Что нужно знать о bash bash - это наиболее часто использующаяся командная оболочка (командный интерпретатор) Linux. Основное предназначение bash - выполнение команд, введенных пользователем. Пользователь вводит команду, bash ищет программу,

Из книги Операционная система UNIX автора Робачевский Андрей М.

Командный режим Хотя isql имеет некоторые удобные интерактивные возможности, она не ограничена только этим режимом. Многие интерактивные команды доступны также в виде переключателей командной строки. Некоторые функции isql, такие как извлечение метаданных, доступны только

Из книги Linux и UNIX: программирование в shell. Руководство разработчика. автора Тейнсли Дэвид

Командный интерпретатор shell Все современные системы UNIX поставляются по крайней мере с тремя командными интерпретаторами: Bourne shell (/bin/sh), С shell (/bin/csh) и Korn shell (/bin/ksh). Существует еще несколько интерпретаторов, например Bourne-Again shell (bash), со сходными функциями.Командный

Из книги UNIX - универсальная среда программирования автора Пайк Роб

Интерпретатор bourne shell Bourne shell является стандартным интерпретатором команд, который входит в состав всех систем UNIX и совместим с интерпретатором bash в Linux. В книге, посвященной shell–программированию и не привязанной к конкретной операционной системе, в качестве общего

Из книги автора

Интерпретатор shell В первой части книги рассматриваются общие вопросы, связанные с работой в интерпретаторе shell.В главе 1 рассказывается о правах доступа к файлам и каталогам, а также о том, как создавать символические ссылки.Чтобы на поиск созданного вами файла не уходило

Из книги автора

24.1. Полный список команд, встроенных в интерпретатор shell В табл. 24.1 содержится полный перечень стандартных встроенных команд. Таблица 24.1. Стандартные встроенные команды: Нуль, всегда возвращает истинное значение. Считывание файлов из текущего интерпретатора

По умолчанию команды пакетного файла перед исполнением выводятся на экран, что выглядит не очень эстетично. С помощью команды ECHO OFF можно отключить дублирование команд, идущих после нее (сама команда ECHO OFF при этом все же дублируется). Например,

REM Следующие две команды будут дублироваться на экране … DIR C:\ ECHO OFF REM А остальные уже не будут DIR D:\

Для восстановления режима дублирования используется команда ECHO ON. Кроме этого, можно отключить дублирование любой отдельной строки в командном файле, написав в начале этой строки символ @, например:

ECHO ON REM Команда DIR C:\ дублируется на экране DIR C:\ REM А команда DIR D:\ - нет @DIR D:\

Таким образом, если поставить в самое начало файла команду

@ECHO OFF

то это решит все проблемы с дублированием команд.

В пакетном файле можно выводить на экран строки с сообщениями. Делается это с помощью команды

ECHO сообщение

Например,

@ECHO OFF ​ECHO Привет!

Команда ECHO. (точка должна следовать непосредственно за словом "ECHO") выводит на экран пустую строку.

Часто бывает удобно для просмотра сообщений, выводимых из пакетного файла, предварительно полностью очистить экран командой CLS.

Используя механизм перенаправления ввода/вывода (символы > и >>), можно направить сообщения, выводимые командой ECHO, в определенный текстовый файл. Например:

@ECHO OFF ECHO Привет! > hi.txt ECHO Пока! >> hi.txt

С помощью такого метода можно, скажем, заполнять файлы-протоколы с отчетом о произведенных действиях. Например:

@ECHO OFF REM Попытка копирования XCOPY C:\PROGRAMS D:\PROGRAMS /s REM Добавление сообщения в файл report.txt в случае REM удачного завершения копирования IF NOT ERRORLEVEL 1 ECHO Успешное копирование >> report.txt

Использование параметров командной строки

При запуске пакетных файлов в командной строке можно указывать произвольное число параметров, значения которых можно использовать внутри файла. Это позволяет, например, применять один и тот же командный файл для выполнения команд с различными параметрами.

Для доступа из командного файла к параметрам командной строки применяются символы %0, %1, …, %9 или %*. При этом вместо %0 подставляется имя выполняемого пакетного файла, вместо %1, %2, …, %9 - значения первых девяти параметров командной строки соответственно, а вместо %* - все аргументы. Если в командной строке при вызове пакетного файла задано меньше девяти параметров, то "лишние" переменные из %1 – %9 замещаются пустыми строками. Рассмотрим следующий пример. Пусть имеется командный файл copier.bat следующего содержания:

@ECHO OFF CLS ECHO Файл %0 копирует каталог %1 в %2 XCOPY %1 %2 /S

Если запустить его из командной строки с двумя параметрами, например

Copier.bat C:\Programs D:\Backup

то на экран выведется сообщение

Файл copier.bat копирует каталог C:\Programs в D:\Backup

и произойдет копирование каталога C:\Programs со всеми его подкаталогами в D:\Backup.

При необходимости можно использовать более девяти параметров командной строки. Это достигается с помощью команды SHIFT, которая изменяет значения замещаемых параметров с %0 по %9, копируя каждый параметр в предыдущий, то есть значение %1 копируется в %0, значение %2 – в %1 и т.д. Замещаемому параметру %9 присваивается значение параметра, следующего в командной строке за старым значением %9. Если же такой параметр не задан, то новое значение %9 - пустая строка.

Рассмотрим пример. Пусть командный файл my.bat вызван из командной строки следующим образом:

My.bat p1 p2 p3

Тогда %0=my.bat, %1=p1, %2=p2, %3=p3, параметры %4 – %9 являются пустыми строками. После выполнения команды SHIFT значения замещаемых параметров изменятся следующим образом: %0=p1, %1=p2, %2=p3, параметры %3 – %9 – пустые строки.

При включении расширенной обработки команд SHIFT поддерживает ключ /n, задающий начало сдвига параметров с номера n, где n может быть числом от 0 до 9.
Например, в следующей команде:

SHIFT /2

параметр %2 заменяется на %3, %3 на %4 и т.д., а параметры %0 и %1 остаются без изменений.

Команда, обратная SHIFT (обратный сдвиг), отсутствует. После выполнения SHIFT уже нельзя восстановить параметр (%0), который был первым перед сдвигом. Если в командной строке задано больше десяти параметров, то команду SHIFT можно использовать несколько раз.
В командных файлах имеются некоторые возможности синтаксического анализа заменяемых параметров. Для параметра с номером n (%n) допустимы синтаксические конструкции (операторы), представленные в следующей таблице:

Таблица 2.1. Операторы для заменяемых параметров

Операторы

Описание

Переменная %n расширяется до полного имени файла

Из переменной %n выделяется только имя диска

Из переменной %n выделяется только путь к файлу

Из переменной %n выделяется только имя файла

Из переменной %n выделяется расширение имени файла

Значение операторов N и X для переменной %n изменяется так, что они работают с кратким именем файла

Проводится поиск по каталогам, заданным в переменной среды PATH, и переменная %n заменяется на полное имя первого найденного файла. Если переменная PATH не определена или в результате поиска не найден ни один файл, эта конструкция заменяется на пустую строку. Естественно, здесь переменную PATH можно заменить на любое другое допустимое значение

Данные синтаксические конструкции можно объединять друг с другом, например:

%~DPn - из переменной %n выделяется имя диска и путь,
%~NXn - из переменной %n выделяется имя файла и расширение.

Рассмотрим следующий пример. Пусть мы находимся в каталоге C:\TEXT и запускаем пакетный файл с параметром Рассказ.doc (%1=Рассказ.doc). Тогда применение операторов, описанных в таблице выше, к параметру %1 даст следующие результаты:

%~F1=C:\TEXT\Рассказ.doc %~D1=C: %~P1=\TEXT\ %~N1=Рассказ %~X1=.doc %DP1=C:\TEXT\ %NX1=Рассказ.doc

Командный интерпретатор, интерпретатор командной строки - компьютерная программа, часть операционной системы, обеспечивающая базовые возможности управления компьютером посредством интерактивного ввода команд через интерфейс командной строки или последовательного исполнения пакетных командных файлов.

Как правило его функции сводятся к предоставлению пользователю возможности запускать другие программы, может также содержать некоторые базовые команды ввода-вывода и свой простой скриптовый язык программирования.

@ echo off : begin Cls Title Калькулятор Color 71 Echo Введите уравнение: Set /P exp = Set /A result =% exp % Title Вычислено Echo Ваше уравнение: %exp% Echo Решение: %result% Pause > nul goto begin

Калькулятор, для командной оболочки bash :

#!/usr/bin/env bash echo "Калькулятор" while read -p "Введите выражение: " expr do echo "Результат: $(($expr )) " done

Понятия

Оболочка в своей работе оперирует простыми командами.

Простая команда - это последовательность слов через пробел. Нажатие клавиши Enter при вводе команды или перевод строки при обработке сценария являются для командного интерпретатора признаком завершения команды. Она обрабатывается и выполняется.

Конвейер - это последовательность одной или более команд, разделенных |(& для cmd.exe). Стандартный выходной поток каждой команды, кроме последней, соединяется при помощи программного канала со стандартным входным потоком следующей команды. Каждая команда выполняется как отдельный процесс; интерпретатор ожидает окончания последней команды. Статусом выхода конвейера является статус выхода его последней команды. Вот пример простого конвейера для интерпретатора bash:

$ ls | tee save | wc 15 15 100

Командные интерпретаторы

Data Control Language - язык баз данных для осуществления административных функций

Digital Command Language - интерпретатор командной строки в операционных системах фирмы DEC.

DCL - современная французская тяжёлая бронированная ремонтно-эвакуационная машина

MZ (формат)

MZ - стандартный формат 16-битных исполняемых файлов с расширением.EXE для DOS. Назван так по сигнатуре - ASCII-символам MZ (4D 5A) в первых двух байтах. Эта сигнатура - инициалы Марка Збиковски, одного из создателей MS-DOS.Формат был разработан как замена устаревшему формату.COM. Исполняемые файлы MZ включают метаданные, могут иметь размер больше 64 Кбайт и использовать несколько сегментов памяти различного типа (кода, данных и стека), точка входа в программу также может быть в любом месте (в файлах.COM выполнение команд всегда начинается непосредственно с начала файла). Метод загрузки исполняемого файла определяется по сигнатуре: при её наличии обрабатывается MZ-заголовок, при отсутствии файл запускается как.COM - независимо от расширения файла (например, в последних версиях MS-DOS интерпретатор командной строки COMMAND.COM на самом деле является EXE-файлом).

Исполняемые файлы более поздних форматов для Windows начинаются с MZ-заглушки. Обычно заглушка, добавляемая компиляторами, выводит сообщение наподобие «This program cannot be run in DOS mode» («Эту программу невозможно запустить в режиме DOS»).

В старых компоновщиках для DOS могла применяться сигнатура ZM, которая также распознается MS-DOS и рядом совместимых ОС.

SQL*Plus

SQL*Plus - программа-интерпретатор командной строки для работы с системой управления базами данных Oracle Database, в которой могут выполняться команды SQL и PL/SQL в интерактивном виде или из сценария.

SQL*Plus работает как относительно простой инструмент, с интерфейсом командной строки. Программисты и администраторы СУБД обычно используют его как инструмент по умолчанию, так как интерфейс доступен практически в любой установке программного обеспечения Oracle.

TOPS-20

TOPS-20 (прежде TENEX) - операционная система, разработанная компанией BBN Technologies (Bolt, Beranek and Newman) для компьютеров DEC PDP-10. TENEX включала в себя полную реализацию системы виртуальной памяти, что позволяло программам не только осуществлять доступ ко всем 262 килословам памяти (эквивалент 1152 килобайт), но и делать это одновременно; система страничной организации памяти копировала данные с и на внешние носители по мере необходимости.

Одной из отличительных черт TENEX был её ориентированный на пользователя интерпретатор командной строки. В отличие от типичных систем того времени[каких?], в TENEX для ясности использовались длинные имена команд даже с избыточными словами. К примеру, для печати содержимого каталога в UNIX используется команда ls, а в TENEX - DIRECTORY (OF FILES), где DIRECTORY является ключевым словом, а OF FILES - избыточностью, внесённой для того, чтобы сделать назначение команды более очевидным.Для TENEX была написана самокопирующаяся по локальной сети программа Creeper, которую ошибочно считают одним из первых в мире компьютерных вирусов.

Take Command

Take Command - это имя, которое компания JP Software использовала в своих интерпретаторах командной строки с графическим интерфейсом (GUI) для Windows 3.1 (TC16), 32-разрядных версий Windows (TC32) и позже для OS/2 Presentation Manager (TCOS2). Они выпускались параллельно с версиями 4DOS 5.5, 4NT 2.5 и 4OS2 2.52. Продукты для OS/2 и Windows в 16-разрядных вариантах просуществовали до версии 2.02, их можно загрузить и сейчас с FTP-сайта JP Software.

Take Command сегодня - это интерпретатор командной строки для операционных систем семейства Microsoft Windows. Его преимущества перед стандартной командной оболочкой Windows такие же, как у 4DOS перед COMMAND.COM из поставки MS-DOS.

Начиная с версии 9, название Take Command относится ко всему пакету программ: TCI (командный интерфейс в вкладками) и 4NT. Разработка исходной версии Take Command прекращена. Компонент TCI теперь расширен: он включает диспетчер файлов, настраиваемые панели и ряд других окон, а 4NT переименован в TCC и помимо полной версии доступен в бесплатной «облегчённой» (TCC/LE).

В состав Take Command добавлены встроенные редактор и отладчик пакетных файлов, в командах реализован доступ к файлам по FTP и HTTP, доступ к сетевой файловой системе, интеграция с Active Scripting, команды мониторинга системы и управления службами Windows.

Take Command Console (TCC)

Take Command Console (TCC) (прежние названия - 4DOS for Windows NT и 4NT) - это интерпретатор командной строки, выпускаемый компанией JP Software как более функционально насыщенная замена стандартному интерпретатору командной строки в Microsoft Windows - CMD.EXE. TCC основан на ранее выходивших командных оболочках 4DOS для DOS и 4OS/2 для OS/2.

Начиная с версии 12 у 4NT удалена поддержка Windows 95, 98, ME, NT и 2000. Начиная с версии 16 у TCC удалена поддержка Windows XP, хотя работа в XP по-прежнему возможна. 4NT переименована в Take Command Console (TCC) как часть пакета JP Software Take Command версии 9 и новее.

TCC предоставляет большой набор возможностей для работы с командной строкой и пакетными файлами. Для обеспечения обширного доступа к операционной системе TCC позволяет совместно работать с другими языками сценариев - REXX, Ruby и Perl, или скрипт-языками Windows, в виде движков Active Scripting - VBScript и JScript, а также PerlScript (через ActivePerl), TclScript (через ActiveTcl), PythonScript (через ActivePython), и версией скрипт-движка Object REXX.

Интерфейс командной строки

Интерфейс командной строки (англ. Command line interface, CLI) - разновидность текстового интерфейса (CUI) между человеком и компьютером, в котором инструкции компьютеру даются в основном путём ввода с клавиатуры текстовых строк (команд), в UNIX-системах возможно применение мыши. Также известен под названием консоль.

Интерфейс командной строки противопоставляется системам управления программой на основе меню, а также различным реализациям графического интерфейса.

Формат вывода информации в интерфейсе командной строки не регламентируется; обычно это также простой текстовый вывод, но может быть и графическим, звуковым и т. д.

Консоль восстановления

Консоль восстановления (англ. Recovery Console) - компонент, включенный в состав Windows 2000, Windows XP и Windows Server 2003. Он предоставляет администраторам средства выполнения ограниченного круга задач с использованием интерфейса командной строки. Его основная задача заключается в том, чтобы позволить администраторам восстанавливать ОС в ситуациях, когда Windows не загружается до состояния графического интерфейса пользователя. Консоль восстановления используется для предоставления доступа к жесткому диску в чрезвычайной ситуации через командную строку. Таким образом, к консоли восстановления можно получить доступ либо через исходный установочный носитель, используемый для установки Windows, либо также можно установить на жесткий диск и добавить в меню NTLDR, однако, полагаясь на последнее, это более рискованно, потому что для этого требуется, чтобы компьютер загрузился до NTLDR.

Сравнение языков программирования

В приведённой ниже таблице отмечено наличие или отсутствие тех или иных возможностей в некоторых популярных сегодня языках программирования. Столбцы упорядочены по алфавиту. Если возможность в языке недоступна напрямую, но может быть эмулирована с помощью других средств, то в таблице отмечено, что её нет.

При заполнении таблицы учтены только фактические данные, при том, что наличие возможности не обязательно является преимуществом языка, а отсутствие - недостатком.

Точка соединения NTFS

Точка соединения NTFS (англ. NTFS Junction Point) - нововведение в файловой системе NTFS 3.0 (файловая система по умолчанию в Windows 2000). Суть нововведения заключается в том, что указанный логический диск либо папка будет отображаться как папка на другом логическом диске либо в другой папке. Эта возможность позволяет создавать некоторые эффекты с файловой системой (например, хранить два профиля одного и того же пользователя и переключаться между ними без особых проблем). Точка соединения реализована в NTFS как особый тип точки повторной обработки (англ. reparse point).

Данную функцию можно настроить в оснастке «Управление дисками»: щелчок правой кнопкой на подключаемом диске, пункт «Изменить букву диска или путь к диску…», далее в списке будут отображены все возможные пути к диску, по умолчанию диск доступен по своей букве («Х:» - где Х буква диска). Менять пути к диску можно соответствующими кнопками под списком.

Для создания точки соединения на папку можно воспользоваться утилитой linkd, которая входит в комплект Windows 2000 and Windows XP Resource Kits. В Windows Vista и выше точку соединения или символьную ссылку можно создать с помощью стандартной консольной команды mklink.

Для доступа к такой папке не нужны никакие дополнительные настройки приложений, то есть доступ осуществляется введением адреса папки. Таким образом, исчезает ограничение на 26 локальных томов на одном компьютере (количество букв английского алфавита для именования дисков), так как том может быть доступен без присвоения ему имени.

Шебанг (Unix)

Шебанг (англ. shebang, sha-bang, hashbang, pound-bang, or hash-pling) - в программировании последовательность из двух символов: решётки и восклицательного знака ("#!") в начале файла скрипта.

Когда скрипт с шебангом выполняется как программа в Unix-подобных операционных системах, загрузчик программ рассматривает остаток строки после шебанга как имя файла программы-интерпретатора. Загрузчик запускает эту программу и передаёт ей в качестве параметра имя файла скрипта с шебангом. Например, если полное имя файла скрипта "path/to/script" и первая строка этого файла:

#!/bin/shто загрузчик запускает на выполнение "/bin/sh" (обычно это Bourne shell или совместимый интерпретатор командной строки) и передаёт "path/to/script" как первый параметр.

Строка с шебангом обычно пропускается интерпретатором, так как символ "#" является символом начала комментариев во многих скриптовых языках. Некоторые интерпретаторы, которые не используют символ решётки для обозначения начала комментариев (такие, как Scheme), могут пропустить строку шебанга, определив её назначение. Другие решения полагаются на препроцессор, который обрабатывает и удаляет строку шебанга перед тем, как остальная часть скрипта передаётся компилятору или интерпретатору. Так, например, работает InstantFPC, который позволяет запускать программы, написанные на Free Pascal, как скрипты на некоторых операционных системах.