El error Can not find -lperl
significa que no puede encontrar libperl
.
En Debian Stretch esto lo proporcionalibperl-dev
% apt-file list libperl-dev
libperl-dev: /usr/lib/x86_64-linux-gnu/libperl.a
libperl-dev: /usr/lib/x86_64-linux-gnu/libperl.so
libperl-dev: /usr/share/doc/libperl-dev/README.cross
libperl-dev: /usr/share/doc/libperl-dev/changelog.Debian.gz
libperl-dev: /usr/share/doc/libperl-dev/copyright
Espero que se necesite un paquete similar en Ubuntu.
При использованииfor
in
цикл:
for i in $(seq 1 3000) ; do echo -e "OW\nHW1\nHW2"; done
или используйте эхо 3x
for i in $(seq 1 3000) ; do echo OW; echo HW1; echo HW2; done
Если ваша оболочка предлагает «расширение скобок», попробуйте
echo $'\nOW\nHW1\nHW2\n'{1..3000}$'\n' | grep -Ev "^( |[0-9])*$"
OW
HW1
HW2
OW
HW1
HW2
OW
HW1
HW2
.
.
.
и перенаправить в файл, если результат вас устраивает.
Вы можете использовать этот printf
трюк со спецификатором строки нулевой -длины %.0s
и расширением скобок:
printf '%.0sOW\nHW1\nHW2\n' {1..3000} > newfile
Это легко сделать с помощью Perl:
perl -e'print "OW\n\HW1\nHW2\n"x3000'
Вы можете просто использовать yes
и head
, чтобы сгенерировать эту последовательность 3000 раз.
yes $'OW\nHW1\nHW2' | head -9000
Здесь вам нужно 9000, потому что у вас есть 3 строки, и вы хотите, чтобы эти 3 строки были 3000 раз.
вы можете использовать цикл while, как здесь:http://www.tldp.org/LDP/Bash-Beginners-Guide/html/sect_09_02.html
Пример:
COUNTER=0; while [ $COUNTER -lt 3 ]; do echo "$COUNTER" && COUNTER=$((COUNTER+1)); done
Не забывайте сбрасывать СЧЕТЧИК каждый раз, когда вы хотите это запустить.