Next Previous Contents

## 12. Оставшийся 1% дел

В самом деле больше чем 1%...

## 12.1 Использование tar и gzip

В UNIX существуют некоторые широко используемые приложения для архивации и сжатия файлов. `tar` используется для создания архивов---он похож на `PKZIP` или `Winzip`, но не производит сжатие, он только архивирует. Для создания нового архива используется команда:

> `

>     $ tar -cvf <archive_name.tar> <file> [file...]

> `

Для извлечения файлов из архива:

> `

>     $ tar -xpvf <archive_name.tar> [file...]

> `

Для перечисления содержимого архива:

> `

>     $ tar -tf <archive_name.tar> | less

> `

Вы можете сжать данные, используя программу `compress`, которая устарела и не должна больше использоваться, или с помощью `gzip`:

> `

>     $ compress <file>
>     $ gzip <file>

> `

что создает сжатые файлы с расширением `.Z` (`compress`) или `.gz` (`gzip`). Эти программы могут сжимать только один файл за раз. Для расжатия используются команды:

> `

>     $ compress -d <file.Z>
>     $ gzip -d <file.gz>

> `

RMP.

Также существуют утилиты `unarj`, `zip` и `unzip` (совместимые с PK??ZIP). Файлы с расширениями `.tar.gz` или `.tgz` (архивированные с помощью `tar`, а затем сжатые `gzip`) являются такой же вещью в UNIX как файлы .ZIP в DOS. Вот как выдать список файлов в архиве `.tar.gz`:

> `

>     $ tar -ztf <file.tar.gz> | less

> `

## 12.2 Установка приложений

Во первых: установка приложений -- это работа администратора. Большинство приложений для Linux распространяются в виде архивов `.tar.gz`, которые обычно содержат каталог, названный как и архив, который содержит файлы и/или подкаталоги.Хорошим правилом является установка этих программ из каталога `/usr/local` с помощью команды

> `

>     # tar -zxf <archive.tar.gz>

> `

прочитайте файл README или INSTALL. В большинстве случаев приложение распространяется в виде исходных текстов, которые вам надо скомпилировать; часто достаточно набрать команду `make`, а затем `make install`. Если в архиве есть файл `configure`, то сначала запустите его. Вам также необходимо иметь компилятор `gcc` или `g++`.

Другие архивы должны быть распакованы, находясь в каталоге /; это в случае с архивами, используемыми в Slackware. Другие архивы содержат только файлы, без подкаталогов---будьте осторожны, не запутайтесь! Всегда просмотрите список файлов в архиве до его установки.

Debian и Red Hat имеют свой собственный формат архивов -- соответственно `.deb` и `.rpm`. Последний приобретает широкое распространение; для установки пакета `rpm` наберите

> `

>     # rpm -i package.rpm

> `

## 12.3 Советы, без которых вы не сможете жить

Прокрутка назад: нажимая <SHIFT + PAG UP> (серая клавиша) вы можете прокрутить назад несколько последних страниц экрана, в зависимости от того, сколько у вас видеопамяти.

Сброс экрана: если вы выполнили команду `more` или `cat` для двоичного файла, то ваш экран может быть заполнен мусором. Для того, чтобы исправить это вслепую, наберите `reset` или такую последовательность символов: `echo CTRL-V ESC c RETURN`.

Вставка текста: Как сделать это в консоли, описано ниже; в X нажмите левую кнопку мыши и держа ее выделите необходимый текст, затем щелкните средней кнопкой мыши (или обоими кнопками, если у вас 2-х кнопочная мышь) для вставки текста в позиции курсора. Также есть приложение `xclipboard` (только для текста); не пугайтесь ее медленной работы.

Используя мышь: если у вас установлена программа `gpm`---драйвер мыши для консоли, то вы можете нажать на левую кнопку мыши и выделить текст, а затем нажать на правую кнопку мыши для вставки выделенного текста. Программа может работать между разными виртуальными консолями.

Сообщения от ядра: войдя под правами администратора посмотрите файл `/var/adm/messages` или `/var/log/messages` для того чтобы увидеть, что ядро сообщает вам, включая сообщения на этапе загрузки. Также удобна команда `dmesg`.

## 12.4 Где найти приложения

Если вы удивляетесь, должны ли вы заменить ваши старые и привычные приложения под DOS/Win приложениями под Linux, я предполагаю, что вы просмотрели основные архивы программного обеспечения для Linux: ftp://metalab.unc.edu/pub/Linux, ftp://tsx-11.mit.edu/pub/linux, и ftp://ftp.funet.fi/pub/Linux. Другим хорошим местом для поиска является ``Linux Applications and Utilities Page (Страница приложений и утилит для Linux)'' http://www.xnet.com/~blatura/linapps.shtml, и ``официальную'' страницу Linux http://www.linux.org.

