Как вытащить объемный текст из файла и вставить его в другой файл?

Хорошо, таким образом, у меня есть несколько файлов, который содержит электронные письма и пароли. Я хочу сделать единственный файл только паролей, всех файлов, не изменяя оригиналы. Каждая строка структурирована как так:

example@example.com:password

(нет никакого пространства или между электронной почтой или между паролем от двоеточия),

Я пытался выяснить, как к grep файл и конвейерно обрабатывает текст в новый файл, но я не так уверен в том, как записать команду. Помогите словам благодарности.

0
задан 5 April 2018 в 20:57

2 ответа

Принятие никаких символов двоеточия в адресах электронной почты, Для набора файлов, позволяет нам назвать их files*.txt:

cat files*.txt | sed -e 's/[^:]*://' > all-passwords.txt

Должен сделать это.

  • cat files*.txt - печать все строки к STDOUT
  • sed -e 's/[^:]*://' - замените все до первого ':' на строке ни с "чем"
  • > all-passwords.txt - создайте/перезапишите файл под названием all-passwords.txt
  • >> all-passwords.txt - Если необходимо было использовать >>, это только создаст или добавит в файл, не перезапишет его.

Примечания:

  • Если Вы имеете ':' символы только в паролях, это будет все еще работать.
1
ответ дан 30 October 2019 в 03:27

Можно использовать cut:

cut -d: -f2- file1 file2 > output
  • -d: говорит cut то, что поля разделяются с :, и
  • -f2- говорит cut производить все поля от второго вперед.
2
ответ дан 30 October 2019 в 03:27

Другие вопросы по тегам:

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