У меня есть текстовый файл, как это:
a
b
c
d
e
f
g
Как я могу сгруппировать эти строки, чтобы получить вывод, как это:
a-b
b-c
c-d
d-e
e-f
f-g
Я должен сделать это в оболочке (sh, csh, bash).
Я нашел это:
cat file | xargs -n2
но последний элемент первой группы не стал первым из второй.
shell
text-processing
Костел Балта-Коман
источник
источник
^ Это сработало бы очень хорошо, за исключением того, что ваш вклад был одно за другим. Так...
... будет работать, но, возможно, это слишком сложно ...
источник
sed
это в покое.sed 1d\;\$d
исправить это.sed '2~2p' infile | paste -d- - -
paste -d- <(head -n -1 input) <(tail -n +2 input)
Еще
sed
и может быть изменено (благодаря mikeserv ):
источник
y/-\n/\n-/
может заменить оба с /// возможно. Если бы это было так, это было бы быстрее, переносимо для использования \ n и короче.Чистая версия Bash -
источник