Отладка скриптов (bash и ко)

Все о программировании под *nix
master_of_shadows
Маньяк
Сообщения: 199
Зарегистрирован: 06 мар 2004, 19:23
Откуда: Минск
Контактная информация:

Отладка скриптов (bash и ко)

Сообщение master_of_shadows »

Уважаемый ALL.

Всё больше и больше прусь от мощИ скриптов в общем и баша в частности (не взирая на корявенький синтаксис). Но есть одна проблемма: отладка этих самых скриптов. Я отчётливо понимаю что отладчик этого счастья в принципе не возможен. Однако хотелось бы услышать/увидеть какие нибудь трики/типы и т.д. по упрощению жизни. А то я уже два раза дебажил скрипт по часу, а в нём была просто опечатка: лишний пробел, и вместо '|' вставил '>'.

Кто что может па раiць?
[Ubuntu 8.10] @ home PC & MSI Wind

...take a look at the sky, just before you die...

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

#!/bin/bash -x

И не стоит пытаться делать что-то сложное на shell, совершенно своеобразная обработка данныех, экранирование и т.п. радости сильно улосжняют жизнь. Лучше писать уж на perl каком.
Опыт растет прямо пропорционально выведенному из строя оборудованию

master_of_shadows
Маньяк
Сообщения: 199
Зарегистрирован: 06 мар 2004, 19:23
Откуда: Минск
Контактная информация:

Сообщение master_of_shadows »

Llama, ага, спасибо. Перл изучать не хочу. Не нравится мне он.

Другие варианты zsh, ksh? Может руби :)?
[Ubuntu 8.10] @ home PC & MSI Wind

...take a look at the sky, just before you die...

vics
Увлекающийся
Сообщения: 105
Зарегистрирован: 18 дек 2003, 09:58

Сообщение vics »


Аватара пользователя
grub
Неотъемлемая часть форума
Сообщения: 849
Зарегистрирован: 13 сен 2006, 10:29
Откуда: Минск
Контактная информация:

Сообщение grub »

master_of_shadows писал(а):Llama, ага, спасибо. Перл изучать не хочу. Не нравится мне он.

Другие варианты zsh, ksh? Может руби :)?
Не уворачивайся, таки придется хоть в базовом объеме, а освоить перл :)

Аватара пользователя
X-Stranger
Администратор
Сообщения: 1238
Зарегистрирован: 09 сен 2001, 04:46
Контактная информация:

Сообщение X-Stranger »

Что вы человека мучаете? Пусть Питон учит, раз Перл не нравится :)
usually I'm kind

Аватара пользователя
cympak
Увлекающийся
Сообщения: 114
Зарегистрирован: 26 окт 2005, 13:38

Сообщение cympak »

В питоне много буков. Как сказал мендоза (может до него тоже кто говорил, но я слышал именно от него) - perl это шелл на стероидах. И чем извращаться со всякими zsh ksh jsh - перл значительно лучше: многие вещи можно сделать на много проще, сделать можно на много больше.
...а на каком основании ограниченность некоторых делать законом для всех?

master_of_shadows
Маньяк
Сообщения: 199
Зарегистрирован: 06 мар 2004, 19:23
Откуда: Минск
Контактная информация:

Сообщение master_of_shadows »

<-- не фанат питона и перла.

Ну т.е. я бы не сказал что я их не люблю, но шо та они меня не прут, на первый взгляд :).

В сети частенько пробегают скрипты на перле которые смахивают на cat бинарщины. Не хочется с такими скриптами возится.

Но у перла есть дебагер - это плюс не сомненно. Надо будет глянуть.

Кстати, а кто на чём скрипты ваяет? На всём подряд, или есть любимый тул?
[Ubuntu 8.10] @ home PC & MSI Wind

...take a look at the sky, just before you die...

Аватара пользователя
mend0za
Неотъемлемая часть форума
Сообщения: 2332
Зарегистрирован: 30 авг 2002, 12:33
Откуда: Minsk

Сообщение mend0za »

