ich möchte gerne mit sed eine Datei editieren aber ich bekomme es nicht hin das auch ein Leerzeichen mit geschrieben wird, sobald ich ein Leerzeichen nach der Raute,Punkt: "#. /usr/local/etc/xen/scripts/hotplugpath" hinzufüge bekomme ich immer
, ohne Leerzeichen nachdem Raute,Punkt klappt es aber ich brauche auch das Leerzeichen dazwischen xd./rrr-evaltest.sh: line 9: /usr/local/etc/xen/scripts/hotplugpath#g /tmp/xen4-tools/usr/local/etc/init.d/xencommons: No such file or directory
das ganze läuft wie folgt:
ein/e bash Datei/Script "rrr-evaltest.sh" liest die rrr-evalconf Datei aus, wo der Wert,(bzw. das Kommando), für den "eval" Befehl drinne steht und der dann ausgeführt werde soll von der/dem rrr-evaltest.sh Datei/Script.
rrr-evalconf
Code: Alles auswählen
WORKAROUNDAFTER="sed -i "s#\.[[:space:]]*/etc/xen/scripts/hotplugpath#. /usr/local/etc/xen/scripts/hotplugpath#g" /tmp/xen4-tools/usr/local/etc/init.d/xencommons"
Code: Alles auswählen
#!/bin/bash
set -x
if grep -qw "^WORKAROUNDAFTER=" rrr-evalconf 2>/dev/null ; then
echo -n "${BLUE}trying to apply ${MAGENTA}WORKAROUNDAFTER${BLUE} ...${NORMAL}"
while read line; do
if [ "$line" != "" ] && [ "$line" == "$(echo $line | grep "^WORKAROUNDAFTER=")" ]; then
eval $line ; $(echo $WORKAROUNDAFTER)
fi
done < rrr-evalconf
fi
Code: Alles auswählen
XENSTORED=/usr/local/sbin/xenstored
BACKEND_MODULES="xen-evtchn xen-gntdev xen-gntalloc xen-blkback xen-netback xen-pciback evtchn gntdev netbk blkbk xen-scsibk usbbk pc
. /etc/xen/scripts/hotplugpath.sh
if [ -d /etc/sysconfig ]; then
xencommons_config=/etc/sysconfig
aber stehen in der xencommon soll (punkt leerfeld slash) anstatt (punkt slash)./usr/local/etc/xen/scripts/hotplugpath.sh
vielleich weiß ja der ein oder andere wo mein Fehler liegt. Ich hoffe ich habe das ein wenig verständlich oben beschrieben. /usr/local/etc/xen/scripts/hotplugpath.sh
vielen Dank
ren22