Also ich habe x Dateien die möchte ich alle verschieben aber weil x dateien einzel verschieben kompliziert ist packe ich diese in eine datei diese muss ich nur ausführen und schon werden alle x dateien wieder hergesellt. das sieht den so aus ( das Skript oben und das ist das ergebniss ):
1
2
3
4
5
6
7
8
9
10
11
12
13 | #!/bin/bash
cat > d1.txt << x3e7705498e8be60520841409ebc69bc1
test1
x3e7705498e8be60520841409ebc69bc1
echo Datei wurde wieder Hergestellt d1.txt
cat > d2.txt << x3e7705498e8be60520841409ebc69bc1
test2
x3e7705498e8be60520841409ebc69bc1
echo Datei wurde wieder Hergestellt d2.txt
cat > d3.txt << x3e7705498e8be60520841409ebc69bc1
hallo
x3e7705498e8be60520841409ebc69bc1
echo Datei wurde wieder Hergestellt d3.txt
|
nur wenn ich ein Skript zusammen füge möchte und die fertige datei ausführe ( und damit das skript wieder herstellen möchte ) macht er das nicht weil ich im Here Doc subshell benutze und dieses Subshell sollte eigentlich ignoriert werden und nicht ausgeführt werden.
Beispiel folgt hier :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 | #!/bin/bash
cat > tinyshar << x6bb1a0f20dfa3c78b28138e0ae719e31
#!/bin/bash
echo "#!/bin/bash"
for file in "$@"
do
MD5="x$(md5sum $@)"
EOF=${MD5:0:33}
echo "cat > $file << $EOF"
cat $file
echo "$EOF"
echo "echo Datei wurde wieder Hergestellt $file"
done
x6bb1a0f20dfa3c78b28138e0ae719e31
echo Datei wurde wieder Hergestellt tinyshar
}}
Wenn ich die fertige Datei ausführe hengt sich das programm auf. ( am subshell obwohl es ignoriert werden sollte )
|