Будьте добры, залейте перевод в svn-сервер проекта. С вопросами обращайтесь в конференцию.
Замечания (мои - курсивом, в вашем тексте - болдом):
1. Поэтому, если вы пишите код так ловко, как это возможно, вы по определению недостаточно умны, чтобы отладить его.
2. О примерах скриптов пишите в конференцию, поможем.
3. но строки, где интерпретатор Bash останавливается, становятся известными.
4. Что, если скрипт выполняется, но не работает, как ожидалось?
5. Постарайтесь найти, что неверно в Примере 29.3
6. раскрмментировав
7. Echo-заявления
8. полезны для того, чтобы видеть то, что вы действительно получаете.
предлагаю "чтобы видеть, что вы действительно получаете"
9. желемых
10. Однако есть более простые способы сделать это
Предлагаю "Однако есть более простые способы, чтобы сделать это"
11. #Правильные методы удаления имён файлов, содержащих пробелы.
12. Спасибо S.C.
без промежуточной точки
13. Итоговые особенности скрипта с ошибкой:
с двоеточием лучше
14. Список из трех элементов опущен (Итоговые особенности скрипта с ошибкой)
15. by Stefano Falsetto
Нужно переводить, уже обсуждалось
16. Использование ти фильтров
17. Установка параметров флагов -n -v -x
Предлагаю "Использование ключей -n -v -x"
18. sh -n scriptname проверяет наличие синтаксических ошибок без фактического запуска скрипта.
Без запятой
19. Это эквивалентно набору -n или -о noexec в скрипте
Очень грубый перевод. Лучше "Это эквивалентно вставке в сценарий команд set -n или set -o noexec"
20. Это эквивалентно вводу -v или -o в скрипт.
То же самое. "Set" не надо тут переводить как "набор"
21. Я бы переводил не "флаги", а "ключи" командной строки
22. Это эквивалентно вводу -х или -o xtrace в скрипт.
См. выше о set
23. Ввод -u или -o nounset запускает его
См. выше о set
Продолжение следует...
Часть вторая
Использование функции «assert — объявить»
Предлагаю убрать "- объявить". Либо, в крайнем случае, поместить объяснение в скобки с замечанием "прим. перев."
Пример 29.4. Проверка условия с объявлением
Предлагаю "Проверка условия с использованием функции assert"
Использование переменной $LINENO и встроенного вызова.
Неточный перевод, на мой взгляд, лучше "Использование переменной $LINENO и встроенной команды caller".
Ловушка на выходе.
Команда выхода запускает сигнал 0, прекращая процесс, то есть сам скрипт. [110] Это часто полезно для ловушки выхода, например форсируя «распечатку» переменных. Ловушка должна быть первой командой в скрипте.
И этот перевод можно улучшить, как мне кажется. Как - чуть попозже, кое-что выясняю для себя.
trap (ловушка)
Определяет действия при получении сигнала
Сигнал - это сообщение, переданное процессу;
ядро либо другой процесс передают его, чтобы совершить некоторые определенные действия (обычно для завершения процесса)
Например, нажатие Control-C отправляет сигнал прерывания INT к запущенной программе.
ловушка '' 2
#Игнорировать прерывание 2 (Control-C), когда действие не указано.
ловушка 'echo "Control-C disabled."' 2
#Сообщить, когда Control-C нажата.
trap здесь не переводится.
Упоминал выше, отпишусь позже.
команда trap
на мультипроцессорной машине
"ловушка" не переводится
ловушка '' 2 # Сигнал 2 Control-C, в настоящее время отключена.
команда
команда
команда
ловушка 2 # Reenables Control-C
"ловушка" не переводится
В версии 3 Bash ... в отладчике:
В третьей версии Bash
Количество аргументов командной строки, передающиеся скрипту, аналогична$#.
Последний параметр командной строки, передающийся в скрипт, эквивалентен ${!#}.
Массив переменных, связанный с оператором совпадения с шаблоном регулярного выражения =~
Жду ваших исправлений или комментариев.
Немного запоздало, но ранее не получалось отписать объявление:
"Предполагаемая дата переезда на Mercurial - 20-21 апреля 2010 года (вторник-среда на будущей неделе). Просьба участникам проекта ничего не коммитить в эти дни. Дополнительная информация будет сообщена позднее."
Проект перешел на DVCS Mercurial. Вы можете получить клон репозитория вот так:
hg clone http://www.bash-scripting.ru/abs-translate/
bash-scripting@conference.jabber.ru - jabber-конференция для участников проекта bash-scripting.ru
http://sivkaburka.blogspot.com