perl удалить две косые черты регулярное выражение [закрыто]

У меня есть файл, в котором много строк.

Все строки, содержащие

file=/aaaaaaa/bbbbbbb/cccccc/dddddd.txt

, должны быть разделены на этот формат

file=/dddddd.txt

Я выполняю perl в bash что-то вроде этого

perl -i -pe 'regex' /localpath/file.txt

В приведенной выше команде perl в 'regex' мне понадобится команда, чтобы сделать это, как это сделать?

-1
задан 23 November 2012 в 01:33
3 ответа
perl -n -e 'print $1.$2."\n"if (/(.+\=)\/.+\/.+\/.+(\/.+)$/)' /localpath/file.txt > newfile.txt

Есть, наверное, более элегантные способы сделать это.

0
ответ дан 5 December 2019 в 19:10
 perl -ne '/(.*=).*\/(.*)$/ && print "$1/$2\n"' /localpath/file
0
ответ дан 5 December 2019 в 19:10

Если вы просто хотите извлечь файл, я бы использовал File :: Basename

4
ответ дан 5 December 2019 в 19:10

Теги

Похожие вопросы