Ширина скрипта между kubuntu 14.04 и 16.04

Я перехожу от Kubuntu 14.04 до 16.04, начиная с новой установки 16.04 и портирования моего кода, и вижу разницу в обработке скриптов между двумя версиями.

Вот настройка. Я в каталоге, содержащем исполняемый файл (dtc) и подкаталог, содержащий сценарий sh (dtc-версия). Если 'dtc' вызывается с аргументом -v, он просто печатает свою версию. Ниже приведена соответствующая часть «dtc-version»:

#!/bin/sh dtc="$*" MAJOR=$($dtc -v | head -1 | awk '{print $NF}' | cut -d . -f 1) ...

В 14.04 я могу успешно запустить это как

scripts/dtc-version dtc

. В 16.04 этот же вызов терпит неудачу следующим образом :

scripts/dtc-version.sh: line 4: dtc: command not found

Я могу запустить его успешно с помощью этого вызова:

scripts/dtc-version ./dtc

В обеих версиях моя оболочка bash, а моя $ PATH идентична и не включает '. '

Если я добавлю'. ' на мой путь, версия 16.04 работает, используя неприкрытый аргумент «dtc», но это не приемлемое решение, так как битбок кричит на меня, если у меня есть ». на моем пути.

0
задан 26 September 2017 в 22:00

1 ответ

@glenn jackman предоставил соответствующий ключ. Оказывается, что в какой-то момент моя старая система «dtc» была скопирована в «/ usr / bin». В моей старой системе type -a dtc дала dtc is /usr/bin/dtc, а в моей новой системе она дала bash: type: dtc: not found.

Это все часть безумно сложной системы сборки со всеми типами этапов установки и имеет morphed несколько раз. Несмотря на выполнение ряда рабочих инструкций, я должен был пропустить шаг. Мне не приходило в голову, что я пытаюсь «набрать» себя, потому что, очевидно, это не может быть проблемой; -)

Спасибо всем, что прокомментировал !!!

0
ответ дан 24 July 2018 в 18:32

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

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