Fala Tiago, isso tem no meu livro há mais de 3 edições e acho que tb tem no Papo de Botequim <http://www.julioneves.com>.
Abraços, Julio :wq Em 12/07/07, Tiago Barcellos Peczenyj <[EMAIL PROTECTED]> escreveu: > > Muito interessante esta dica que vi no "Advanced Bash-Scripting Guide" > do Mendel Cooper [ http://tldp.org/guides.html ] e, inclusive, > publiquei no meu blog com um adendo sobre fazer o mesmo usando o bc > que todo mundo deve estar careca de saber. > > Com Bash, podemos representar números nas mais variadas bases, desde 2 > até 64 usando o operador # como no exemplo abaixo: > > X=101 > for BASE in 2 8 10 16 32 64 ; do > echo "$X na base $BASE eh $(( ${BASE}#${X} ))" # conversao pra decimal > done > 101 na base 2 eh 5 > 101 na base 8 eh 65 > 101 na base 10 eh 101 > 101 na base 16 eh 257 > 101 na base 32 eh 1025 > 101 na base 64 eh 4097 > > echo $((16#FF)) $((32#V)) > 255 31 > > echo $((64#z)) $((64#Z)) $((64#@)) $((64#_)) # atenção nos 2 ultimos! > 35 61 62 63 > > Além de ser possível usar a notação de octal e hexa do C (iniciar a > expressão com 0 e 0x, respectivamente) > > echo $((10)) $(( 010 )) $(( 0x10 )) $((10 + 010 + 0x10)) > 10 8 16 34 > > -- > Tiago B Peczenyj > Linux User #405772 > > http://peczenyj.blogspot.com/ > > -- Abraços, Julio http://www.julioneves.com - Um livro sobre Bash completo e on-line :wq [As partes desta mensagem que não continham texto foram removidas]