haiku/docs/userguide/ru/bash-scripting.html
Niels Sascha Reedijk c18f9eb4ea User documentation: synchronize userguide from the userguide translator
Change-Id: I9b30ae27658a40b85c67a4c30aaea2b4bf9507f9
2021-07-21 12:54:38 +01:00

126 lines
9.6 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru">
<head>
<!--
*
* Copyright 2009, Haiku. All rights reserved.
* Distributed under the terms of the MIT License.
*
* Authors:
* Humdinger <humdingerb@gmail.com>
* Translators:
* Akuji
* Sergei Reznikov
* Humdinger
* Michael Smirnov
* mrNoisy
* Vsevolod
*
-->
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="robots" content="all" />
<title>Bash и скрипты</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" type="text/css" href="../Haiku-doc.css" />
</head>
<body>
<div id="banner">
<div><span>Руководство пользователя</span></div>
</div>
<div class="nav">
<div class="inner">
<ul class="lang-menu">
<li class="now">Русский&nbsp;<span class="dropdown-caret">&#9660;</span></li>
<li><a href="../id/bash-scripting.html">Bahasa Indonesia</a></li>
<li><a href="../ca/bash-scripting.html">Català</a></li>
<li><a href="../de/bash-scripting.html">Deutsch</a></li>
<li><a href="../en/bash-scripting.html">English</a></li>
<li><a href="../es/bash-scripting.html">Español</a></li>
<li><a href="../eo/bash-scripting.html">Esperanto</a></li>
<li><a href="../fr/bash-scripting.html">Français</a></li>
<li><a href="../fur/bash-scripting.html">Furlan</a></li>
<li><a href="../it/bash-scripting.html">Italiano</a></li>
<li><a href="../hu/bash-scripting.html">Magyar</a></li>
<li><a href="../pl/bash-scripting.html">Polski</a></li>
<li><a href="../pt_PT/bash-scripting.html">Português</a></li>
<li><a href="../pt_BR/bash-scripting.html">Português (Brazil)</a></li>
<li><a href="../ro/bash-scripting.html">Română</a></li>
<li><a href="../sk/bash-scripting.html">Slovenčina</a></li>
<li><a href="../fi/bash-scripting.html">Suomi</a></li>
<li><a href="../sv_SE/bash-scripting.html">Svenska</a></li>
<li><a href="../tr/bash-scripting.html">Türkçe</a></li>
<li><a href="../zh_CN/bash-scripting.html"> 中文 [中文]</a></li>
<li><a href="../uk/bash-scripting.html">Українська</a></li>
<li><a href="../jp/bash-scripting.html">日本語</a></li>
</ul>
<span>
«  <a href="preferences.html">Настройки</a> 
::  <a href="contents.html" class="uplink">Содержание</a> 
<!-- ::  <a href="filesystem-layout.html">Иерархия файловой системы</a>  » -->
</span></div>
</div>
<div id="content">
<div>
<h1>Bash и скрипты</h1>
<p>"Скриптинг" - это техника автоматизации процедур путем объединения команд и сохранения их в виде текстовых файлов, называемых "скриптами" ("сценариями"). Всякий раз, когда вы запускаете скрипт, команды обрабатываются одна за одной так, будто они были введены вами в <a href="applications/terminal.html">Терминале (Terminal)</a> вручную.<br />
Скрипты могут варьироваться от простейших, выполняющих всего несколько команд в особом порядке, до нетривиальных фрагментов кода, решающих сложные задачи.</p>
<h2>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="bash" name="bash">Bash</a></h2>
<p>Учитывая, что скрипты во многом зависят от оболочки, в которой они интерпретируются, для начала вам следует ознакомиться с BASH, который используется в Haiku. В сети есть достаточно много ресурсов, ведь эта оболочка широко распространена. Хорошим руководством послужит работа Йохана Янссона (Johan Jansson) <a href="https://web.archive.org/web/20011205095723/http://www.beforever.com/bashtut.htm" class="printurl">Введение в bash - Руководство по bash для BeOS</a>.<br />
<a href="https://www.gnu.org/software/bash/manual/bash.pdf" class="printurl">Bash Reference Manual (PDF, 720 KiB)</a> хороший ресурс, чтобы разобраться в деталях.</p>
<h2>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="scripting-bible" name="scripting-bible">Библия скриптинга</a></h2>
<p>После того, как вы изучили некоторые основы работы в командной строке, пришло время выпускать себя в мир скриптинга. Опять же, множество руководств вы найдете в сети и на полках книжных магазинов. Книга, созданная специально для Haiku, доступна онлайн: <a href="http://www.birdhouse.org/beos/bible/bos/ch_scripting1.html" class="printurl">Scripting Chapter</a> (<a href="http://www.birdhouse.org/beos/bible/bos/BeOS.scripting.PDF">PDF, 900кб</a>) от создателя "BeOS Bible" - Скота Хакера (Scot Hacker).</p>
<h2>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a><a id="user-scripts" name="user-scripts">Скрипты в Haiku</a></h2>
<p>Раньше Haiku использовала скрипты для загрузки и завершения работы. Теперь для этого применяется демон загрузки <a href="https://dev.haiku-os.org/wiki/LaunchDaemon">launch_daemon</a> Тем не менее пользователь все равно может влиять на процесс при помощи скриптов. Если они еще не существуют, вам придется создать их самостоятельно. В ином случае просто добавьте нужные команды туда, где они должны быть выполнены.</p>
<h3>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="userbootscript" name="userbootscript">UserBootscript</a></h3>
<p><span class="path">/boot/home/config/settings/boot/UserBootscript</span> будет выполнен после того, как система завершит процесс загрузки. Например, вы можете добавить несколько программ, которые будут автоматически стартовать при каждой загрузке:</p>
<pre># Запуск LaunchBox
/boot/system/apps/LaunchBox &amp;
# Запуск Workspaces
/boot/system/apps/Workspaces &amp;</pre>
<p>Не забудьте добавить в конце команды знак "<tt>&amp;</tt>", чтобы запустить этот процесс в фоновом режиме, иначе скрипт зависнет, пока эта команда не будет завершена (в данном случае, когда запущенное приложение будет закрыто).</p>
<p>Более простая альтернатива для запускающихся приложений во время загрузки - разместить ссылки на необходимые программы в папке <span class="path">/boot/home/config/settings/boot/launch</span>. Это может быть сделано правым кликом по приложению, которое вы хотели бы поместить в автозапуск, выбрав меню <span class="menu">Создать ссылку (Create Link)</span> и затем выполнив перемещение по папкам используя <a href="tracker.html#navigating">навигацию</a>.</p>
<h3>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="usershutdownscript" name="usershutdownscript">UserShutdownScript - <i>пока не работает</i></a></h3>
<p><span class="path">/boot/home/config/settings/boot/UserShutdownScript</span> будет выполнен в качестве первого этапа в процессе завершения работы. Если скрипт возвращает ненулевой результат по окончании, завершение работы прекращается.</p>
<h3>
<a href="#"><img src="../images/up.png" style="border:none;float:right" alt="index" /></a>
<a id="usershutdownfinishscript" name="usershutdownfinishscript">UserShutdownFinishScript - <i>пока не работает</i></a></h3>
<p><span class="path">/boot/home/config/settings/boot/UserShutdownFinishScript</span> выполняется в последнюю очередь в процессе завершения работы. Имейте ввиду, что большинство элементов системы уже не функционируют во время выполнения этого скрипта.</p>
</div>
</div>
<div class="nav">
<div class="inner"><span>
«  <a href="preferences.html">Настройки</a> 
::  <a href="contents.html" class="uplink">Содержание</a> 
<!-- ::  <a href="filesystem-layout.html">Иерархия файловой системы</a>  » -->
</span></div>
</div>
</body>
</html>