«E: Подпроцесс /usr/bin/dpkg вернул код ошибки (1)» при попытке установить mysql-server-5.6

pat="'*.ab' -o -name '*.bc'"
find $path -type f $open -name $pat $close

Это не то, что вам нужно. :кавычки внутри переменной patвоспринимаются не как кавычки, а как буквальные символы. После расширения $patоно разбивается на слова, в результате чего слова '*.ab', -o, -nameи '*.bc'сохраняются с одинарными кавычками. Поэтому, если у вас нет имен файлов с одинарными кавычками внутри, это не будет совпадать.

path=path

Это устанавливает переменную pathв литеральную строку path, но я полагаю, что это был просто заполнитель.

open="\("
close="\)"

Они помещают буквальные обратные косые черты в переменные, и find, вероятно, должен пожаловаться, так как он получает аргумент \(. Достаточно один раз поставить скобку, поэтому либо open="(", либоopen=\(

Если вам нужно построить список выражений для find, используйте оболочку с массивами (Bash или почти что угодно, но только не простуюsh):

args=()  
args+=( -name "*.ab" )
args+=( -or -name "*.bc" ) 

find... \( "${args[@]}" \)

Оберните построение массива -в цикл, если это необходимо.

0
11.08.2019, 20:53
1 ответ

Вот важная часть вашего сообщения об ошибке:

Aborting downgrade from (at least) 5.7 to 5.6.
If are sure you want to downgrade to 5.6, remove the file
/var/lib/mysql/debian-*.flag and try installing again.

Удалите файл и повторите попытку. Тогда дайте нам знать.

0
28.01.2020, 03:22

Теги

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