
Я хочу создать файл с двумя таблицами.
Например:
У меня есть это:
cat 1.log | cut -d: -f 9 | sort | uniq
teste
teste2
teste3
и у меня есть другая команда:
cat 1.log | cut -d: -f 6 | cut -d " " -f2 | sort | uniq
возвращаться:
hello
good
bed
и я хочу создать такой файл:
teste | hello
teste2 | good
teste3 | bed
Как это сделать?
решение1
хотя вы запрашиваете CSV, вы на самом деле запрашиваете файл, разделенный вертикальной чертой
Этого можно добиться с помощью paste
команды:
paste -d '|' file1.txt file2.txt
что даст вам следующий результат:
teste|hello
teste2|good
teste3|bed
in -d
вводит paste
выбранный разделитель
если вам нужно, чтобы результат содержал пробелы вокруг разделителя, например |
, то вы можете добавить, sed 's/|/ | /g'
чтобы заменить все вхождения |
(без окружающих пробелов) на |
(с окружающими пробелами с каждой стороны)
paste -d '|' file1.txt file2.txt | sed 's/|/ | /g'
результат:
teste | hello
teste2 | good
teste3 | bed
на всякий случай, если вам нужен файл, разделенный запятыми, то все, что вам нужно будет изменить, это
к-d '|'
-d ','
что будет выглядеть так:
paste -d ',' file1.txt file2.txt