Я уверен, что конкретный модуль является более безопасным вариантом, но если данные надежны, вы можете обойтись без однострочного:
Предполагая, что ввод:
2011-10-18 08:52 6148 s3://location//picture_1.jpg
2011-10-18 08:52 6148 s3://location//picture_2.jpg
2011-10-18 08:52 6148 s3://location//picture_3.jpg
...
Однострочный:
perl -lnwe 'print for m#(?<=//)([^/]+)$#'
-l
chomp
s ввод и добавление новой строки в конец print
операторов -n
добавляет while(<>)
зацикливание вокруг сценария (?<=//)
при проверке с указанием взгляда обнаруживается двойная косая черта - ..., за которой следует не косая черта до конца строки
for
loop гарантирует, что несоответствия не будут напечатаны.
Преимущество опции -n
заключается в том, что этот однострочный текст может использоваться в канале или в файле.
command | perl -lnwe '...'
perl -lnwe '...' filename