Как игнорировать зависимость пакета?

Просто анализируйте и повторно собирайте $file, когда вы перебираете соответствующие файлы: ${file%/*} дает вам $ file со всем после удаления последнего /, а ${file##*/} дает вам $ file со всем до последнего / удален; вместе взятые ${file%/*}/old/$date-${file##*/} дадут вам «новое» имя файла, соответствующее $file.

Предположительно, дата не изменится при запуске вашего скрипта, поэтому нет смысла вызывать date для каждого файла; скорее, сохраните дату в переменной один раз, а затем используйте ее во время цикла: date=$(date '+%G-%m-%d'). (Обратите внимание, что современные скрипты должны использовать $(...), а не обратные ссылки. Также обратите внимание, что % не является «специальным» символом и поэтому не требует кавычек или экранирования, хотя в качестве хорошей практики вся строка формата должна быть цитата.)

Если у вас есть новая версия Bash, вы можете полностью исключить подселлем, используя вместо этого printf -v date '%(%G-%m-%d)T' -1.

Вы также можете счесть полезным использовать shopt -s globstar так что вы можете искать произвольную глубину в каталогах и shopt -s nullglob, чтобы unmatched glob (wildcard) расширялся до «ничего» вместо исходного шаблона glob.

Полагая все это вместе, мы получаем: [ ! d4]

shopt -s globstar nullglob
date=$( date '+%G-%m-%d' )
for file in /home/*/logs/**/access.log.gz
do
    target=${file%/*}/old/$date-${file##*/}
    mv -vi "$file" "$target"
done
0
задан 26 May 2018 в 13:17

3 ответа

Похоже, Microsoft не обновляла свой пакет MSSQL. Поскольку у openssl недавно появились важные исправления, я бы не стал игнорировать зависимость.

Я рекомендую установить mysql-server вместо mssql.

Если вы все еще хотите установить mssql, это путь:

apt download mssql-server

dpkg --ignore-depends=openssl -i mssql-server.deb

0
ответ дан 8 June 2018 в 13:54
  • 1
    судо apt-получить установки MSSQL-сервер --nodeps в – kukulo 26 May 2018 в 13:16
  • 2
    или --no-install-рекомендует – kukulo 26 May 2018 в 13:17
  • 3
    С --no-install-recommends я получаю тот же ошибочный вывод, кажется, что он ничего не делает. Флаг --nodeps недоступен. – Nikita Kal'chenko 26 May 2018 в 13:52
  • 4
    меткие Скачать в MSSQL-сервер в этом случае dpkg --игнорировать-зависит=в openssl-я в MSSQL-сервере.деб . заменить в MSSQL-сервере.деб с именем, который по меткому загрузки. – kukulo 26 May 2018 в 13:59

Похоже, Microsoft не обновляла свой пакет MSSQL. Поскольку у openssl недавно появились важные исправления, я бы не стал игнорировать зависимость.

Я рекомендую установить mysql-server вместо mssql.

Если вы все еще хотите установить mssql, это путь:

apt download mssql-server

dpkg --ignore-depends=openssl -i mssql-server.deb

0
ответ дан 17 July 2018 в 13:23

Похоже, Microsoft не обновляла свой пакет MSSQL. Поскольку у openssl недавно появились важные исправления, я бы не стал игнорировать зависимость.

Я рекомендую установить mysql-server вместо mssql.

Если вы все еще хотите установить mssql, это путь:

apt download mssql-server

dpkg --ignore-depends=openssl -i mssql-server.deb

0
ответ дан 20 July 2018 в 13:29

Другие вопросы по тегам:

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