- •II. First steps on the command line
- •5. Man pages
- •6. Working with directories (работа с папками)
- •7.Working with files
- •8. Working with file contents
- •9. The Linux file tree
- •III. Shell expansion
- •10. Commands and arguments
- •11. Control operators
- •12. Variables
- •13. Shell history
- •14. File globbing
- •IV. Pipes and commands
- •Глава 16. Фильтры.
- •16.3 Grep
- •16.7. Sort
- •16.8. Uniq
- •16.9. Comm
- •16.12. Примеры пайпов
- •Глава 17. Основные инструменты Unix
- •17.1. Find
- •17.2. Размещение
- •17.3. Date
- •17.5. Sleep
- •17.6. Time
- •17.7. Gzip - gunzip
- •17.8. Zcat - zmore
- •18.3. Замена и удаление символов (r X X)
- •18.4. Отменить и повторить (u .)
- •18.5. Вырезать, копировать и вставить строчки (dd yy p p)
- •18.6. Вырезать, копировать и вставить строчки (3dd 2yy)
- •18.8. Объединения двух и более линий (j)
- •18.9. Слова (w b)
- •18.10. Сохранить (или нет) и выход (:w :q :q! )
- •18.11. Поиск (/ ?)
- •18.13. Чтение файлов (:r :r !cmd)
- •19.1. Предпосылки
- •19.2. Hello World
- •19.4. Комментарии
- •20.2. Если, затем, иначе (if then else)
- •20.3. If then elif
- •20.4. For loop
- •20.5. While loop
- •21.2. Shift through parameters.
- •21.3. Runtime input.
- •21.3. Sourcing a config file.
- •21.5. Get script options with getopts.
- •21.6. Get shell options with shopt.
- •Глава 22 More scripting.
- •22.1. Eval.
- •22.4. Case.
- •22.5. Shell functions.
- •Раздел VII. Local user management. Глава 23. Users.
- •23.1. Identify yourself.
- •23.2. Users.
- •23.3. Passwords.
- •23.4 Home directories
- •23.5 User shell
- •23.6. Switcj users with su
- •23.7 Run a program as another user
- •23.10 Shell environment
- •Глава 24. Groups
- •24.1 About groups
- •24.2 Groupadd
- •24.3 /Etc/group
- •24.4 Usermod
- •24.5 Groupmod
- •24.6 Groupdel
- •24.7 Groups
- •24.8 Gpasswd
- •24.9 Vigr
17.3. Date
Команда dateможет отображать дату, время, часовой пояс и многое другое.
paul@rhel55 ~$ date
Sat Apr 17 12:44:30 CEST 2010
Строка даты может быть настроена для отображения формата по вашему выбору. Обращайтесь к странице руководства для других параметров.
paul@rhel55 ~$ date +'%A %d-%m-%Y'
Saturday 17-04-2010
Время на любой Unix рассчитывается в секундах, прошедших с 1969 года (первая секунда будучи первой секундой первого января 1970 года). Используйте date+%sдля отображения времени Unix в секундах.
paul@rhel55 ~$ date +%s
1271501080
Когда счетчик секунд достигнет двух миллиардов?
paul@rhel55 ~$ date -d '1970-01-01 + 2000000000 seconds'
Wed May 18 04:33:20 CEST 2033
17.4. cal
Команда calотображает текущий месяц, текущая дата выделена.
paul@rhel55 ~$ cal
April 2010
Su Mo Tu We Th Fr Sa
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
Вы можете выбрать любой месяц в прошлом или будущем.
paul@rhel55 ~$ cal 2 1970
February 1970
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
17.5. Sleep
Команда sleepиногда используется в скриптах, чтобы пользователь подождалn-ое количество секунд. Этот пример показывает, пять секунд ожидания.
paul@rhel55 ~$ sleep 5
paul@rhel55 ~$
17.6. Time
Команда timeпоказывает, сколько времени потребуется, чтобы выполнить команду. Команда data занимает немного времени.
paul@rhel55 ~$ time date
Sat Apr 17 13:08:27 CEST 2010
Real 0m0.014s
User 0m0.008s
sys 0m0.006s
Команда sleep 5занимает пятьреальныхсекунд на выполнение, но занимает немного времени на исполнение процессором.
paul@rhel55 ~$ time sleep 5
real 0m5.018s
user 0m0.005s
sys 0m0.011s
Эта команда bzip2сжимает файл и занимает много времени на исполнения процессором.
paul@rhel55 ~$ time bzip2 text.txt
real 0m2.368s
user 0m0.847s
sys 0m0.539s
17.7. Gzip - gunzip
Пользователю никогда не хватает места на диске, поэтому команда сжатия может пригодиться. Команда gzipможет сжать файлы и они занимают меньше места.
paul@rhel55 ~$ ls -lh text.txt
-rw-rw-r-- 1 paul paul 6.4M Apr 17 13:11 text.txt
paul@rhel55 ~$ gzip text.txt
paul@rhel55 ~$ ls -lh text.txt.gz
-rw-rw-r-- 1 paul paul 760K Apr 17 13:11 text.txt.gz
Вы можете получить исходный файл назад с помощью команды gunzip.
paul@rhel55 ~$ gunzip text.txt.gz
paul@rhel55 ~$ ls -lh text.txt
-rw-rw-r-- 1 paul paul 6.4M Apr 17 13:11 text.txt
17.8. Zcat - zmore
Текстовые файлы, сжатые с gzip могут быть просмотрены с помощьюzcatиzmore.
paul@rhel55 ~$ head -4 text.txt
/
/opt
/opt/VBoxGuestAdditions-3.1.6
/opt/VBoxGuestAdditions-3.1.6/routines.sh
paul@rhel55 ~$ gzip text.txt
paul@rhel55 ~$ zcat text.txt.gz | head -4
/
/opt
/opt/VBoxGuestAdditions-3.1.6
/opt/VBoxGuestAdditions-3.1.6/routines.sh
17.9. bzip2 - bunzip2
Файлы также можно сжать при помощи bzip2,которая занимает немного больше времени, чемgzip, но сжимает лучше.
paul@rhel55 ~$ bzip2 text.txt
paul@rhel55 ~$ ls -lh text.txt.bz2
-rw-rw-r-- 1 paul paul 569K Apr 17 13:11 text.txt.bz2
Файлы могут быть распакованы с помощью bunzip2.
paul@rhel55 ~$ bunzip2 text.txt.bz2
paul@rhel55 ~$ ls -lh text.txt
-rw-rw-r-- 1 paul paul 6.4M Apr 17 13:11 text.txt
17.10. bzcat - bzmore
И таким же образом, и bzcatbzmoreможет отображать файлы, сжатые с помощьюbzip2.
paul@rhel55 ~$ bzip2 text.txt
paul@rhel55 ~$ bzcat text.txt.bz2 | head -4
/
/opt
/opt/VBoxGuestAdditions-3.1.6
/opt/VBoxGuestAdditions-3.1.6/routines.sh
Part V. vi
Глава 18. Введение в vi
Редактор viустановлен почти на каждом Unix. Linux будет очень часто устанавливатьvim(улучшенный VI), который в принципе аналогичен. Каждый системный администратор должен знатьvi(m), потому что он является удобным инструментом для решения проблем. Редакторviне является интуитивно понятным, но как только вы поймёте его,viстановится достаточно мощным приложением. Большинство Linux дистрибутивов включаютvimtutor, который находится в 45 минутных уроках вvi(m).
18.1. командный режим и режим вставки
Редактор viоткрывается в командном режиме. В командном режиме вы можете вводить команды. Некоторые команды приведу вас в режим вставки. В режиме вставки вы можете ввести текст. Клавиша выхода вернет вас в командный режим.
Таблица 18.1. Работа в командном режиме
key |
action |
Esc |
Задает vi(m) в командном режиме |
18.2. Печать (a A i I o O)
Разница между A i I o и O это место, откуда вы можете начать печатать. С «а» вы начнете печатать после текущего символа, а с «А» начнете в конце текущей строки. С «i»вы начнете печатать до текущего символа, а с «I» начнете в начале текущей строки. С «о» вы начнете печатать с новой строчки после текущей строки и с «O» вы начнете печатать на новой строке до текущей строки.
Таблица 18.2. переход в режим вставки
command |
action |
a |
вы начнете печатать после текущего символа |
A |
вы начнете печатать начнете в конце текущей строки |
i |
вы начнете печатать до текущего символа |
I |
вы начнете печатать начнете в начале текущей строки |
o |
вы начнете печатать с новой строки после текущей строчки |
O |
вы начнете печатать на новой строке до текущей строки |