Интерактивное удаление файлов, перечисленных с путями в текстовом файле

sed обрабатывает файл построчно, и очень сложно заставить его «запоминать» любую информацию по строкам.

Вы можете использовать grep , чтобы узнать, содержит ли файл заданный шаблон; с помощью -f вы можете указать несколько шаблонов одновременно. Следующее генерирует полный список pts / 0 .. pts / 9 , затем удаляет шаблоны, уже присутствующие в данном файле, и добавляет оставшиеся в файл:

#!/bin/bash
printf 'pts/%d\n' {0..9} \
| grep -vFf "$1"  - >> "$1".new
mv "$1".new "$1"
1
01.04.2016, 02:36
0 ответов

Теги

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