Я новичок в bash, поэтому, пожалуйста, дайте объяснение вашему ответу. Я просмотрел другие подобные вопросы, но я все еще застрял. У меня есть текстовый файл, содержащий около 4 тыс. URL-адресов. Я хотел бы удалить все URL-адреса, которые не являются частью домена.Удалите все URL-адреса, которые не относятся к одному домену
Например, мне нужны только URL-адреса из домена http://www.example.com
. Текстовый файл также имеет URL-адреса, такие как mail.example.com
, которые меня не интересуют. Если бы меня попросили написать регулярное выражение заинтересованных URL-адресов, это будет ^http://www.example.com/*
.
Я пробовал grep -no '^http:\/\/www.example.com\*' listofURLs.txt
, но это вернуло все линии вместе с номером строки, который содержит http://www.example.com
.
Теперь я мог бы использовать sed
и удалить все остальные строки, но это не простое решение. Мне было интересно, есть ли более простой способ сделать это?
Заранее спасибо.
Показать отрывок из 'listofURLs.txt' – John1024
Почему вы используете опцию' -n'? Вам нужны номера строк? – Barmar
Ну, я не могу дать точное содержание файла. Файл содержит URL-адреса, такие как http://mail.example.com, https://www.facebook.com/exapmle, https://www.youtube.com/exaple, http://www.example.com/foo-bar/'и т. д. –