Potřebuji připojit adresář k PKG_CONFIG_PATH . Normálně bych použil standard
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:$(pyenv prefix)/lib/pkgconfig
ale PKG_CONFIG_PATH nebyla v mém systému dříve nastavena. Proto proměnná začíná : znak, který mu říká, že se má nejprve podívat do aktuálního adresáře. To nechci. Rozhodl jsem se pro následující,
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}${PKG_CONFIG_PATH:+:}$(pyenv prefix)/lib/pkgconfig
ale zdá se mi to tak ošklivé. Existuje lepší způsob? Jaký je vhodný způsob podmíněného připojení dvojtečky tehdy a pouze v případě, že proměnná již byla nastavena?
Přijatá odpověď:
S ${:+} jste na správné cestě operátor rozšíření, stačí jej mírně upravit:
V=${V:+${V}:}new_V
První složené závorky se rozbalí na $V a dvojtečka iff V je nastavena již jinak na nic – což je přesně to, co potřebujete (a pravděpodobně také jeden z důvodů existence operátora).
Takže ve vašem případě:
export "PKG_CONFIG_PATH=${PKG_CONFIG_PATH:+${PKG_CONFIG_PATH}:}$(pyenv prefix)/lib/pkgconfig"
Zachovat datum změny v adresářích/složkách pomocí Rsync?
Stáhnout všechny závislosti pomocí Yumdownloader, i když jsou již nainstalovány?