Die typische Lösung ist
sed -i '' 's/.*\(Pattern\)/\1/' file
#--------------^^-------^^-^^
wo die \(..\)
Paar eine Capture-Gruppe ist, und die \1
zeigt "Ersetzen durch was in Fanggruppe (1) gefunden wurde". Sie können bis zu 9 Capture-Gruppen haben (mehr in ultra-modernen sends).
Hinweis, können Sie auch den lazymans Ansatz tun und die vollständige Übereinstimmung mit dem Zielmuster, das heißt
sed -i '' 's/.*Pattern/Pattern/' file
bearbeiten Und dank @Beta ersetzen, die redundanten g
von s/../../g
entfernt.
IHTH
Was ist der Zweck des 'g'? Es scheint überflüssig. – Beta