Скрипты пишу:

- Bourne Shell - для автоматизации, связанной с простым увязыванием различных утилит в единое целое. Bourne Shell - базовый диалект для bash, ksh, ash/dash, zsh, все виды sh. Поддерживается и работает одинаково, везде и на всём.
Если надо из него обработать текст - обычно дёргаю sed.

- AWK (nawk/gawk) - сложная обработка текста. Простой синтаксис ( man nawk в openbsd - 6 страниц), очень быстрый. Подходит для чего угодно, вплоть до кодогенерации.

Perl/Python/Ruby считаю не средствами автоматизации, а языками общего назначения. И пользуюсь ими только в этом качестве, для крупных вещей.

master_of_shadows, привет :)
И увидел я зверя, выходящего из тундры. И число его было 3.14159265358979324...

vics
Увлекающийся
Сообщения: 105
Зарегистрирован: 18 дек 2003, 09:58

Сообщение vics »

Tcl, однако.

master_of_shadows
Маньяк
Сообщения: 199
Зарегистрирован: 06 мар 2004, 19:23
Откуда: Минск
Контактная информация:

Сообщение master_of_shadows »

mend0za, и тебе привет ;).

Странно, вот камрад cympak говорит, что ты перл вместо шела рекомендовал. А ты вона его в языки общего назначеняя запихал. В чём правда?

З.Ы. Одна из багов была с sed-ом. Пробел в регеэкспе :(. Всё таки отсутствие нормального клипборда решает... Все эти перечепятки убивают...
[Ubuntu 8.10] @ home PC & MSI Wind

...take a look at the sky, just before you die...

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

Использую shell для ваяния поделок в 1 - 10 строчек.
Для всего остального рекомендую perl. По сравнению с shell, вклчая bash, perl имеет следующие преимущества:
1) Нормальная, подчиняющаяся единым правилам, работа со строками и экранированием символов.
2) Крайне устойчивый и давно стабилизированый диалект языка, что позволяет отвязаться от платформеных и версионных особенностей различных платформ.
3) Более удобная работа с массивами.
4) Распространенность интерпретатора позволяет использовать достаточно сложные конструкции не опасаясь проблем переносимости.

Основной недостаток: некоторая избыточность становится заметна в маленьких лбо крайне простых скриптах.
Тоже недостаток: пока не попался в руки аналог shar. Впрочем, я особо и не искал.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Аватара пользователя
mend0za
Неотъемлемая часть форума
Сообщения: 2332
Зарегистрирован: 30 авг 2002, 12:33
Откуда: Minsk

Сообщение mend0za »

master_of_shadows писал(а):mend0za, и тебе привет ;).

Странно, вот камрад cympak говорит, что ты перл вместо шела рекомендовал. А ты вона его в языки общего назначеняя запихал. В чём правда?

З.Ы. Одна из багов была с sed-ом. Пробел в регеэкспе :(. Всё таки отсутствие нормального клипборда решает... Все эти перечепятки убивают...
Вырвал скорее всего из контекста, или неправильно понял.
И увидел я зверя, выходящего из тундры. И число его было 3.14159265358979324...

Аватара пользователя
grub
Неотъемлемая часть форума
Сообщения: 849
Зарегистрирован: 13 сен 2006, 10:29
Откуда: Минск
Контактная информация:

Сообщение grub »

master_of_shadows писал(а):Всё таки отсутствие нормального клипборда решает... Все эти перечепятки убивают...
ЕМНИП, это стандартный иксовый механизм...
Скопировать = выделить + шифт
Вставить = средняя кнопка мыши


Я сам долгое время мучался, пока cympak не показал. :)

Аватара пользователя
grub
Неотъемлемая часть форума
Сообщения: 849
Зарегистрирован: 13 сен 2006, 10:29
Откуда: Минск
Контактная информация:

Сообщение grub »

cympak писал(а):perl это шелл на стероидах
Это Реймонд кого-то цитировал в своей книженции... Возможно, что и самого Ларри.

Ответить