Ich versuche, die letzten zwei Buchstaben aus einem Dateinamen, die Großbuchstaben sind, und fügen Sie sie an den Dateinamen in Kleinbuchstaben. Ich expeceted den Befehl:sed und Mac OS X Unterschiede mit oberen, unteren und ganzen Capture-Steuersequenzen
ls | sed -e "s/.*\([A-Z][A-Z]\)$/\0\/\L\1\E/"
dies zu erreichen, und auf meiner Ubuntu-Box funktionierte es gut, aber auf meinem Mac druckt es einfach ein 0/LXXE/
, wo XX
die richtigen Buchstaben aus dem Capture sind.
Was sind die Mac sed Äquivalente von \0
, \L
und \E
?
Ich habe mich im Internet umgeschaut und einige Leute haben bemerkt, dass Mac OS X sed sich von Ubuntu sed unterscheidet, aber die meisten Threads sprechen von der -i
Anforderung für eine Dateierweiterung oder eine leere Zeichenfolge (was mich zuvor gestolpert hat).
'Gebräu installieren --default- benennt gnu-sed, um 'sed' anstelle von' gsed' zu installieren – TalkLittle
"Homebrew als root auszuführen ist extrem gefährlich und wird nicht mehr unterstützt." – arekolek
Danke @arekolek, das ist ein sehr guter Punkt. Ich habe bearbeitet. – anubhava