Sed funktioniert nicht über Variable
512
Sim Sca
Ich versuche, den find -exec
Befehl mit einer Funktion zu kombinieren, die den relativen Pfad entfernt und an einen anderen Ort (mit demselben Baum) kopiert.
Das Skript sieht wie folgt aus:
function makeLinks(){ local file=$1 local src="$2" local dest="$3" # This not works (don't strip $src from $file variable) rel="$(echo "$" | sed -e "s#$src##g")" echo "cp $file $/$" # If I set the variable works: # t="overrides/mypath/templates/web/homepage.html" # echo $ # local rel=$(echo "$t" | sed -e "s#$src##g") # echo $rel } export -f makeLinks function relativeLinks(){ local src="overrides/mypath/" local dest="/var/lib/mypath/" local here=`pwd` find $src -type f -exec bash -c "echo `makeLinks '{}' $src $dest`" \; } relativeLinks
Aber es funktioniert nicht mit $file
Variablen.
In makeLinks()
habe ich mit der $t
Variablen getestet (siehe Kommentare), und ich habe festgestellt, dass mit der hartcodierten Variablen alles wie erwartet funktioniert.
Kann mir bitte jemand helfen ?!
PS: Um es klar zu sagen, ich bin daran interessiert zu wissen, warum diese Methode nicht funktioniert. Ich habe gerade eine Problemumgehung verbessert, indem ich die Liste der Dateien in einer bestimmten Datei speichere und diese Datei dann Zeile für Zeile lese.
0 Antworten auf die Frage
Verwandte Probleme
-
9
Was ist der Unterschied zwischen den Befehlen "su -s" und "sudo -s"?
-
4
Gutes freies Ubuntu Server-VMWare-Image benötigt
-
4
Was sind die Unterschiede zwischen den großen Linux-Distributionen? Werde ich es merken
-
2
Begrenzung der CPU-Auslastung für Flash in Firefox?
-
2
Wie kann ich mein Mikrofon unter Debian GNOME zum Laufen bringen?
-
2
Conky-Setups - Beispiele / Ideen?
-
3
Was sind die Unterschiede zwischen Linux Window Managern?
-
2
ThunderBird / Lichtsynchronisation mit SE k770i
-
4
Linux-Dateisystem
-
6
Vollbild-Flash langsam in KDE 4