i wzajemnie.
W razie potrzeby korzystam z RedHata.
i wzajemnie.
W razie potrzeby korzystam z RedHata.
Odpowiedzi:
Nie możesz tego zrobić, ponieważ do takiej konwersji musisz znać znaczenie treści binarnej.
Jeśli np. W pliku binarnym znajduje się ciąg, nie można go przekonwertować, a 4-bajtowa liczba całkowita może wymagać innego traktowania niż dwubajtowa liczba całkowita.
Innymi słowy, do konwersji kolejności bajtów potrzebny jest opis typu danych.
Możesz zamieniać bajtami za pomocą dd
. Czy to wystarczy? Jeśli nie, zaktualizuj swoje pytanie, podając przykładowy plik wejściowy i oczekiwany plik wyjściowy.
echo hello >infile
dd conv=swab <infile >outfile
hex infile
0000 68 65 6c 6c 6f 0a hello.
hex outfile
0000 65 68 6c 6c 0a 6f ehll.o
Jeśli nie obchodzi Cię zawartość pliku i po prostu chcesz zamienić bajty, spróbuj endconv . Jest to tylko opakowanie wokół standardowych funkcji konwersji bajtów, więc obsługuje konwersję liczb całkowitych o długości 2, 4 i 8 bajtów. Nie jest to jednak jedna linijka, ponieważ jest to osobny program.