## 12.5 Некоторые вещи, которые вы не могли делать

Linux может выполнять ужасно много вещей, которые были громоздкими, трудными или невозможными в DOS/Windows. Вот короткий список вещей, которые могут возбудит ваш аппетит:

- `at` позволяет вам запускать программы в указанное время;
- `awk` -- это простой, но мощный язык для манипулирования файлами данных (и не только). Например, допустим, что `data.dat` -- это ваш файл с множеством полей данных,

  > `

  >     $ awk '$2 ~ "abc" \{print $1, "\\t", $4\}' data.dat

  > `

  напечатает поля 1 и 4 из каждой строки файла `data.dat`, второе поле которой содержит ``abc''.
- `cron` полезен для выполнения периодических задач, в указанное время и дату. Наберите `man 5 crontab`.
- `file <filename>` скажет вам, чем является `filename` (ASCII текст, исполнимый файл, архив и т.п.);
- `find` (смотрите также раздел Каталоги: Перевод команд)---это одна из наиболее мощных и полезных команд. Она используется для поиска файлов, которые отвечают нескольким заданным критериям и для выполнения действий над этими файлами. В общем виде командная строка `find` выглядит так:

  > `

  >     $ find <каталог> <выражение>

  > `

  где <выражение> включает в себя критерии поиска и действия над найденными файлами. Примеры:

  > `

  >     $ find . -type l -exec ls -l \{\} \\;

  > `

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

  > `

  >     $ find / -name "*.old" -ok rm \{\} \\;

  > `

  находит все файлы, соответствующие заданному образцу, и удаляет их, сначала спрашивая у вас разрешение.

  > `

  >     $ find . -perm +111

  > `

  находит все файлы, чьи права доступа соответствуют 111 (исполнимые).

  > `

  >     $ find . -user root

  > `

  находит все файлы, принадлежащие пользователю root. Здесь есть много возможностей---RMP.
- `grep` находит заданный текст в файлах. Например,

  > `

  >     $ grep -l "geology" *.tex

  > `

  перечислит все файлы *.tex, в которых содержится слово ``geology''. Вариант этой программы под названием `zgrep` работает со сжатыми файлами. RMP;
- регулярные выражения---являются сложным, но мощным способом выполнения операций поиска в тексте. Например, `^a[^a-m]X\{4,\}txt$` соответствует строке, которая начинается на `a', за которым следует любой символ, за исключением входящих в интервал a-m, за которым следует 4 или больше символов `X', и заканчивается на `txt'. Вы можете использовать регулярные выражения в мощных редакторах, программе `less`, и многих других приложениях. Для введения в регулярные выражения прочитайте справочную страницу для `grep`.
- команда `script <script_file>` выдаст вам на экран содержимое `script_file`, до тех пор пока вы не выполните команду `exit`. Полезно для отладки;
- `sudo` позволяет пользователям выполнять некоторые обязанности администратора (например форматирование и монтирование дисков; RMP);
- `uname -a` выдаст вам информацию о вашей системе;
- `zcat` и `zless` полезны для просмотра и печати сжатых файл без их расжатия. Например:

  > `

  >     $ zless textfile.gz
  >     $ zcat textfile.gz | lpr

  > `

- Следующие команды часто бывают полезны: `bc, cal, chsh, cmp, cut, fmt, head, hexdump, nl, passwd, printf, sort, split, strings, tac, tail, tee, touch, uniq, w, wall, wc, whereis, write, xargs, znew.` RMP.

## 12.6 Использование утилит для UNIX в DOS/Windows

