Вы можете сделать что-то вроде этого:
git status | sed 's-\(#\t\+modified: \+\)\(.*/\)\([^/]\+\)-\1.../\3-'
Это заменит любой текст, начинающийся с modified:
, и группу пробелов, содержащих косую черту, с .../
до последней косой черты.Префикс, пробелы и последняя часть пути не будут затронуты.
Аналогичный результат может быть достигнут с меньшим количеством обратных косых черт, используя флаг -E
или -r
:
git status | sed -E 's-(#\t+modified: +)(.*/)([^/]+)-\1.../\3-'