Preklopeni binarniho souboru do TXT
Václav Ovsík
vaclav.ovsik na gmail.com
Úterý Leden 24 14:08:00 CET 2017
On Tue, Jan 24, 2017 at 01:55:42PM +0100, Václav Ovsík wrote:
> On Tue, Jan 24, 2017 at 01:23:42PM +0100, Jan Waclawek wrote:
> > > dd if=/bin/sh bs=1 |od -Anone -tu1 -v | sed -r 's/^[[:space:]]+//; s/[[:space:]]+/,/g;'
> >
> > Vam nieco padlo na klavesnicu, pan kolega? ;-)
> >
> > Ale obdivujem Vas. Toto prevadzkovat v realnom zivote je snad este tazsie
> > ako programovat v BF... :-D
>
> tak jo, byla to trochu provokace, kdyz sla rec o te lenosti ;)
>
> Uz spis administruju nez programuju. Letmo jsem zkusil z cvicnych duvodu
> vzpomenout jako by se to napsalo v C
>
> #include <stdio.h>
>
> int main() {
> unsigned c;
> unsigned i = 0;
> while ( (c = getchar()) != EOF ) {
> printf("%d", c);
> putchar((++i & 0xF) == 0 ? '\n' : ',');
> }
> return 0;
> }
Anebo asi takto:
#include <stdio.h>
int main() {
unsigned c;
unsigned i = 0;
char sep = 0;
while ( (c = getchar()) != EOF ) {
if ( sep )
putchar(sep);
printf("%d", c);
sep = (++i & 0xF) == 0 ? '\n' : ',';
}
putchar('\n');
return 0;
}
To vypada, ze uz funguje ve shode s tim shell onelinerem.
zito na bobek:~$ echo Ahoj |od -Anone -tu1 -v | sed -r 's/^[[:space:]]+//; s/[[:space:]]+/,/g;'
65,104,111,106,10
zito na bobek:~$ echo Ahoj | /tmp/decdump
65,104,111,106,10
--
Zito
Další informace o konferenci Hw-list