1.1, pavlinux (ok), 21:31, 20/12/2008 [ответить]
| +/– |
cat /etc/passwd | ( a(){count=0;
while read line ;
do
((count++));
done;
echo "total number of lines: $count";
return $count;}; a;); count=$?; echo $count;
Опа! :)
| |
|
|
3.3, pavlinux (ok), 23:59, 20/12/2008 [^] [^^] [^^^] [ответить]
| +/– |
# cat /etc/passwd | ( a(){ while read line; do ((count++)); done; echo "total number of lines: $count"; return $count;}; a;); count=$?;echo $count;
| |
3.6, Andrey Mitrofanov (?), 17:59, 21/12/2008 [^] [^^] [^^^] [ответить]
| +/– |
>И к чему это "опа" относилось? К "{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 на уних-пазих-пла-атформе? :))
| |
|
4.8, anonymous_peer (ok), 02:42, 17/07/2009 [^] [^^] [^^^] [ответить]
| +/– |
У возвращаемого программой значения берутся только 8 младших битов. Так что здесь всё правильно: 261-256=5.
А count внутри ( ) установлен изначально уже не в 0, а в 4.
| |
|
|
|
1.4, Guest (??), 00:05, 21/12/2008 [ответить]
| +/– |
Лучше бы написали про bash'измы и необходимость их избегать, в том числе [[ и ==
| |
1.5, anonymous (??), 00:50, 21/12/2008 [ответить]
| +/– |
Sorry, программирование на bash - конечно круто, но нужно помнить о кроссплатформенности! многие вещи в обычном sh не работают!
| |
|
2.7, Andrey Mitrofanov (?), 18:09, 21/12/2008 [^] [^^] [^^^] [ответить]
| +/– |
Проблемы индейцев?
"""Поборники переносимости http:/openforum/vsluhforumID9/7769.html#9 допиливают пиломатериал напильником в сторонке. Без перекуров. :-P"""
И вообще, какие проблемы к переносимости _ошибок_ програмировния, ась?!! 8-)
| |
|
|