<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://support.qbpro.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash</id>
	<title>Программирование в Bash - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://support.qbpro.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash"/>
	<link rel="alternate" type="text/html" href="https://support.qbpro.ru/index.php?title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash&amp;action=history"/>
	<updated>2026-06-02T22:19:15Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.38.1</generator>
	<entry>
		<id>https://support.qbpro.ru/index.php?title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash&amp;diff=650&amp;oldid=prev</id>
		<title>imported&gt;Vix в 13:31, 10 мая 2018</title>
		<link rel="alternate" type="text/html" href="https://support.qbpro.ru/index.php?title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash&amp;diff=650&amp;oldid=prev"/>
		<updated>2018-05-10T13:31:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://support.qbpro.ru/index.php?title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash&amp;amp;diff=650&amp;amp;oldid=649&quot;&gt;Внесённые изменения&lt;/a&gt;</summary>
		<author><name>imported&gt;Vix</name></author>
	</entry>
	<entry>
		<id>https://support.qbpro.ru/index.php?title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash&amp;diff=649&amp;oldid=prev</id>
		<title>imported&gt;Vix в 11:54, 2 апреля 2018</title>
		<link rel="alternate" type="text/html" href="https://support.qbpro.ru/index.php?title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash&amp;diff=649&amp;oldid=prev"/>
		<updated>2018-04-02T11:54:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 14:54, 2 апреля 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l197&quot;&gt;Строка 197:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 197:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Запускаем сценарий, и результатом будет:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Запускаем сценарий, и результатом будет:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  -ln&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  -ln&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;'''ИСТОЧНИКИ:'''&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[http://eddnet.org/?p=1173 &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;статья тут&lt;/del&gt;]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;hr&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* &lt;/ins&gt;[http://eddnet.org/?p=1173 &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Программирование в BASH&lt;/ins&gt;]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://eddnet.org/?p=1311 Структура If…then…else]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://eddnet.org/?p=1311 Структура If…then…else]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://habrahabr.ru/post/126701/ Взаимодействие bash-скриптов с пользователем]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://habrahabr.ru/post/126701/ Взаимодействие bash-скриптов с пользователем]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://rus-linux.net/nlib.php?name=/MyLDP/consol/bash-scripts/sh_scripts_for_GUI_ru.html пользовательские диалоги]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://rus-linux.net/nlib.php?name=/MyLDP/consol/bash-scripts/sh_scripts_for_GUI_ru.html пользовательские диалоги]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://docstore.mik.ua/manuals/ru/lfs6/chapter06/ncurses.html библиотека ncurses]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://docstore.mik.ua/manuals/ru/lfs6/chapter06/ncurses.html библиотека ncurses]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://support.serverside.su/knowledgebase/32/--bash---HTTP--DDoS.html Защита от Ddos]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://support.serverside.su/knowledgebase/32/--bash---HTTP--DDoS.html Защита от Ddos]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://rus-linux.net/MyLDP/internet/curlrus.html http - запросы]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://rus-linux.net/MyLDP/internet/curlrus.html http - запросы]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.ibm.com/developerworks/ru/library/au-learningtput/ утилита tput]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.ibm.com/developerworks/ru/library/au-learningtput/ утилита tput]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.opennet.ru/docs/RUS/bash_scripting_guide/ все по bash]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.opennet.ru/docs/RUS/bash_scripting_guide/ все по bash]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.examplenow.com/ru/whiptail/usage wiptail]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.examplenow.com/ru/whiptail/usage wiptail]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.ibm.com/developerworks/ru/library/l-zenity/index.html Zenity - графический интерфейс для командной строки]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.ibm.com/developerworks/ru/library/l-zenity/index.html Zenity - графический интерфейс для командной строки]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://www.ibm.com/developerworks/ru/library/l-dialog/ Утилита dialog для использования диалоговых окон в shell-скриптах]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [https://www.opennet.ru/base/dev/linux_dialog.txt.html Разработка простых интерфейсов с помощью dialog/Xdialog]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [http://tdkare.ru/sysadmin/index.php/Dialog Статья об утилите создания диалогов в скриптах Dialog]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Vix</name></author>
	</entry>
	<entry>
		<id>https://support.qbpro.ru/index.php?title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash&amp;diff=648&amp;oldid=prev</id>
		<title>imported&gt;Vix: Новая страница: «=='''Bash учебное пособие. Часть 3: Специальные параметры'''==  Специальные параметры, те парам…»</title>
		<link rel="alternate" type="text/html" href="https://support.qbpro.ru/index.php?title=%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B2_Bash&amp;diff=648&amp;oldid=prev"/>
		<updated>2013-08-26T18:53:04Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «==&amp;#039;&amp;#039;&amp;#039;Bash учебное пособие. Часть 3: Специальные параметры&amp;#039;&amp;#039;&amp;#039;==  Специальные параметры, те парам…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=='''Bash учебное пособие. Часть 3: Специальные параметры'''==&lt;br /&gt;
&lt;br /&gt;
Специальные параметры, те параметры которые уже установлены и доступны для пользователя. Эти параметры невозможно назначить внутри скрипта. Список таких параметров:&lt;br /&gt;
&lt;br /&gt;
$1 - $9 - Это так называемые позиционные параметры, служат для передачи аргументов командной строки.&lt;br /&gt;
Если аргументов больше 9, то они должны заключаться в фигурные скобки{}&lt;br /&gt;
$0 - Имя скрипта который был запущен.&lt;br /&gt;
$# - Количество аргументов командной строки или позиционных параметров&lt;br /&gt;
$? - Код с которым была завершена предыдущая команда. Если команда была выполнена удачно,&lt;br /&gt;
то значение этой переменной будет 0, если же неудачно то не 0.&lt;br /&gt;
$$ - Номер процесса под которым исполняется данный скрипт, очень удобно использовать&lt;br /&gt;
в имени файла что бы сделать его уникальным.&lt;br /&gt;
$! - Номер последнего, запущенного в фоне процесса.&lt;br /&gt;
$- Список флагов переданных сценарию. Годиться разве что для проверки интерактивного режима.&lt;br /&gt;
$* - Данный параметр содержит в себе все параметры переданные из командной строки.&lt;br /&gt;
$@ - То же самое что $*, только каждый параметр представлен отдельно.&lt;br /&gt;
$_	- Специальная переменная, содержит последний аргумент предыдущей команды.&lt;br /&gt;
&lt;br /&gt;
И так начнем мы с $1-$9.&lt;br /&gt;
&lt;br /&gt;
Создадим script.sh с таким содержимым:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 # &lt;br /&gt;
 POS1=&amp;quot;$1&amp;quot;&lt;br /&gt;
 POS2=&amp;quot;$2&amp;quot;&lt;br /&gt;
 POS3=&amp;quot;$3&amp;quot;&lt;br /&gt;
 echo &amp;quot;$1 первый параметр, \$1.&amp;quot;&lt;br /&gt;
 echo &amp;quot;$2 второй параметр, \$2.&amp;quot;&lt;br /&gt;
 echo &amp;quot;$3 третий параметр, \$3.&amp;quot;&lt;br /&gt;
 echo&lt;br /&gt;
 echo &amp;quot;$POS1, $POS2, $POS3 параметры&amp;quot; '$1'&amp;quot;,&amp;quot; '$2'&amp;quot;,&amp;quot; '$3'&amp;quot;,&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Запускам script.sh с параметрами a v b:&lt;br /&gt;
 ./script.sh a v b&lt;br /&gt;
&lt;br /&gt;
На экране мы увидим:&lt;br /&gt;
 a первый параметр, $1.&lt;br /&gt;
 v второй параметр, $2.&lt;br /&gt;
 b третий параметр, $3.&lt;br /&gt;
&lt;br /&gt;
 a, v, b параметры $1, $2, $3,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Специальный параметр $0&lt;br /&gt;
&lt;br /&gt;
Создадим script.sh с таким содержимым:&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 echo &amp;quot;Имя сценария: $0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Запукаем и получим:&lt;br /&gt;
 script.sh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Специальный параметр $#&lt;br /&gt;
&lt;br /&gt;
Создадим script.sh с таким содержимым:&lt;br /&gt;
 &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 POS1=&amp;quot;$1&amp;quot;&lt;br /&gt;
 POS2=&amp;quot;$2&amp;quot;&lt;br /&gt;
 POS3=&amp;quot;$3&amp;quot;&lt;br /&gt;
 echo &amp;quot;$1 первый параметр, \$1.&amp;quot;&lt;br /&gt;
 echo &amp;quot;$2 второй параметр, \$2.&amp;quot;&lt;br /&gt;
 echo &amp;quot;$3 третий параметр, \$3.&amp;quot;&lt;br /&gt;
 echo&lt;br /&gt;
 echo &amp;quot;Всего параметров: $#&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Запускам script.sh с параметрами a v b:&lt;br /&gt;
 ./script.sh a v b&lt;br /&gt;
&lt;br /&gt;
И получим :&lt;br /&gt;
 a первый параметр, $1.&lt;br /&gt;
 v второй параметр, $2.&lt;br /&gt;
 b третий параметр, $3.&lt;br /&gt;
 Всего параметров: 3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Специальный параметр $$&lt;br /&gt;
&lt;br /&gt;
Создадим script.sh с таким содержимым:&lt;br /&gt;
 &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 TEMFILE=tmp.$$&lt;br /&gt;
 touch $TEMFILE&lt;br /&gt;
 ls -1 tmp.*&lt;br /&gt;
&lt;br /&gt;
Запускаем скрипт и получаем:&lt;br /&gt;
 tmp.20375&lt;br /&gt;
&lt;br /&gt;
где 20375 уникальный номер процесса.&lt;br /&gt;
&lt;br /&gt;
Специальный параметр $!&lt;br /&gt;
&lt;br /&gt;
Создадим script.sh с таким содержимым:&lt;br /&gt;
 &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 COM=&amp;quot;ps ax&amp;quot;&lt;br /&gt;
 echo &amp;quot;Вывод на экран номера процессов запущенных команд&amp;quot;&lt;br /&gt;
 echo&lt;br /&gt;
 echo -n &amp;quot;Номер процесса &amp;quot;&amp;quot;$COM&amp;quot;&amp;quot;:  &amp;quot;&lt;br /&gt;
 ${COM} &amp;amp;&lt;br /&gt;
 echo $!&lt;br /&gt;
&lt;br /&gt;
Результатом будет:&lt;br /&gt;
 Номер процесса ps ax: 20478&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Специальный параметр $*&lt;br /&gt;
&lt;br /&gt;
Создадим script.sh с таким содержимым:&lt;br /&gt;
 &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 POS1=&amp;quot;$1&amp;quot;&lt;br /&gt;
 POS2=&amp;quot;$2&amp;quot;&lt;br /&gt;
 POS3=&amp;quot;$3&amp;quot;&lt;br /&gt;
 echo &amp;quot;$POS1 первый параметр, \$1.&amp;quot;&lt;br /&gt;
 echo &amp;quot;$POS2 второй параметр, \$2.&amp;quot;&lt;br /&gt;
 echo &amp;quot;$POS3 третий параметр, \$3.&amp;quot;&lt;br /&gt;
 echo&lt;br /&gt;
 echo &amp;quot;Все параметры одной строкой: $*&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Запускам script.sh с параметрами a v b:&lt;br /&gt;
 ./script.sh a v b&lt;br /&gt;
&lt;br /&gt;
Результатом будет:&lt;br /&gt;
 a первый параметр, $1.&lt;br /&gt;
 v второй параметр, $2.&lt;br /&gt;
 b третий параметр, $3.&lt;br /&gt;
&lt;br /&gt;
Все параметры одной строкой: a v b&lt;br /&gt;
&lt;br /&gt;
Специальный параметр $@&lt;br /&gt;
&lt;br /&gt;
Создадим script.sh с таким содержимым:&lt;br /&gt;
 &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 N=1&lt;br /&gt;
 for ARG in &amp;quot;$@&amp;quot;&lt;br /&gt;
 do&lt;br /&gt;
 echo &amp;quot;Входной параметр #$N = $ARG&amp;quot;&lt;br /&gt;
 N=$[$N+1]&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
Запускаем его:&lt;br /&gt;
 ./script.sh a v b&lt;br /&gt;
&lt;br /&gt;
Результатом будет:&lt;br /&gt;
 Входной параметр #1 = a&lt;br /&gt;
 Входной параметр #2 = v&lt;br /&gt;
 Входной параметр #3 = b&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Специальный параметр $?&lt;br /&gt;
&lt;br /&gt;
При помощи данного параметра очень удобно проверить результат выполнения какой либо команды. Пример:&lt;br /&gt;
 &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 PORT=$1&lt;br /&gt;
 netstat -ln|grep &amp;quot;$PORT&amp;quot; &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 if [ $? -eq 0 ]; then&lt;br /&gt;
 echo &amp;quot;$PORT поднят. &amp;quot;'$?'&amp;quot;=$?&amp;quot;&lt;br /&gt;
 else&lt;br /&gt;
 echo &amp;quot;$PORT не поднят. &amp;quot;'$?'&amp;quot;=$?&amp;quot;&lt;br /&gt;
 fi&lt;br /&gt;
&lt;br /&gt;
Запускаем его:&lt;br /&gt;
 ./script.sh :80&lt;br /&gt;
&lt;br /&gt;
И если Apache поднят на локальном компьютере, то мы увидим:&lt;br /&gt;
 :80 поднят. $?=0&lt;br /&gt;
&lt;br /&gt;
Давайте попробуем задать какой то порт, который не слушает ни одна программа:&lt;br /&gt;
 ./script.sh :60000&lt;br /&gt;
&lt;br /&gt;
Результат будет:&lt;br /&gt;
 :60000 не поднят. $?=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Специальный параметр $_&lt;br /&gt;
&lt;br /&gt;
Создадим script.sh с таким содержимым:&lt;br /&gt;
 &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 #&lt;br /&gt;
 netstat -ln &amp;amp;&amp;gt; /dev/null&lt;br /&gt;
 echo $_&lt;br /&gt;
&lt;br /&gt;
Запускаем сценарий, и результатом будет:&lt;br /&gt;
 -ln&lt;br /&gt;
&lt;br /&gt;
[http://eddnet.org/?p=1173 статья тут]&lt;br /&gt;
&lt;br /&gt;
* [http://eddnet.org/?p=1311 Структура If…then…else]&lt;br /&gt;
&lt;br /&gt;
* [http://habrahabr.ru/post/126701/ Взаимодействие bash-скриптов с пользователем]&lt;br /&gt;
&lt;br /&gt;
* [http://rus-linux.net/nlib.php?name=/MyLDP/consol/bash-scripts/sh_scripts_for_GUI_ru.html пользовательские диалоги]&lt;br /&gt;
&lt;br /&gt;
* [http://docstore.mik.ua/manuals/ru/lfs6/chapter06/ncurses.html библиотека ncurses]&lt;br /&gt;
&lt;br /&gt;
* [http://support.serverside.su/knowledgebase/32/--bash---HTTP--DDoS.html Защита от Ddos]&lt;br /&gt;
&lt;br /&gt;
* [http://rus-linux.net/MyLDP/internet/curlrus.html http - запросы]&lt;br /&gt;
&lt;br /&gt;
* [http://www.ibm.com/developerworks/ru/library/au-learningtput/ утилита tput]&lt;br /&gt;
&lt;br /&gt;
* [http://www.opennet.ru/docs/RUS/bash_scripting_guide/ все по bash]&lt;br /&gt;
&lt;br /&gt;
* [http://www.examplenow.com/ru/whiptail/usage wiptail]&lt;br /&gt;
&lt;br /&gt;
* [http://www.ibm.com/developerworks/ru/library/l-zenity/index.html Zenity - графический интерфейс для командной строки]&lt;/div&gt;</summary>
		<author><name>imported&gt;Vix</name></author>
	</entry>
</feed>