The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Частые ошибки программирования на Bash"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [ Отслеживать ]

"Частые ошибки программирования на Bash"  +/
Сообщение от opennews (ok) on 20-Дек-08, 21:31 
"Частые ошибки программирования на Bash" (часть 1 (http://bappoy.pp.ru/2008/12/13/bash-pitfalls-part01.html), часть 2 (http://bappoy.pp.ru/2008/12/18/bash-pitfalls-part02.html)) - перевод статьи Bash Pitfalls (http://wooledge.org:8000/BashPitfalls), в которой описаны некоторые подводные камни и ошибки программистов при составлении Bash скриптов.

URL: http://bappoy.pp.ru/2008/12/18/bash-pitfalls-part02.html
Новость: http://www.opennet.me/opennews/art.shtml?num=19486

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Частые ошибки программирования на Bash"  +/
Сообщение от pavlinux (ok) on 20-Дек-08, 21:31 
cat /etc/passwd | ( a(){count=0;
                           while read line ;
                                do
                                  ((count++));
                          done;
                         echo "total number of lines: $count";
                         return $count;}; a;); count=$?; echo $count;

Опа! :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Частые ошибки программирования на Bash"  +/
Сообщение от anonymous email(??) on 20-Дек-08, 22:54 
И к чему это "опа" относилось? К "{count=0;"?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Частые ошибки программирования на Bash"  +/
Сообщение от pavlinux (ok) on 20-Дек-08, 23:59 
# cat /etc/passwd | ( a(){ while read line; do ((count++)); done; echo "total number of lines: $count"; return $count;}; a;); count=$?;echo $count;

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Частые ошибки программирования на Bash"  +/
Сообщение от Andrey Mitrofanov on 21-Дек-08, 17:59 
>И к чему это "опа" относилось? К "{count=0;"?

$ ((count++)); echo $count
1
$ ((count++)); echo $count
2
$ ((count++)); echo $count
3
$ ((count++)); echo $count
4
$ yes|head -257 | ( a(){ while read line; do ((count++)); done; echo "total number of lines: $count"; return $count;}; a;); count=$?;echo $count;
total number of lines: 261
5
$ yes|head -257 |wc -l
257
$ _

Неужели к недоступности wc на уних-пазих-пла-атформе? :))

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Частые ошибки программирования на Bash"  +/
Сообщение от anonymous_peer (ok) on 17-Июл-09, 02:42 
У возвращаемого программой значения берутся только 8 младших битов. Так что здесь всё правильно: 261-256=5.

А count внутри ( ) установлен изначально уже не в 0, а в 4.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Частые ошибки программирования на Bash"  +/
Сообщение от Guest (??) on 21-Дек-08, 00:05 
Лучше бы написали про bash'измы и необходимость их избегать, в том числе [[ и ==
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Частые ошибки программирования на Bash"  +/
Сообщение от anonymous (??) on 21-Дек-08, 00:50 
Sorry, программирование на bash - конечно круто, но нужно помнить о кроссплатформенности! многие вещи в обычном sh не работают!
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "ошибки на Bash? непереносимые? непорядочек?"  +/
Сообщение от Andrey Mitrofanov on 21-Дек-08, 18:09 
Проблемы индейцев?

"""Поборники переносимости http:/openforum/vsluhforumID9/7769.html#9 допиливают пиломатериал напильником в сторонке. Без перекуров. :-P"""

И вообще, какие проблемы к переносимости _ошибок_ програмировния, ась?!! 8-)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру