Предположим, что вы хотите объединить строки таким образом, чтобы каждая новая строка содержала три строки из входного файла и вы хотите сохранить один и тот же заголовок:
$ ( head -n 1 file; sed '1d' file | paste -d '\0' - - - ) >newfile
$ cat newfile
ID Name NUMBER
1ABC234)234-2345,2CBF23588900,3knl334235354,
4gkmnk436563654,line5,line6,
line7,line8,line9,
Входной файл, который я использовал, был
ID Name NUMBER
1ABC234)234-2345,
2CBF23588900,
3knl334235354,
4gkmnk436563654,
line5,
line6,
line7,
line8,
line9,
Команда head
просто выводит заголовок из файла, в то время как конвейер sed
и paste
распределяет оставшиеся строки группами по три без вставки какого-либо разделителя. Затем выходные данные как из head
, так и из конвейера перенаправляются в новый файл.
Если вам нужен конкретный заголовок, который вы упомянули, просто замените полную команду head
на echo 'insert header text here'
.
Если вам нужны LINE--1
и т. д. для каждой строки, передайте результат от paste
доawk '{ print "LINE--" NR, $0 }'
:
$ ( head -n 1 file; sed '1d' file | paste -d '\0' - - - | awk '{ print "LINE--" NR, $0 }') >newfile
$ cat newfile
ID Name NUMBER
LINE--1 1ABC234)234-2345,2CBF23588900,3knl334235354,
LINE--2 4gkmnk436563654,line5,line6,
LINE--3 line7,line8,
Я изменил порты следующим образом:
HiddenServiceDir /var/lib/tor/hidden_service/
HiddenServicePort 80 127.0.0.1:80
HiddenServiceDir /var/lib/tor/hidden_service2/
HiddenServicePort 80 127.0.0.1:80
Теперь я могу управлять сгенерированным луковым доменом в keyhelp и добавлять его пользователю. Я предполагаю, что здесь keyhelp берет на себя распределение доменов.