Debian 8 -bash: / usr / bin / java: Нет такого файла или каталога

на основе Perl решение:

perl -lne 'if ($.==1) {
 print localtime($t)." $f: $c\n" if defined $t; 
 $c=0; $f=$ARGV; $t=(stat($f))[7];} $c++ if /$expr/o; 
} BEGIN { $expr=shift @ARGV; push @ARGV,"/etc/hosts"; 
' "search-expression" info.log

Примечание: не проверено.

Здесь есть несколько стандартных уловок с Perl. -n обертывает , а (<>) { вокруг вашего кода. Когда $. равно 1, это новый файл. Если мы обработали файл, распечатайте сводную информацию - отметку времени, имя файла, количество. Теперь, только для первой строки, получите текущее имя файла, временную метку файла и сбросьте счетчик. Для каждой строки увеличивайте счетчик, если он соответствует желаемому регулярному выражению. Завершите цикл while и запустите некоторый код инициации, который выполняется перед предыдущим блоком. Возьмите первый аргумент в качестве регулярного выражения для сопоставления в каждой строке. Теперь в списке аргументов удалите первый аргумент. Затем добавляет фиктивный файл к списку аргументов, который запускает последнее выражение print . Это что-то вроде безобидного взлома.

0
16.05.2019, 19:23
2 ответа

Чтобы восстановить ссылку /usr/bin/java, вы должны запустить

sudo update-java-alternatives -a

Если вы использовали Debian 9 (, как упоминалось изначально ), вы не должны были столкнуться с этими проблемами, поскольку OpenJDK 8 используется по умолчанию, а OpenJDK 7 даже недоступен. Чтобы исправить ситуацию, чтобы вы могли запускать классы версии 52 (, то есть классы Java 8 ), установите OpenJDK 8:

sudo apt install openjdk-8-jre

В Debian 8 вы можете установить OpenJDK 8 из бэкпортов:

echo deb http://archive.debian.org/debian jessie-backports main | sudo tee /etc/apt/sources.list.d/jessie-backports.list
echo 'Acquire::Check-Valid-Until "false";' | sudo tee -a /etc/apt/apt.conf
sudo apt update
sudo apt -t jessie-backports install openjdk-8-jre

(Подробнее см. Не удалось получить репозиторий бэкпортов Джесси .)

Затем вам нужно будет специально выбрать OpenJDK 8 по умолчанию:

sudo update-java-alternatives -s java-1.8.0-openjdk-amd64

(Чтобы увидеть возможные значения, запустите /usr/sbin/update-java-alternatives -l.)

5
28.01.2020, 02:30

Если вы получаете сообщение об ошибке, как показано ниже:

bash: /usr/bin/java: No such file or directory

Выполнить:

apt-get install libc6-i386

Отсутствуют некоторые 32-битные библиотеки

1
28.01.2020, 02:30

Теги

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