<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0">
<channel>
<title>FreeSource - СтатьяКлассическийUnixWay</title>
<link>http://freesource.info/wiki/СтатьяКлассическийUnixWay</link>
<description>History/revisions of FreeSource/СтатьяКлассическийUnixWay</description>
<language>en-us</language>
<item>
<title>2004-02-05 15:00:19</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-02-05+15%3A00%3A19</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a name=".stat_jaklassicheskijjunixway" href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-02-05+15%3A00%3A19">2004-02-05 15:00:19&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay">2004-02-05 15:00:19&lt;/a>&lt;/b>&lt;br />
&lt;br />
No differences.&lt;/div>
</description>
</item>
<item>
<title>2004-02-01 20:57:44</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-02-01+20%3A57%3A44</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-02-01+20%3A57%3A44">2004-02-01 20:57:44&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-02-05+15%3A00%3A19">2004-02-05 15:00:19&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">слов и&amp;nbsp;букв в&amp;nbsp;группе файлов при&amp;nbsp;помощи графического интерфейса? А&amp;nbsp;если их&lt;br />
перед этим надо отобрать файлы с&amp;nbsp;датой создания не&amp;nbsp;более чем&amp;nbsp;неделю назад,&lt;br />
а&amp;nbsp;также не&amp;nbsp;считать пустые строки? С&amp;nbsp;небольшими модификациями моего примера&lt;br />
эта&amp;nbsp;задача решается легко и&amp;nbsp;непринуждённо.&lt;br />
Основными такими утилитами являются grep/egrep/fgrep (фильтрующие поток&lt;br />
данных выполняя поиск по&amp;nbsp;регулярным выражениям), sort (сортировка), cat&lt;br />
(вывод файла или&amp;nbsp;группы файлов), colrm (вырезание отдельных колонок),&lt;br />
column, paste, sed, uniq, less. Ну&amp;nbsp;и самая главная программа, это&amp;nbsp;программа&lt;br />
&amp;#8220;man&amp;#8221;, выводящая документацию по&amp;nbsp;любой другой программе.&lt;br />
Его&amp;nbsp;преимущество &amp;ndash; возможность работы с&amp;nbsp;утилитой как&amp;nbsp;непосредственно с&amp;nbsp;командной строки, так&amp;nbsp;и&amp;nbsp;с данными из&amp;nbsp;файлов или&amp;nbsp;в&amp;nbsp;&amp;laquo;цепочке&amp;raquo; из&amp;nbsp;других утилит без&amp;nbsp;всяких изменений. &lt;a name="h25-1">&lt;/a>&lt;h2>pipes (потоки, трубы)&lt;/h2>
pipes это&amp;nbsp;основной метод связи программ в&amp;nbsp;UNIX-like ОС&amp;nbsp;друг с&amp;nbsp;другом.&lt;br />
Каждый раз, когда мы&amp;nbsp;используем символ '|' в&amp;nbsp;командной строке (shell),&lt;br />
мы&amp;nbsp;создаём трубу (pipe), которая соединяет стандартный вывод (stdout)&lt;br />
одной программы со&amp;nbsp;стандартным вводом (stdin) другой программы. Таким образом&lt;br />
когда одна программы выдаёт что-либо, мы&amp;nbsp;можешь это&amp;nbsp;либо увидеть на&amp;nbsp;экране,&lt;br />
либо перенаправить на&amp;nbsp;ввод другой программы. Например такой командой может&lt;br />
быть &amp;#8220;less&amp;#8221;, которая отображает полученую через stdin информацию, с&lt;br />
возможностью прокрутки вперёд и&amp;nbsp;назад, а&amp;nbsp;также поиска (more в&amp;nbsp;DOS является&lt;br />
сильно упрощённым функциональным аналогом).&lt;br />
Также мы&amp;nbsp;всегда можем перенаправить stdout программы в&amp;nbsp;файл, или&amp;nbsp;взять&lt;br />
данные из&amp;nbsp;файла:&lt;br />
sort &amp;lt; unsorted.txt &amp;gt; sorted.txt&lt;br />
Одна из&amp;nbsp;самый удивительных концпеций. Например вы&amp;nbsp;можете сделать так:&lt;br />
cat&amp;nbsp;bootsect.bin &amp;gt; /dev/fd0&lt;br />
и&amp;nbsp;таким образом запишите образ загрузочного сектора прямо на&amp;nbsp;дискету.&lt;br />
Или&amp;nbsp;вы&amp;nbsp;можете сделать так:&lt;br />
dd&amp;nbsp;if=/dev/cdrom of=cd.iso&lt;br />
и&amp;nbsp;таким образом вы&amp;nbsp;сделаете образ компакт-диска (последнюю сессию, только&lt;br />
данные), который пригоден для&amp;nbsp;записи с&amp;nbsp;помощью утилиты cdrecord.&lt;br />
Вы&amp;nbsp;можете сделать так:&lt;br />
dd&amp;nbsp;if=/dev/hda bs=512 count=1 of=mbr.bin&lt;br />
и&amp;nbsp;таким образом сохранить куда-нибудь первый сектор своего жёсткого диска.&lt;br />
Принцип, благодаря которому устройства принципиально мало отличаются от&lt;br />
файла с&amp;nbsp;точки зрения пользователя позволяет использовать для&amp;nbsp;работы&lt;br />
с&amp;nbsp;устройствами те&amp;nbsp;же программы, что&amp;nbsp;и&amp;nbsp;для работы с&amp;nbsp;обычными файлами.&lt;br />
Ещё хорошие примеры &amp;mdash; в&amp;nbsp;Linux принято монтировать виртуальную файловую&lt;br />
систему /proc, которая даёт доступ ко&amp;nbsp;многим ресурсам системы. Например:&lt;br />
cat&amp;nbsp;/proc/cmdline &amp;mdash; опции переданые ядру при&amp;nbsp;загрузке&lt;br />
cat&amp;nbsp;/proc/cpuinfo &amp;mdash; подробная информация об&amp;nbsp;установленых в&amp;nbsp;системе процессорах&lt;br />
cat&amp;nbsp;/proc/pci     &amp;mdash; информация об&amp;nbsp;установленых PCI-устройствах&lt;br />
Таким образом можно даже менять настройки системы, например:&lt;br />
echo using_dma:1 &amp;gt; /proc/ide/hda/settings&lt;br />
разрешит использование DMA&amp;nbsp;для primary master IDE&amp;nbsp;устройства.&lt;br />
awk&amp;nbsp;&amp;mdash; каждая строка проходит через последовательность условий; для&amp;nbsp;каждого условия, которому эта&amp;nbsp;строка удовлетворяет, выполняется соответствующий код.  Кроме того каждая строка разбирается на&amp;nbsp;поля (разделитель полей можно выбрать), что&amp;nbsp;позволяет использовать его&amp;nbsp;для автоматизированой обработки таблиц.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">слов и&amp;nbsp;букв в&amp;nbsp;группе файлов при&amp;nbsp;помощи графического интерфейса современных&lt;br />
ОС?&lt;br />
Его&amp;nbsp;преимущество &amp;ndash; возможность работы с&amp;nbsp;утилитой как&amp;nbsp;непосредственно с&amp;nbsp;командной строки, так&amp;nbsp;и&amp;nbsp;с данными из&amp;nbsp;файлов или&amp;nbsp;в&amp;nbsp;&amp;laquo;цепочке&amp;raquo; из&amp;nbsp;других утилит без&amp;nbsp;всяких изменений. Подать plain text на&amp;nbsp;&lt;em>standard input (стандартный ввод)&lt;/em> утилиты можно и&amp;nbsp;с клавиатуры, а&amp;nbsp;увидеть результат из&amp;nbsp;&lt;em>standard output (стандартного вывода)&lt;/em>- на&amp;nbsp;экране (если его&amp;nbsp;слишком много, утилита less позволяет просмотреть его&amp;nbsp;с&amp;nbsp;&amp;laquo;прокруткой&amp;raquo;). А&amp;nbsp;можно &amp;ndash; взять standard input из&amp;nbsp;файла, вывести standard output в&amp;nbsp;файл, или&amp;nbsp;же&amp;nbsp;направить standard output одной утилиты в&amp;nbsp;standard input другой. Именно соединение стандартного вывода одной программы со&amp;nbsp;стандартным вводом другой и&amp;nbsp;означает символ | (труба) в&amp;nbsp;вышеприведённом примере.&lt;br />
&lt;span class="cite">todo заменить кусок про&amp;nbsp;стандартные потоки на&amp;nbsp;что-нибудь более корректное&lt;/span>&lt;br />
&lt;span class="cite">TODO Вот&amp;nbsp;здесь можно очень хорошо перейти от&amp;nbsp;уже введённой концепции stdin/stdout к&amp;nbsp;потоку и&amp;nbsp;файлу вообще.&lt;/span>&lt;br />
&lt;span class="cite">про регулярные выражения пишется отдельно&lt;/span>&lt;br />
awk&amp;nbsp;&amp;mdash; каждая строка проходит через последовательность условий; для&amp;nbsp;каждого условия, которому эта&amp;nbsp;строка удовлетворяет, выполняется соответствующий код&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2004-01-26 11:01:22</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-01-26+11%3A01%3A22</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-26+11%3A01%3A22">2004-01-26 11:01:22&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-02-01+20%3A57%3A44">2004-02-01 20:57:44&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">&lt;a name="h25-1">&lt;/a>&lt;h3>there's more than one&amp;nbsp;way to&amp;nbsp;do it&lt;/h3>&lt;a name="h25-2">&lt;/a>&lt;h3>Одна задача &amp;mdash; одна программа&lt;/h3>
Приведённый выше пример, кроме того, иллюстрирует и&amp;nbsp;другой подход: &amp;laquo;Одна задача &amp;mdash; одна&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">Этот пример, кроме того, иллюстрирует и&amp;nbsp;другой подход: &amp;laquo;Одна задача &amp;mdash; одна&lt;br />
&lt;span class="cite">TODO: gimp (2Ramendik &amp;mdash; что&amp;nbsp;будем с&amp;nbsp;этим делать?)&lt;/span>&lt;br />
TODO: there's more than one&amp;nbsp;way to&amp;nbsp;do it&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2004-01-25 23:33:12</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-01-25+23%3A33%3A12</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+23%3A33%3A12">2004-01-25 23:33:12&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-26+11%3A01%3A22">2004-01-26 11:01:22&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">В&amp;nbsp;большинстве случаев пользователю достаточно знать &lt;span class="missingpage">La&amp;nbsp;Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/LaTeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; приложение &lt;span class="missingpage">Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/TeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>, позволяющее легко создавать широкий круг документов. &lt;span class="missingpage">La&amp;nbsp;Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/LaTeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> позволяет разделить логическую структуру тексти и&amp;nbsp;его оформления, поэтому он&amp;nbsp;отлично подходит для&amp;nbsp;работы со&amp;nbsp;сложными документами, а&amp;nbsp;также является незаменимым инструментом при&amp;nbsp;создании текста с&amp;nbsp;большим количеством формул.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">В&amp;nbsp;большинстве случаев пользователю достаточно знать &lt;span class="missingpage">La&amp;nbsp;Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/LaTeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; приложение &lt;span class="missingpage">Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/TeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>, позволяющее легко создавать широкий круг документов. Многие авторы текстов считают, что&amp;nbsp;&lt;span class="missingpage">La&amp;nbsp;Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/LaTeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; отличный формат для&amp;nbsp;работы с&amp;nbsp;документом, а&amp;nbsp;не только для&amp;nbsp;его последующего оформления.&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2004-01-25 18:02:17</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-01-25+18%3A02%3A17</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+18%3A02%3A17">2004-01-25 18:02:17&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+23%3A33%3A12">2004-01-25 23:33:12&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Существуют даже графические форматы (pbm и&amp;nbsp;его вариации) где&amp;nbsp;либо заголовок, либо вообще все&amp;nbsp;данные идут в&amp;nbsp;текстом виде. Этот подход крайне удобен для&amp;nbsp;обработки данных скриптовыми языками (которые, в&amp;nbsp;отличии от&amp;nbsp;языков вроде Си, обычно имеют достаточно удобные и&amp;nbsp;мощный средства работы со&amp;nbsp;строками). Реально сейчас практически все&amp;nbsp;виды данных, разве что&amp;nbsp;кроме звуковых (мне неизвестно почему) имеют &amp;#8220;plain text&amp;#8221; вариант исполнения, хотя бы&amp;nbsp;для заголовков.&lt;br />
Язык bash обычно достаточен для&amp;nbsp;&amp;laquo;склеивания утилит&amp;raquo; в&amp;nbsp;чистом виде и&amp;nbsp;минимальной логики, хотя он&amp;nbsp;и обладает достаточно большими возможностями, обычно используют другие скриптовые языки, которые более пригодны для&amp;nbsp;сложной обработки данных. Эти&amp;nbsp;скриптовые языки могут быть сложнее в&amp;nbsp;изучении. Но&amp;nbsp;они обладают и&amp;nbsp;немалыми возможностями, позволяя ополнять недостающую логику и&amp;nbsp;создавать достаточно мощные программы. В&amp;nbsp;частности, именно на&amp;nbsp;скриптовых языках обычно реализуют логику работы сколь-либо сложных Web-сайтов (простой пример &amp;ndash; форумы), а&amp;nbsp;также системы управления (&lt;span class="missingpage">CMS&lt;/span>&lt;a href="http://freesource.info/wiki/ContentManagmentSystem/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; &lt;span class="missingpage">Content&amp;nbsp;Managment&amp;nbsp;System&lt;/span>&lt;a href="http://freesource.info/wiki/ContentManagmentSystem/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>), без&amp;nbsp;которой создание и&amp;nbsp;особенно поддержка сайта с&amp;nbsp;со сколь-либо сложным дизайном и&amp;nbsp;количеством страниц больше двух (обо мне&amp;nbsp;и&amp;nbsp;моей любимой кошке) превращается в&amp;nbsp;настоящий ад.&lt;br />
не&amp;nbsp;знаю. Несмотря на&amp;nbsp;написанные мною десятки тысяч строк кода на&amp;nbsp;Perl, я&amp;nbsp;полностью&lt;br />
&lt;span class="missingpage">Дональд&amp;nbsp;Кнут&lt;/span>&lt;a href="http://freesource.info/wiki/ДональдКнут/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> не&amp;nbsp;стал изобретать новый способ вёрстки (как это, по&amp;nbsp;сути, сделали позже создатели визуальных средств). Вместо этого он&amp;nbsp;тщательно проанализировал действия верстальщика бумажного научного издания (на докомпьютерной технике), вывел их&amp;nbsp;логику, и&amp;nbsp;создал язык для&amp;nbsp;оптимального описания действий в&amp;nbsp;этой логики.&lt;br />
По&amp;nbsp;сути &lt;span class="missingpage">Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/TeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;ndash; не&amp;nbsp;просто &amp;laquo;средство вёрстки&amp;raquo; и&amp;nbsp;даже не&amp;nbsp;язык разметки; это&amp;nbsp;полноценный язык программирования, описание которого (пусть и&amp;nbsp;самое поверхностное) не&amp;nbsp;может уместиться в&amp;nbsp;одной статье.&lt;br />
В&amp;nbsp;большинстве случаев пользователю достаточно знать &lt;span class="missingpage">La&amp;nbsp;Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/LaTeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; приложение &lt;span class="missingpage">Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/TeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>, позволяющее легко создавать широкий круг документов. Многие авторы текстов считают, что&amp;nbsp;&lt;span class="missingpage">La&amp;nbsp;Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/LaTeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; отличный формат для&amp;nbsp;работы с&amp;nbsp;документом, а&amp;nbsp;не только для&amp;nbsp;его последующего оформления.&lt;br />
Есть миф, что&amp;nbsp;в&amp;nbsp;Linux нет&amp;nbsp;средств для&amp;nbsp;подготовки 3D-графики. Я&amp;nbsp;промолчу про&amp;nbsp;такой коммерческий пакет как&amp;nbsp;Maya &amp;ndash; на&amp;nbsp;нём был&amp;nbsp;был сделан фильм &lt;span class="missingpage">Final&amp;nbsp;Fantasy&lt;/span>&lt;a href="http://freesource.info/wiki/FinalFantasy/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>, и&amp;nbsp;он отличается от&amp;nbsp;модной у&amp;nbsp;нас 3DStudioMax, как&amp;nbsp;Боинг от&amp;nbsp;дельтаплана. Также я&amp;nbsp;умолчу о&amp;nbsp;том, что&amp;nbsp;он&amp;nbsp;есть и&amp;nbsp;под другие ОС&amp;nbsp;(под Windows предлагается даже бесплатная &amp;laquo;персональная версия&amp;raquo;), а&amp;nbsp;также о&amp;nbsp;том, что&amp;nbsp;он&amp;nbsp;и под&amp;nbsp;них тоже написан в&amp;nbsp;классическом UNIX-стиле &amp;mdash; мухи отдельно, котлеты отдельно, в&amp;nbsp;смысле интерфейс отдельно, логика отдельно, то&amp;nbsp;есть движок для&amp;nbsp;рендеринга есть отдельное консольное приложение.&lt;br />
Коммерческий 3D-редактор, который был&amp;nbsp;выкуплен сообществом за&amp;nbsp;100'000$ и&amp;nbsp;отдан под&amp;nbsp;GPL. По&amp;nbsp;функциональности он&amp;nbsp;несколько слабее современных 3D Studio Max, однако имеет возможность подключать скрипты на&amp;nbsp;Python, может использовать из&amp;nbsp;командной строки для&amp;nbsp;рендеринга уже&amp;nbsp;готовых сцен, а&amp;nbsp;также может использоваться как&amp;nbsp;внешний движок для&amp;nbsp;формирования и&amp;nbsp;рендеринга сцен. При&amp;nbsp;всём при&amp;nbsp;этом он&amp;nbsp;весьма компактен по&amp;nbsp;размеру.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">Существуют даже графические форматы (pbm и&amp;nbsp;его вариации) где&amp;nbsp;либо заголовок, либо вообще все&amp;nbsp;данные идут в&amp;nbsp;текстом виде. Этот подход крайне удобен для&amp;nbsp;обработки данных скриптовыми языками (которые, в&amp;nbsp;отличии от&amp;nbsp;языков вроде Си, обычно имеют достаточно удобные и&amp;nbsp;мощный средства работы со&amp;nbsp;строками). Реально сейчас практически все&amp;nbsp;виды данных, разве что&amp;nbsp;кроме звуковых (мне неизвестно почему) имеют &amp;#8220;plain text&amp;#8221; вариант исполнения.&lt;br />
Язык bash обычно достаточен для&amp;nbsp;&amp;laquo;склеивания утилит&amp;raquo; в&amp;nbsp;чистом виде и&amp;nbsp;минимальной логики, хотя он&amp;nbsp;и обладает достаточно большими возможностями, обычно используют другие скриптовые языки, которые более пригодны для&amp;nbsp;сложной обработки данных. Эти&amp;nbsp;скриптовые языки могут быть сложнее в&amp;nbsp;изучении. Но&amp;nbsp;они обладают и&amp;nbsp;немалыми возможностями, позволяя ополнять недостающую логику и&amp;nbsp;создавать достаточно мощные программы. В&amp;nbsp;частности, именно на&amp;nbsp;скриптовых языках обычно реализуют логику работы сколь-либо сложных Web-сайтов (простой пример &amp;ndash; форумы), а&amp;nbsp;также системы управления (&lt;span class="missingpage">CMS&lt;/span>&lt;a href="http://freesource.info/wiki/ContentManagmentSystem/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; &lt;span class="missingpage">Content&amp;nbsp;Managment&amp;nbsp;System&lt;/span>&lt;a href="http://freesource.info/wiki/ContentManagmentSystem/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>), без&amp;nbsp;которой создание сайта с&amp;nbsp;со сколь-либо сложным дизайном и&amp;nbsp;количеством странице больше двух (обо мне&amp;nbsp;и&amp;nbsp;моей любимой кошке) превращается в&amp;nbsp;настоящий ад.&lt;br />
не&amp;nbsp;знаю. Несмотря на&amp;nbsp;написанные мною десятки тысяч строк кода на&amp;nbsp;этом языке, я&amp;nbsp;полностью&lt;br />
По&amp;nbsp;сути &lt;span class="missingpage">Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/TeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> это&amp;nbsp;не&amp;nbsp;язык разметки, это&amp;nbsp;полноценный язык программирования, даже обзорное описание которого не&amp;nbsp;может уместиться в&amp;nbsp;одной статье.&lt;br />
В&amp;nbsp;большинстве случаев пользователю достаточно знать &lt;span class="missingpage">La&amp;nbsp;Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/LaTeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; приложение &lt;span class="missingpage">Te&amp;nbsp;X&lt;/span>&lt;a href="http://freesource.info/wiki/TeX/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>, позволяющее легко создавать широкий круг документов.&lt;br />
Есть миф, что&amp;nbsp;в&amp;nbsp;Linux нет&amp;nbsp;средств для&amp;nbsp;подготовки 3D-графики. Я&amp;nbsp;промолчу про&amp;nbsp;такой коммерческий пакет как&amp;nbsp;Maya, который бесплатен для&amp;nbsp;персонального использования, и&amp;nbsp;на котором был&amp;nbsp;сделан фильм &lt;span class="missingpage">Final&amp;nbsp;Fantazy&lt;/span>&lt;a href="http://freesource.info/wiki/FinalFantazy/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>, и&amp;nbsp;который отличается от&amp;nbsp;модной у&amp;nbsp;нас 3DStudioMax как&amp;nbsp;Боинг от&amp;nbsp;дельтаплана. Также я&amp;nbsp;умолчу о&amp;nbsp;том, что&amp;nbsp;он&amp;nbsp;есть и&amp;nbsp;под другие ОС, а&amp;nbsp;также о&amp;nbsp;том, что&amp;nbsp;он&amp;nbsp;и под&amp;nbsp;них тоже написан в&amp;nbsp;классическом UNIX-стиле (мухи отдельно, котлеты отдельно, в&amp;nbsp;смысле интерфейс отдельно, логика отдельно), то&amp;nbsp;есть движок для&amp;nbsp;рендеринга это&amp;nbsp;отдельное консольное приложение.&lt;br />
Коммерческий 3D-редактор, который был&amp;nbsp;выкуплен сообществом за&amp;nbsp;100'000$ и&amp;nbsp;отдан под&amp;nbsp;GPL. По&amp;nbsp;функциональности он&amp;nbsp;несколько слабее современных 3D Studio Max, однако имеет возможность подключать скрипты на&amp;nbsp;Python, может использовать из&amp;nbsp;командной строки для&amp;nbsp;рендеринга уже&amp;nbsp;готовых сцен, а&amp;nbsp;также может использоваться как&amp;nbsp;внешний движок для&amp;nbsp;формирования и&amp;nbsp;рендеринга сцен.&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2004-01-25 17:46:50</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-01-25+17%3A46%3A50</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+17%3A46%3A50">2004-01-25 17:46:50&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+18%3A02%3A17">2004-01-25 18:02:17&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Главное, что&amp;nbsp;необходимо для&amp;nbsp;конструирования решения сложных задач с&amp;nbsp;помощью маленьких утилит &amp;ndash; стандартный подход к&amp;nbsp;обмену данными между программами. В&amp;nbsp;качестве такого подхода принято использовать &amp;#8220;plain text&amp;#8221; (простой текст). &lt;br />
Основное преимущество именно &lt;span class="missingpage">&amp;#8220;plain text&amp;#8221;&lt;/span>&lt;a href="http://freesource.info/wiki/PlainText/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> &amp;mdash; возможность на&amp;nbsp;любом этапе обработки оператору посмотреть самостоятельно промежуточные данные, а&amp;nbsp;также простота обработки текста с&amp;nbsp;помощью утилит sed/awk/col*/grep/sort/uniq и.т.д.&lt;br />
Существуют даже графические форматы (pbm и&amp;nbsp;его вариации) где&amp;nbsp;либо заголовок, либо вообще все&amp;nbsp;данные идут в&amp;nbsp;текстом виде. Этот подход крайне удобен для&amp;nbsp;обработки данных скриптовыми языками (которые, в&amp;nbsp;отличии от&amp;nbsp;языков вроде Си, обычно имеют достаточно удобные и&amp;nbsp;мощный средства работы со&amp;nbsp;строками). Реально сейчас практически все&amp;nbsp;виды данных, разве что&amp;nbsp;кроме звуковых (мне неизвестно почему) имеют &amp;#8220;plain text&amp;#8221; вариант исполнения.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">Главное, что&amp;nbsp;необходимо для&amp;nbsp;конструирования решения сложных задач с&amp;nbsp;помощью маленьких утилит &amp;ndash; стандартный подход к&amp;nbsp;обмену данными между программами. В&amp;nbsp;качестве такого подхода принято использовать &amp;lt;&amp;lt;plain text&amp;gt;&amp;gt; (простой текст).&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2004-01-25 17:44:14</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-01-25+17%3A44%3A14</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+17%3A44%3A14">2004-01-25 17:44:14&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+17%3A46%3A50">2004-01-25 17:46:50&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">&lt;span class="cite">TODO: gimp (2Ramendik &amp;mdash; что&amp;nbsp;будем с&amp;nbsp;этим делать?)&lt;/span>&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">gimp&lt;br />
TODO: регулярные выражения&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2004-01-25 17:43:02</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-01-25+17%3A43%3A02</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+17%3A43%3A02">2004-01-25 17:43:02&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+17%3A44%3A14">2004-01-25 17:44:14&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">&lt;span class="cite">TODO: кто&amp;nbsp;может подсказать что&amp;nbsp;нужно сказать про&amp;nbsp;&lt;span class="missingpage">Meta&amp;nbsp;Font&lt;/span>&lt;a href="http://freesource.info/wiki/MetaFont/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>?&lt;/span>&lt;br />
&lt;span class="cite">TODO: какие ссылки есть смысл поставить на&amp;nbsp;книги и&amp;nbsp;статьи по&amp;nbsp;latex для&amp;nbsp;начинающих?&lt;/span>&lt;br />
&lt;span class="cite">TODO: написать кто&amp;nbsp;такой &lt;span class="missingpage">Дональд&amp;nbsp;Кнут&lt;/span>&lt;a href="http://freesource.info/wiki/ДональдКнут/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> (для тех&amp;nbsp;кто этого не&amp;nbsp;знает, а&amp;nbsp;таких среди неспециалистов масса)&lt;/span>&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">!! TODO: кто&amp;nbsp;может подсказать что&amp;nbsp;нужно сказать про&amp;nbsp;&lt;span class="missingpage">Meta&amp;nbsp;Font&lt;/span>&lt;a href="http://freesource.info/wiki/MetaFont/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>?!!&lt;br />!!
 TODO: какие ссылки есть смысл поставить на&amp;nbsp;книги и&amp;nbsp;статьи по&amp;nbsp;latex для&amp;nbsp;начинающих? !!&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2004-01-25 17:36:07</title>
<link>http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay/show?time=2004-01-25+17%3A36%3A07</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay&amp;" class="">/Статья&amp;nbsp;Классический&amp;nbsp;Unix&amp;nbsp;Way&lt;/a> за &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+17%3A36%3A07">2004-01-25 17:36:07&lt;/a> и &lt;a href="http://freesource.info/wiki/Stat'jaKlassicheskijjUnixWay?time=2004-01-25+17%3A43%3A02">2004-01-25 17:43:02&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">&lt;ul>&lt;li> GNU-way и&amp;nbsp;UNIX-way это&amp;nbsp;две большие разницы, описывающих &lt;strong>разные&lt;/strong> вещи, первое это&amp;nbsp;&lt;u>технология&lt;/u>, второе это&amp;nbsp;&lt;u>идеология разработки&lt;/u>&lt;/li>&lt;/ul>&lt;/div>&lt;/div>
</description>
</item>
</channel>
</rss>
