Книга: Искусство программирования на языке сценариев командной оболочки
Пример 17-1. dummyfile: Создание 2-х строчного файла-заготовки
Пример 17-1. dummyfile: Создание 2-х строчного файла-заготовки
#!/bin/bash
# Неинтерактивное редактирование файла с помощью 'vi'.
# Эмуляция 'sed'.
E_BADARGS=65
if [ -z "$1" ]
then
echo "Порядок использования: `basename $0` filename"
exit $E_BADARGS
fi
TARGETFILE=$1
# Вставить 2 строки в файл и сохранить.
#--------Начало встроенного документа-----------#
vi $TARGETFILE <<x23LimitStringx23
i
Это строка 1.
Это строка 2.
^[
ZZ
x23LimitStringx23
#----------Конец встроенного документа-----------#
# Обратите внимание: ^[, выше -- это escape-символ
#+ Control-V <Esc>.
# Bram Moolenaar указывает, что этот скрипт может не работать с 'vim',
#+ из-за возможных проблем взаимодействия с терминалом.
exit 0
Этот сценарий, с тем же эффектом, мог бы быть реализован, основываясь не на vi, а на ex. Встроенные документы, содержащие команды для ex, стали настолько обычным делом, что их уже смело можно вынести в отдельную категорию -- ex-сценарии.
- Пример 17-1. dummyfile: Создание 2-х строчного файла-заготовки
- Пример 17-2. broadcast: Передача сообщения всем, работающим в системе, пользователям
- Пример 17-3. Вывод многострочных сообщений с помощью cat
- Пример 17-4. Вывод многострочных сообщений с подавлением символов табуляции
- Пример 17-5. Встроенные документы и подстановка параметров
- Пример 17-6. Отключение подстановки параметров
- Пример 17-7. Передача пары файлов во входящий каталог на "Sunsite"
- Пример 17-8. Встроенные документы и функции
- Пример 17-9. "Анонимный" Встроенный Документ
- Пример 17-10. Блочный комментарий
- Пример 17-11. Встроенная справка к сценарию
- Пример 17-10. Блочный комментарий
- Пример 17-4. Вывод многострочных сообщений с подавлением символов табуляции
- Пример 17-6. Отключение подстановки параметров
- Пример 17-11. Встроенная справка к сценарию
- Пример 17-3. Вывод многострочных сообщений с помощью cat
- Пример 17-5. Встроенные документы и подстановка параметров
- Пример установочного скрипта
- Пример из практики
- Создание файлов с блокировкой
- ПРИМЕР ПРОСТОЙ ПРОГРАММЫ НА ЯЗЫКЕ СИ
- Эффективная работа с временными файлами сортировки
- Создание свободно позиционируемых элементов