Безecho
:
string=$'"<VirtualHost *:443> \
... \
</VirtualHost>"'
sudo sed -i '$a\'"${string}"'' file
Опция -i
указывает sed
обрабатывать файлы в -месте (с необязательным добавлением суффикса к исходной версии ).
Скрипт sed:
$
соответствует последней строке a\
добавить текст после соответствующей строки Однако он не будет работать с пустым файлом (, так как не будет строк ввода, соответствующих последней строке ).
У вас 64 -битный процессор x86 (, указанный флагом lm
в /proc/cpuinfo
), но вы используете 32 -битное ядро. Программа, которую вы пытаетесь запустить, требует 64-разрядной среды выполнения -, поэтому она не будет работать так, как -.
Если вы можете найти 32 -битную сборку программы (или собрать ее самостоятельно ), используйте ее.
Кроме того, вы можете установить 64-битное ядро -, перезагрузить компьютер, а затем установить 64-битные библиотеки -, необходимые для вашей программы.
Чтобы установить 64-битное -ядро, запустите
sudo dpkg --add-architecture amd64
sudo apt-get update
sudo apt-get install linux-image-generic:amd64
Будет установлено последнее 64 -битное ядро Xenial, а также различные поддерживающие 64 -битные пакеты. После перезагрузки вы должны обнаружить, что uname -a
показывает x86_64
, а не i686
. Если вы попытаетесь снова запустить свою программу, она может просто сработать,или вы получите ошибку из-за отсутствия библиотек; в последнем случае установите соответствующие пакеты (используйте apt-file
, чтобы найти их ), чтобы программа заработала.
У вас 32 -битный ЦП (x86 )и вы пытаетесь запустить 64 -битный исполняемый файл (x86 _64 ). Вы не можете запустить этот исполняемый файл на этом процессоре. Либо найдите 32 -битную сборку, либо сами скомпилируйте исходники.