Как удалить текст из текста
Это мой текстовый файл.
apache2 установить apache2-bin установить apache2-data установить apache2-utils установить libapache2-mod-php5.6 установить libapache2-mod-php5.6 установить php-common установить php5.6 установить php5.6-cli установить php5.6-common установить php5.6-json установить php5.6-opcache установить php5.6-readline установить libmysqlclient20:i386 установить libmysqlcppconn7v5 установить mysql-client установить mysql-client-5.7 установить mysql-client-core-5.7 установить mysql-common установить mysql-сервер установить mysql-server-5.7 установить mysql-server-core-5.7 установить mysql-утилиты установить mysql-workbench установить mysql-workbench-data установить python-mysql.connector установить
Я хочу удалить эти слова под названием install
и пробелы между модулем, после того, как я хочу преобразовать результат во встроенный код, который я использую, как некоторые из них:
$ sudo apt-get удалить apache2 apache2-bin apache-data....
Я могу сделать это в текстовом редакторе, но мне нужно знать, как сделать это в будущем без использования текстового редактора.
Возобновление: из моего TXT-файла я хочу что-то вроде этого:
apache2 apache2-bin apache2-data apache2-utils libapache2-mod-php5.0 ...
2 ответа
Чтобы ответить на исходный вопрос о том, как удалить строки текста из текстового файла:
grep -v pattern lists.txt > new_lists.txt
Вы должны использовать два инструмента: sed и tr
sed -e 's/\s*install\s*$//g' txt|tr '\n' ' '
sed
удаляет все, кроме имен пакетов tr
заменяет новые строки пробелом.
sudo apt-get remove `sed -e 's/\s*install\s*$//g' txt|tr '\n' ' '`
awk -e '{print $1}' < txt|tr '\n' ' '
awk
печатает первый столбец из входных данных.