Повторите список данных в том же файле / столбце

$ ipcs -q предоставит статистику очереди сообщений из командной строки.

$ ipcs -m предоставит статистику разделяемой памяти из командной строки.

$ ipcs предоставит всю статистику механизма ipc.

2
23.12.2018, 20:58
4 ответа

С простой forпетлей:

for i in {1..35}; do cat input_file >> new_file; done
2
27.01.2020, 21:58
yes input_file | sed 35q | xargs cat > output_file

или сawk:

awk 'BEGIN{while(ARGC<36)ARGV[ARGC++]=ARGV[1]}1' input_file
awk 'BEGIN{f=ARGV[1]; for(i=35;i--;){while((getline <f) > 0) print; close(f)}}' input_file
0
27.01.2020, 21:58

Для именно этой структуры входных данных (, т.е. нет пустых строк ), и для awks, которые допускают это (т.е. последняя прочитанная строка доступна в секции END), попробуй

$ awk 'END {for (i=1; i=35; i++) print}' RS= file
-0.2947990000000000
 0.1722064000000000
 0.1722064000000000
 0.1722064000000000
 0.0315420000000000
.
.
.
-0.2947990000000000
 0.1722064000000000
 0.1722064000000000
 0.1722064000000000
 0.0315420000000000

РЕДАКТИРОВАТЬ :или, еще короче,

awk 'END {for (i=35; i--;) print}' RS= file
2
27.01.2020, 21:58

В awk это можно сделать, добавив строки файла в массив и перебирая массив с помощью вложенного цикла в операторе END:

awk '{a[i++]=$0} END{ for(c=1;c<=35;c++) for(j=0;j<=i;j++) print a[j]}' data.txt

Конечно, если количество строк в файле очень велико, было бы более уместно catфайл несколько раз и добавить, как показано в ответ Романа

0
27.01.2020, 21:58

Теги

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