Wie erstelle ich eine Datei, die X Bytes von 0, Y Bytes der Zahl 7 (also 0x07 in Hex, 00000111 in Binär), Z zufällige Bytes und T Bytes der Zahl 25 (0x19 in Hex, 00011001 in Binär) enthält? Schließlich sollte diese Datei die Größe X+Y+Z+T Bytes haben.
Antwort1
Installieren Sie „ghex“ aus dem Softwarecenter.
Gehen Sie zu einem Terminal und führen Sie aus touch hexfile
.
Öffnen Sie ghex und dann die „Hexfile“.
Drücken Sie die Einfügen-Taste und geben Sie dann die gewünschten Bytes ein.
Speichern.
Möglicherweise können Sie so etwas in einer Datei speichern, die Variablen (wie angewiesen) ändern, es ausführbar machen ( chmod +x filename
) und es dann ausführen ./filename
.
#!/bin/bash
#(C) 2011 Erik B. Andersen This script is licensed under the latest non-draft
#version of the AGPL as published by the Free Software Foundation (currently
#at http://www.gnu.org/licenses/) .
# Set the following four variables.
X=
Y=
Z=
T=
#######Don't need to change anything past here.
y=0
t=0
head -c $X /dev/zero >> structurefile
while [ $y -lt $Y ]; do echo -n -e "\x07"; y=$(($y+1)); done >> structurefile
head -c $Z /dev/urandom >> structurefile
while [ $t -lt $T ]; do echo -n -e "\x19"; t=$(($t+1)); done >> structurefile