Я пытаюсь использовать sed для печати только последней части URL-адреса из списка данных. Я хочу, чтобы он использовал sed, а не awk.Попытка напечатать часть каждой строки в sed
Входные данные, как это:
Place,AF,http://en.wikipedia.org/wiki/Benin
Place Mat,NA,http://en.wikipedia.org/wiki/Saint_Barthelemy
Orion,NA,http://en.wikipedia.org/wiki/Bermuda
Я хочу просто напечатать последнюю часть URL, как это (ХОТИТЕ ЭТО):
Benin
Saint Barthelemy
Bermuda
У меня так много проблем с/и \ потому что они существуют в URL-адресе !!!
Моя попытка до сих пор (tryng заменить материал, который я не хочу ни с чем)
sed -r s/$.+wikipedia\.org\/// in.txt
Также мне нужно заменить пробелы _, но я могу использовать команду у у/_// Я думаю, ?
Я думаю, что вы использовали $ вместо ^.^означает начало, а $ означает конец. Вы можете заменить символ '/' любым другим персонажем, как показал Кир. И вы приводите команды sed, чтобы избежать проблем с пробелами, например. –
Для тех, кто интересуется awk: используйте '/' as separator, замените регулярным выражением в последнем столбце ('$ NF') на все' _' пробелами и затем напечатайте последний столбец ('$ NF'):' awk - F/'{gsub (/ _ /, "", $ NF); print $ NF} 'file' – Cyrus