Верьте этому или нет, но существуют утилиты, которые обеспечивают UNIX-подобную среду в DOS/Windows! Одной из них является набор Djgpp ( http://www.delorie.com/djgpp) для DOS, в то время как Cygnus ( http://www.cygnus.com) является более сложным портом для Win32. Они оба включают в себя те же средства разработки GNU и утилиты, как и Linux; хотя вы не получите той же стабильности и производительности.

Если вы хотите почувствовать вкус Linux, попробуйте пакет Djgpp. Скачайте и установите следующий файлы (во время написания последней версией была версия 2.02): `djdev202.zip, bnu281b.zip, bsh1147b.zip, fil316b.zip, find41b.zip, grep22b.zip, gwk303b.zip, lss332b.zip, shl112b.zip.`. Инструкции по установке включены в дистрибутив и вы можете получить помощь в news:comp.os.msdos.djgpp.

В частности, использование `bash` в DOSWin является глотком свежего воздуха. Для его правильной настройки отредактируйте поставляемый файл `BOOT.BAT` для того, чтобы он соответствовал вашим настройкам, а затем поместите эти файлы в ваш домашний каталог (на разделе Windows) вместо тех, которые поставляются в дистрибутиве:

> `

>     # это _bashrc

>     LS_OPTIONS="-F -s --color=yes"
>     alias cp='cp -i'
>     alias d='ls -l'
>     alias l=less
>     alias ls="ls $LS_OPTIONS"
>     alias mv='mv -i'
>     alias rm='rm -i'
>     alias u='cd ..'

> `

> `

>     # это _bprof
>     if [ -f ~/_bashrc ]; then
>       . ~/_bashrc
>     fi
>     PS1='\\w\\$ '
>     PS2='> '
>     CDPATH="$CDPATH:~"
>     # stuff for less(1)
>     LESS="-M-Q"                     # long prompt, silent
>     LESSEDIT="%E ?lt+%lt. %f"       # edit top line
>     VISUAL="jed"                    # editor
>     LESSCHARSET=latin1              # visualise accented letters
>     export PS1 PS2 CDPATH LS_OPTIONS LESS LESSEDIT LESSOPEN VISUAL LESSCHARSET

> `

## 12.7 Общие расширения файлов и соответствующие программы

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

- `1 ... 8`: справочные страницы. Читайте их с помощью команды `groff -Tascii -man <file.1>`.
- `arj`: архивы, созданные программой `arj`.
- `dvi`: выходной файл, созданный программой TeX (смотрите ниже). `xdvi` используется для его показа; а `dvips` -- для преобразования его в файл PostScript `.ps`.
- `gz`: архивы, созданные `gzip`.
- `info`: файл для программы info file (альтернатива справочным страницам). Возьмите пакет `texinfo`.
- `lsm`: Файл Linux Software Map (Карты программного обеспечения Linux). Это обычный ASCII-файл, содержащий описание пакета программ.
- `ps`: Файл PostScript. Для его просмотра или печати возьмите программу `gs` и, при необходимости, программу `ghostview` или `gv`.
- `rpm`: Пакет Red Hat. Вы можете установить его на любой системе, используя менеджер пакетов `rpm`.
- `taz, tar.Z`: архив, созданный `tar` и сжатый программой `compress`.
- `tgz, tar.gz`: архив, созданный `tar` и сжатый `gzip`.
- `tex`: текстовый файл с информацией для TeX, мощной системы форматирования теста. Возьмите пакет `tex`, доступный в многих дистрибутивах.
- `texi`: файл texinfo, вы можете сделать из него и файлы TeX и файлы info (`info`). возьмите пакет `texinfo`.
- `xbm, xpm, xwd`: графические файлы.
- `Z`: архив, созданный программой `compress`.

## 12.8 Преобразование файлов

Если вам необходимо обмениваться текстовыми файлами между DOS/Win и Linux, то будьте осторожны с проблемой ``конца строки''. В DOS каждая строка оканчивается символами CR/LF (ASCII 13 + ASCII 10), а в Linux -- символом LF. Если вы редактируете текстовый файл из DOS в Linux, то каждая строка будет оканчиваться странно-выглядящим символом `M'; а текстовый файл из Linux в DOS появится как огромная одиночная строка без разбиения на параграфы. Существуют утилиты `dos2unix` и `unix2dos` для преобразования файлов.

Если ваш текстовый файл содержит символы с диактрическими знаками, то убедитесь, что они набраны в Windows (в Notepad), а не в чистом DOS; в ином случае символы будут потеряны.

Преобразование файлов Word или WordPerfect в текстовые файлы сложнее, но возможно. Вам необходима одна из утилит, которую можно найти на серверах CTAN; один из них ftp://ftp.tex.ac.uk. Возьмите программу `word2x` из каталога /pub/tex/tools/, или попробуйте программы, находящиеся в каталоге /pub/tex/support/. В частности `word2x` преобразует файлы Word 6, тогда как для файлов Word 97 вам необходима программа `mswordview` ( http://www.csn.ul.ie/~caolan/docs/MSWordView.html), которая преобразует эти файлы в HTML.

## 12.9 Свободные офисные пакеты

Если преобразования файлов вам недостаточно, то вы можете вцепиться зубами в (свободный!) Microsoft Office--подобный пакет.

В настоящее время StarOffice ( http://www.sun.com/staroffice) является единственным выбором, хотя Koffice развивается ( http://www.koffice.org). Он большой, иногда медленен, но в любом случае хорош: Он предоставляет функциональные возможности, которых нет в Microsoft Office. Он также может читать и записывать файлы Word и Excel, хотя преобразования не всегда нормальны.

Другим хорошим пакетом является Corel WordPerfect, свободная версия которой доступна для загрузки. Должен я еще что-нибудь сказать? Скачать его можно с http://www.corel.com.

Next Previous Contents