В действительности это больше, чем 1%...
Под UNIX имеются некоторые широко используемая приложения для архивации и
сжатия файлов. tar
используется, чтобы сделать архив --- он подобен PKZIP
,
но не сжимает. Сделать новый архив:
$ 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
(PKZIP
совместимые). Файлы с
расширением .tar.gz
или .tgz
(сархивированный tar
, затем сжатый gzip
) -
наиболее общие в мире UNIX, поскольку .ZIP файлы находятся под DOS. Вот как
вывести список содержимого .tar.gz
архива:
$ tar -ztf <file.tar.gz> | less
9.2. Установка приложений
Прежде всего: установка пакетов - работа root. Большинство Linux приложений
распространяется как .tar.gz
архивы, которые обычно будут содержать каталог,
называемый pkgname/
содержащий файлы и/или подкаталоги. Есть хорошее правило
для установки этих пакетов - устанавливайте их в /usr/local
командой
# tar -zxf <archive.tar.gz>
затем читайте README
или INSTALL
файлы. Во многих случаях, пакет
распространяется в виде исходных текстов, коорые вам надо скомпилировать,
чтобы создать бинарные файлы; обычно, надо напечатать make
, затем
make install
и все. Очевидно, что вам нужен компилятор gcc
или g++
.
Другие архивы возможно надо распаковать из /
; это относится к архивам
Slackware. Другие архивы содержат файлы без подкаталогов. Всегда
просматривайте список содержание архива перед установкой этого.
Дистрибутивы Debian и Red Hat имеют собственные форматы архивов;
соответственно, .deb
и .rpm
. Последний особенно широко распространен; чтобы
установить .rpm
пакет, напечатайте
# rpm -i package.rpm
Дописывание команды: нажатие <TAB> при наборе команды завершит командную
строку за Вас. Пример: Вы должны напечатать gcc this_is_a_long_name.c
;
напечатайте gcc thi<TAB>
. (Если у Вас имеются другие файлы, которые
начинаются с тех же самых символов, то следут набирать достаточное количество
символов, чтобы решить эту неоднозначность.)
Просмотр экрана вверх: нажатие <SHIFT + PAGUP> (серая клавиша) позволяет Вам прокрутить эркран вверх на несколько страниц, в зависимости от того, сколько видеопамяти Вы имеете.
Сброс экрана: если Вам случилось применить more или cat для двоичных файлов,
то ваш экран может заполниться мусором. Чтобы это поправить, вслепую
напечатайте reset
или наберите последовательность символов:
echo CTRL-V ESC c RETURN
.
Вставка текста: в консоли, см. ниже; в X, нажмите, и переместите мышь, чтобы
выбрать текст в окне xterm
, затем нажмите среднюю кнопку (или две кнопки
вместе, если у Вас мышь с двумя кнопками), чтобы вставить текст. Имеется
также xclipboard
(только для текста); не пугайтесь очень медленного ответа.
Использование мыши: если Вы установили gpm
, драйвер мыши для консоли, Вы
можете нажимать и перемещаться, чтобы выбрать текст, затем правый щелчок,
чтобы вставить выбранный текст. Этот прием работает и для разных VC.
Сообщения от ядра: просмотрите в /var/adm/messages
или /var/log/messages
от
root, чтобы увидеть то, что ядро сообщает Вам, включая загрузочные сообщения.
Удобно для этого использовать команду dmesg
.
Если вы задаетесь вопросом, имеются ли приложения для замены ваших старых
DOS/Win, я предлагаю Вам просмотреть главные склады программного обеспечения
Linux: ftp://sunsite.unc.edu/pub/Linux
,
ftp://tsx-11.mit.edu/pub/linux
,
и
ftp://ftp.funet.fi/pub/Linux
. Другое классное место - это
``Страница приложений и утилит Linux'' на
http://www.xnet.com/~blatura/linapps.shtml
.
Linux может делать ужасно много вещей, которые было тяжело, трудно или невозможно сделать в DOS/Win. Вот короткий список тех возможностей, которые могут вас заинтересовать:
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 <directory> <выражение>
где <выражение> включает критерии поиска и действия. Примеры:
$ find . -type l -exec ls -l {} \;
Находит все файлы, которые являются символическими связями, и показывает на что они указывают.
$ find / -name "*.old" -ok rm {} \;
Находит все файлы, соответствующие образцу и удаляет их, сначала запрашивая ваше разрешение.
$ find . -perm +111
Находит все файлы, чьи права доступа соответствуют 111 (выполнимой программе).
$ find . -user root
ищет все файлы, которые принадлежат root. Существует большое количество возможностей --- RMP.
grep
ищет по текстовым образцам в файлах. Например,
$ grep -l "геология" *.tex
перечисляет файлы *.tex
, которые содержат слово "геология". Вариант zgrep
работает на gzipped файлах. RMP;
^a[^a-m]X{4,}txt$
соответствует строке, которая
начинается с "а", далее идет любой символ за исключением тех, что находятся
в интервале a-m
, далее 4 или больше символов "X", и в конце "txt"
. Вы
используете регулярные выражения с мощными редакторами, less
и многими
другими приложениями. Почитайте man grep
для примера использования
регулярных выражений.
script <script_file>
отображает на экране содержимое script_file
до тех
пор, пока вы не введете команду exit
. Полезен для отладки;
sudo
позволяет пользователям выполнять некоторые из задач root (например,
форматирование и монтирование дисков; RMP);
uname -a
выдает имя вашей системы;
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.
Вы можете натолкнуться на множество расширений файлов. Исключив более экзотические (то есть шрифты, и т.д.), перечислим и разъясним некоторых из них:
1 ... 8
: man страницы. Маловероятно, что у Вас их нет, нужен man
.
arj
: архив, созданный arj
.
dvi
: результат работы TeX (см. ниже). Эти файлы отображаются xdvi
; dvips
преобразует их в формат PostScript - .ps
файлы.
gz
: архив, созданный gzip
.
info
: файл info (альтернатива для man страниц). Нужен info
.
lsm
: файл Linux Software Map. Он содержит описание пакета в формате
простого ASCII текста.
ps
: файл PostScript. Для отображения или печати нужен gs
и, возможно,
ghostview
или gv
.
rpm
: пакет Red Hat. вы можете установить его на любой системе,
использующей менеджер пакетов rpm
.
taz, tar.Z
: архив, созданный tar
и сжатый compress
.
tgz, tar.gz
: архив, созданный tar
и сжатый gzip
.
tex
: текстовый файл, созданный TeX, мощной печатной системой. Нужен пакет
tex
, который доступен во многих дистрибутивах; но остерегайтесь NTeX
,
который разрушает шрифты и включен в некоторые версии Slackware.
texi
: texinfo
файл, может обрабатывать и TeX
, и info
файлы (cp. info
).
Нужен texinfo
.
xbm, xpm, xwd
: графический файл. Их можно редактировать с помощью xpaint
.
Z
: архив создан утилитой compress
.
Если Вам нужно переносить текстовые файлы между DOS/Win и Linux, то
берегитесь проблемы "конца строки". Под DOS конец каждой строки заканчивается
комбинацией CR/LF, в то время как в Linux - символом LF. Если Вы попробуете
отредактировать текстовый файл DOS под Linux, каждая строка скорее всего
будет заканчиваться странно выглядищим символом `M'; текстовый файл Linux под
DOS будет выглядеть как одна километровая строка без параграфов. Имеется пара
утилит, dos2unix
и unix2dos
, для преобразования текстовых файлов.
Если ваши файлы содержат символы с диакритическим знаком, удостоверьтесь, что они сделаны под Windows (скажем, с помощью Write или Notepad), а не под простым DOS; иначе, все символы с диакритическим знаком будут искажены.
Преобразовать файлы в формате Word или WordPerfect в простой текст немного
сложнее, но вполне возможно. Вам понадобится одна из утилит, которые могут
быть найдены на сайтах CTAN; например -
ftp://ftp.tex.ac.uk
. Возьмите
пакет word2x
из каталога /pub/tex/tools/
, или попробуйте пакеты в каталоге
/pub/tex/support/
. Я пробовал только word2x
, и работает он очень хорошо.