Intereting Posts
Сегмент отображения памяти и куча растут, пока они не встретятся друг с другом? Может ли кто-нибудь удалить папку «/ bin» в Linux? Можно ли отключить Watchdog, если он включен? Предоставление прав доступа всем файлам и папкам Есть ли способ отправить команду из удаленного сеанса ssh на ваш локальный компьютер? Сообщение об ошибке: неизвестный пользователь 'geoclue' в файле statoverride Установите PERM_WRITE_PROTECT на SD-карту Лицензируется лицензия Red Hat Linux Разрешение местоположения / регистрации исполняемого файла в системе? Эффективная генерация stdin в сценарии оболочки Не удается найти файлы заголовков HDF5 при установке h4toh5 в Debian Как я могу использовать ALSA dmix и несколько плагинов вместе? Измените фреймбуфер устройства для использования слоя наложения Как я могу безопасно подключиться к своему ящику Linux через Интернет? Сортировка файлов по времени

Как удалить все строки с «.png» в файле?

У меня есть список URL-адресов, некоторые из которых указывают на образы:

http://s.thebrighttag.com/iframe?c=A5lqOqP http://s.wordpress.com/imgpress?resize=136,136&url=http%3A%2F%2Fdata.whicdn.com%2Fimages%2F2833524%2F4thofJuly-collage_large.jpg%3F1278084193 

Как удалить эти строки из файла?

 cat file | grep -v "\.png" >new_file_without_pngs 

Обновлено для комментариев:

 egrep -iv "\.(png|jpg|jpeg|gif|etc)" file >new_file 

Для варианта редактирования на месте вы можете использовать sed следующим образом:

 $ sed -i -r 's/.*\.(png|jpg).*//I' file 

Он удалит строки, содержащие либо .png или .jpg непосредственно в файле. Параметр -i переданный sed означает «редактирование на месте». Сделайте резервную копию своего файла перед выполнением этой команды или попробуйте сначала без опции -i если вы не уверены.

Флаг I должен выполнять нечувствительность к регистру.

Вы можете использовать Vim в режиме Ex:

 ex -sc 'g/\.png/d' -cx file 
  1. g глобальный поиск

  2. d удалить

  3. x сохранить и закрыть

Если у вас есть sponge вы можете поменять содержимое файла следующим образом:

 grep -E -iv "\.(png|jpg|jpeg|gif)" file | sponge file