LINUX.ORG.RU

Установка пакетов

 , ,


0

1

Подскажите пожалуйста как правильно устанавливать пакеты, если

заранее неизвестно какой установится.

В bash пишу:

yes | gdebi /media/mint/6288-3583/DATA/28032023/(automake1.11_1.11.6-3_all.deb || automake1.11_1.11.6-5_all.deb || automake1.11_1.11.6-6_all.deb)

В ответ получаю:

bash: syntax error near unexpected token `(’

Что не так?



Последнее исправление: xxoaea (всего исправлений: 2)

А что нужно сделать? В bash нет такого синтаксиса, как у вас написан. Установить первый, который получится? Тогда, наверное,

yes | ( \
    gdebi /media/mint/6288-3583/DATA/28032023/automake1.11_1.11.6-3_all.deb \
    || gdebi /media/mint/6288-3583/DATA/28032023/automake1.11_1.11.6-5_all.deb \
    || gdebi /media/mint/6288-3583/DATA/28032023/automake1.11_1.11.6-6_all.deb \
)

(но я не запускал, конечно)

akho
()

если тут предполагается что это версии одного и того же пакета.
то берешь список пакетов из биры, сортируешь по имени и выбираешь самый новый, который и скармливаешь gdebi (кстати почему именно он ??).

pfg ★★★★★
()
Ответ на: комментарий от akho

чтобы был compound commands, внутри скобочек должны быть commands, а не какая-то хохлома

С точки зрения синтаксиса внутри скобок вполне правильный list, но вот открывающая скобка стоит в неподобающем для неё месте.

debugger ★★★★★
()
Ответ на: комментарий от akho

List тут вообще не при чем. Их в bash нет.

Если ничто другое не помогает, прочтите, наконец, инструкцию:

$ man bash
...
 Lists
       A  list is a sequence of one or more pipelines separated by one of the
       operators ;, &, &&, or ||, and optionally terminated by one of ;, &, or
       <new‐line>.

       Of these list operators, && and || have equal precedence, followed by ;
       and &, which have equal precedence.
...
debugger ★★★★★
()
Ответ на: комментарий от debugger

Спасибо за ваш ценный комментарий о терминологии. Отмечаю, что в конструкции в исходном посте внутри скобок нет ни pipelines, ни команд, ни даже имен файлов в доступных путях. Благородные доны (я и вы) обсуждаем какую-то кашу, а оп свалил.

И проблема оп не в том, что «открывающая скобка стоит в неподобающем для неё месте».

Если ничто другое не помогает

Мне не то что не помогает, я даже и не нуждаюсь в помощи.

akho
()
Ответ на: комментарий от akho

Отмечаю, что в конструкции в исходном посте внутри скобок нет ни pipelines, ни команд, ни даже имен файлов в доступных путях.

Синтаксически всё это там есть, но чтобы их найти, надо иметь мало-мальское образование в области грамматик, языков программирования и иногда открывать документацию.

Благородные доны (я и вы) обсуждаем какую-то кашу, а оп свалил.

Я обсуждаю синтаксис башевских команд, а вот ты обсуждаешь кашу. Обсуждать кашу мне не интересно, поэтому я тоже сваливаю.

debugger ★★★★★
()

Народ, при чем тут каша задача простоя есть несколько версии

одного и того же пакета задача не писать много раз

yes | gdebi имяпакета.deb

….

yes | gdebi имяпакета.deb

Чтобы автоматом установилась та версия для которой удовлетворены

все зависимости - вот и все.

К сожалению способов автопроверки устанавливаемых пакетов на то

все ли зависимости для ни х удовлетворены я не встречал.

xxoaea
() автор топика
Последнее исправление: xxoaea (всего исправлений: 1)
Ответ на: комментарий от t184256

Тем что только gdebi иногода подсказывает даже с url какие зависимости нужны, и кстати она лучше что dpkg -i в разы. А для оффлайн установки пакетов просто клад.

xxoaea
() автор топика
Последнее исправление: xxoaea (всего исправлений: 1)
Ответ на: комментарий от pfg

А что за бира? Кроме того, мне нужна та версия, для которой удовлетворены все зависимости. И чтобы не городить огород,

вставляя команду проверки зависимостей, я и написал, чтобы устанавливалась та версия что устанавливается. Поэтому вопрос в том как сделать чтобы работало?

xxoaea
() автор топика
Последнее исправление: xxoaea (всего исправлений: 2)
Ответ на: комментарий от akho

Я говорю не то по смыслу а не по результату а так конечто и я мог написать что-то вроде:

gdebi /media/mint/6288-3583/DATA/28032023/automake1.11_1.11.6-3_all.deb || gdebi …

Задача состояла в том чтобы последовательно передавать пакеты на

вход gdebi пока один из них не установится.

xxoaea
() автор топика