Ich versuche, GNU sed zu installieren. Im Anschluss dieser Beitrag Ich tat
brew install gnu-sed
A priori ging es gut, aber dann der Befehl gsed
wurde nicht gefunden. Ich konnte keine finden gnu-sed
(oder gleichwertig) in /usr/local/bin/
außer dem Standard sed
.
Ich arbeite unter Mac OS X 10.11.3
find
zu finden es. Verwenden Sie im Terminal den folgenden Befehl:find /usr -type f -name *sed
gnu
, Ich fand/usr/local/Cellar/gnu-sed/4.2.2/bin/sed
. Sollte ich nur diese Datei verschieben/usr/local/bin/
? Vielen Dank/usr/bin/sed
Daher sehe ich keinen Grund, warum Sie die GNU-Version nicht kopieren / verschieben können/usr/local/bin/
. Das heißt, je nachdem, was in Ihrem istPATH
Das erste ist das, das ausgeführt wird, wenn Sie nichts tun, um die beiden zu unterscheiden. Nennen Sie vielleicht die GNU-Versiongsed
.sed
zugsed
den Befehl umbenennen?sed
und beide sind in derPATH
, dann wird einer über den anderen laufen, basierend auf demPATH
. Wenn Sie nicht verstehen, was ich sage, müssen Sie etwas googeln.Antworten:
Es scheint, dass die
brew
Linkprozess konnte nicht erfolgreich vom Keller zu verknüpft werden/usr/local/bin
.Überprüfen wir zunächst, ob es installiert ist. Versuchen
brew list
und Sie erhalten eine Liste der installierten Formeln. Obgnu-sed
Ist da drin dann ist es okay installiert. Wenn nicht, dann laufbrew install gnu-sed
wieder und du solltest okay sein.Wenn es in der Liste enthalten ist, versuchen Sie es zu verknüpfen und sehen Sie, welche Ausgabe Sie erhalten.
brew link gnu-sed
werde dies tun. Die Verbindung sollte in Ordnung sein, und Sie können loslegen.quelle
brew unlink gnu-sed && brew link gnu-sed
) und bekamUnlinking /usr/local/Cellar/gnu-sed/4.2.2... 3 symlinks removed;Linking /usr/local/Cellar/gnu-sed/4.2.2... 3 symlinks created
. Allerdings die Befehlegnu-sed
undgsed
werden immer noch nicht gefunden und ich glaube nicht dassed
Befehl wurde ersetzt./usr/local/bin
ist in deinemPATH
?echo $PATH
Ich bekomme/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin
das scheint ziemlich schlimm. Alle anderen Bash-Befehle funktionieren jedoch einwandfrei.cd /usr/local/bin
und dannln ../Cellar/gnu-sed/4.2.2/bin/gsed /usr/local/bin/gsed
?/usr/local/bin/gsed
ist nicht vorhanden. Ich habe nur/usr/local/bin/sed
./usr/local/Cellar/gnu-sed/4.2.2/bin/gsed
existiert auch nicht. Ihreln
Befehl kehrt daher zurückNo such file or directory
. Danke, dass du mit meinem Problem Schritt gehalten hast :)