4

У меня 2 файла

file1.txt
а =
б =

file2.txt
1
2

Могу ли я объединить их, используя gvim, чтобы результат выглядел так:
а = 1
б = 2

4 ответа4

7

Вырвать вертикальный блок: выберите, например, строки в file2.txt с помощью CTRL v, дерните с помощью y и вставьте после перемещения в конец первой строки в file1.txt с помощью p.

Если вы запускаете vim в стеке GNU, вы также можете использовать программу paste чтобы сделать то же самое. Используйте -d чтобы указать, какой разделитель использовать между полями из файлов.

paste -d "" 1 2 > merged.txt
1

также работает с чистым vim:

 % vim -O file1.txt file2.txt  # open both files vertically splitted

затем в file1.txt возвращаем блок в именованный регистр, скажем «а»:

  • GG перейти к началу файла
  • Ctrl + V, чтобы выбрать режим блокировки
  • G перейти к последней строке
  • $ перейти к последнему символу в последней строке
  • у дергать зарегистрировать„A“

затем переключитесь на file2.txt и выполните:

  • GG перейти к началу файла
  • "Содержание P паста регистра„а“перед текстом
0

Также вы могли бы в Linux использовать команду: читать для вставки текста одного файла в другой файл, например:

В обоих случаях сначала откройте файл с помощью vim, после того, как вы разместите в разделе файла и выполните:

: прочитайте file1.txt

или же

: читать! кошка file1.txt

Это очень полезно для объединения содержимого двух или более файлов ...

0

если вы работаете в Unix или Linux, просто используйте команду вставки:

:%!вставить - file2.txt

это также работает в классическом vi или прямо из командной строки:

$ paste file1.txt file2.txt> out.txt

Надеюсь это поможет

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .