LINUX.ORG.RU

bash и супер арифметика? Оо


0

0

fura ~$ a=47; echo $(($a)) 47 fura ~$ a=047; echo $(($a)) 39

речь про то - откуда у него ТАКИЕ мылси про нули?

кстати если подобавлять нулей спереди - получаются разные и интересные цифры )

★★★

блин куда дели преформат :(

fura ~$ a=47; echo $(($a))

47

fura ~$ a=047; echo $(($a))

39

fura13 ★★★
() автор топика

очевидно же, что ведущий ноль означает восьмеричную систему исчисления

anonymous
()
Ответ на: комментарий от lodin

> Не очевидно, а хорошо известно, но да. Из C пришло...

Права на файл в unix-подобных системах тоже задаются в восьмеричной, а не десятичной системой.

andreyu ★★★★★
()
Ответ на: комментарий от andreyu

Однако ж мы пишем chmod 666, а не chmod 0666 -- просто в данном случае восьмеричная система удобнее любой другой.

lodin ★★★★
()
Ответ на: комментарий от lodin

> Однако ж мы пишем chmod 666, а не chmod 0666 -- просто в данном случае восьмеричная система удобнее любой другой.

Но правильно писать 0666, а не 666.

andreyu ★★★★★
()
Ответ на: комментарий от lodin

> Однако ж мы пишем chmod 666, а не chmod 0666 — просто в данном случае
> восьмеричная система удобнее любой другой.

Ноль здесь относится не к восьмеричной системе, а к тому, что не нужно 
устанавливать suid/sgid биты.

Кстати, в zsh:

(zyx:~) % a=47 ; echo -n "$a: " ; echo $(( $a ))
47: 47
(zyx:~) % a=047 ; echo -n "$a: " ; echo $(( $a ))
047: 47
(zyx:~) % a=0x47 ; echo -n "$a: " ; echo $(( $a ))
0x47: 71

ZyX
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.