[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT]: Bash String formatieren



On 2008-10-09, Jens Franik wrote:
> am Donnerstag, 9. Oktober 2008 um 16:37 schrieb Boris Höffgen:

>> wie formatiere ich mittels der Bash den folgenden String
>> 0:a:ef:45:7:ad:ad:ad in 00:0A:EF:45:07:AD:AD:AD?

[…]

> Ein Teil deines Problem lässt sich so lösen, nur 0 nach 00 müsstest du
> wohl noch mit sed machen:

> $ echo '0:a:ef:45:7:ad:ad:ad' | tr "[:lower:]" "[:upper:]" | sed s/0/00/
> 00:A:EF:45:7:AD:AD:AD

Nachdem etliche Lösungen für dieses Problem eingegangen sind, muß ich
noch eine anbringen:

FOO=0:a:ef:45:7:ad:ad:ad
printf '%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X\n' `echo 0x${FOO//:/ 0x}`

Diese hat zumindest unter der zsh den Vorteil, daß sie keine externe
Programme braucht. printf ist hier ein Builtin.

Die Lösung funktioniert auch unter der bash.

HTH Gerhard
-- 
Encrypted Mails preferred; GPG-Key: 0xDA3CCF45
Fingerprint = 61AD 255A 34C9 1050 65BD  0523 E527 CA4B DA3C CF45
To be beautiful is enough! if a woman can do that well who should demand
more from her?  You don't want a rose to sing.
		-- Thackeray


Reply to: