script wijzigen m.b.v. sed

Status
Niet open voor verdere reacties.

mariannevanh

Terugkerende gebruiker
Lid geworden
14 dec 2004
Berichten
2.085
Ik probeer in een viertal commando's te maken waarmee ik via het commando sed enkele regels toevoeg aan een bestaand script. Het lukt me echter niet om dit voor elkaar te krijgen.

Uit het script citeer ik de vier deeltjes. De dikgedrukte teksten zijn de toe te voegen teksten
Code:
...{FileDir}" .
echo "Done"
[B]#
# Encrypt backupped file directory - lines added by Guido
#
echo "Encrypting backupped file directory..."
gpg --batch -c --passphrase-file /home/guido/wachtwoord "${backupdir}/${fileNameBackupFileDir}"
echo "Done"[/B]
...
...
"${DataDir}" .
echo "Done"
[B]#
# Encrypt backupped file directory - lines added by Guido
#
echo "Encrypting backupped file directory..."
gpg --batch -c --passphrase-file /home/guido/wachtwoord "${backupdir}/${fileNameBackupFileDir}"
echo "Done"[/B]
...
...
fi

	echo "Done"
[B]<TAB>#
<TAB># Encrypt backupped Nextcloud database (MySQL/MariaDB) - line added by Guido
<TAB>#
<TAB>gpg --batch -c --passphrase-file /home/guido/wachtwoord "${backupdir}/${fileNameBackupDb}"
[/B]...
...
echo
fi

[B]#
# Upload backup to Dropbox - lines added by Guido
#
/home/guido/Dropbox-Uploader/dropbox_uploader.sh mkdir "${currentDate}"
/home/guido/Dropbox-Uploader/dropbox_uploader.sh upload "${backupdir}"/*.gpg "${currentDate}"
[/B]
#

De commando's die ik hiervoor had gemaakt, zijn:

Code:
sed -i 's/${FileDir}" .\necho "Done"\n/${FileDir}" .\necho "Done"\n#\n# Encrypt backupped file directory - lines added by Guido\n#\necho "Encrypting backupped file directory..."\ngpg --batch -c --passphrase-file \/home\/guido\/wachtwoord "${backupdir}\/${fileNameBackupFileDir}"\necho "Done"\n/g' script.sh
sed -i 's/"${DataDir}" .\necho "Done"\n/"${DataDir}" .\necho "Done"\n#\n# Encrypt backupped file directory - lines added by Guido\n#\necho "Encrypting backupped file directory..."\ngpg --batch -c --passphrase-file \/home\/guido\/wachtwoord "${backupdir}\/${fileNameBackupFileDir}"\necho "Done"\n/g' script.sh
sed -i 's/fi\n\n\techo "Done"\n/fi\n\n\techo "Done"\n\t#\n\t# Encrypt backupped Nextcloud database (MySQL\/MariaDB) - line added by Guido\n\t#\n\tgpg --batch -c --passphrase-file \/home\/guido\/wachtwoord "${backupdir}\/${fileNameBackupDb}"\n/g' script.sh
sed -i 's/echo\nfi\n\n#/echo\nfi\n\n#\n# Upload backup to Dropbox - lines added by Guido\n#\n\/home\/guido\/Dropbox-Uploader\/dropbox_uploader.sh mkdir "${currentDate}"\n\/home\/guido\/Dropbox-Uploader\/dropbox_uploader.sh upload "${backupdir}"\/*.gpg "${currentDate}"\n\n#\n/g' script.sh

Maar het script is niet gewijzigd. Wat doe ik fout? Welke tekens moet ik nog meer escapen?

(Om deze gegevens op het forum te zetten heb ik een en ander moeten "anonimiseren" en aanpassen. Ik hoop dat ik hierbij geen fouten heb gemaakt...)

Wie kan mij helpen?

Vriendelijke groet,
Guido
 
Zie je geen error?
 
Vooralsnog opgelost met andere commando's:
Code:
ex -s -c '83i|echo "hallo"' -c x test.sh
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan