Заменять IP-адрес с sed дает результат: sed: -e выражение # 1, char 57: Unmatched (или \ (

FTP используется для передачи файлов между компьютерами в сети. Когда вы подключаетесь к FTP-серверу, вы можете запускать команды, которые помогают вам передавать, создавать и удалять файлы.

Это не оболочка bash, на которой можно запускать команды bash.

0
12.09.2017, 15:31
1 ответ

Вы пропустили обратную косую черту перед одним из ). Вероятно, вы имели в видуg(глобально заменить; каждое вхождение )вместоp(печатать, если подстановка прошла успешно, что привело бы к двойному выводу замененных строк ).И\{1,\}(или \+с некоторыми реализациями )вместо*(один или несколько вместо ноль или более):

sed 's/[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}/ANONYMOUS/g' < "$IPLOG"

Или немного разложить на множители:

sed 's/\([0-9]\{1,\}\.\)\{3\}[0-9]\{1,\}/ANONYMOUS/g' < "$IPLOG"

В некоторых реализациях sedесть-E(или -r, как в ssedили более ранних версиях GNUsed)для расширенных регулярных выражений, которые могут сделать его немного более разборчивым:

sed -E 's/([0-9]+\.){3}[0-9]+/ANONYMOUS/g' < "$IPLOG"
2
28.01.2020, 02:33

Теги

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