Может ли подоболочка получить аргумент в области родительской оболочки?

compose()
    case    $#  in  
    [01])  "$@" ;;          ## if 1 or fewer args just run what we've got
       *)  "$1" | {         ## otherwise pipe output from $1 into a
    shift; compose "$@"     ## self-call until all args are gone
};  esac
1
09.03.2019, 22:08
1 ответ

Если вы запустите

(cd my_utility_version_dir && exec./my_util "$OLDPWD/my_data_file")

затем

  1. my_utilтекущий рабочий каталог(.)будетmy_utility_version_dir
  2. Ему будет предоставлен путь к my_data_fileв предыдущем рабочем каталоге -, из которого вы cdудалили.

Ищет ли он его там или нет, зависит от того, как именно my_utilработает внутри, но довольно часто он принимает путь для использования.

3
27.01.2020, 23:22

Теги

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