Как соединить два файла по вертикали без разделителя? Я пытался использовать paste -d"" a b
, но это только дает мне a
.
Образец файла:
000 0 0 0
0001000200030004
10 20 30 40
2000 4000
.123
12.1
1234234534564567
text-processing
files
paste
Томас Грайф
источник
источник
paste - d"" a b
вставит содержимое изstdin
, файл с именемd""
,a
,b
.paste -d "" a b
.Ответы:
paste
используйте\0
для нулевого разделителя, как определено POSIX :Использование
-d"" a b
аналогично-d a b
:paste
программа видит три аргумента-d
,a
иb
, который создаетa
разделитель иb
имя единственного файла для вставки.Если вы работаете в системе GNU (не встроенный Linux, Cygwin,…), вы можете использовать:
Форма
-d ""
не указана POSIX и может вызывать ошибки на других платформах. По крайней мере, BSD и семейная реликвияpaste
сообщат об ошибке без разделителей .источник
paste
Этот набор был написан Гуннаром Риттером и не связан с источниками UNIX. Оболочка Bourne из этого набора была взята из оболочки OpenSolaris Bourne, но имеет свои собственные ошибки в результате быстрого и хакерского переноса на недостатки в Linux ( например, несовместимая реализация wait (), проверьте,(exec ps)
чтобы убедиться, что зависание отсутствует в оригинале и отсутствует в моем переносном Bourne Shell.paste -d '' file1 file2
но с тех пор вставка является реализацией вставки, взятой у Дэвида Корна, и это разрешает -d «».paste
потому что она у меня была, и я могу проверить ее, я не использую ее для «стандарта» или чего-то еще.paste
дал ошибку разделителей дляpaste -d ""
.Решение:
источник