LINUX.ORG.RU

Не работает переменная в sh скрипте на bash

 


0

1

Переменная находится в sh файле путь до которого прописан тоже в sh файле на примере так:

index.sh

HOME=/home/name/
ZIPHOME=/bzip2/

$home/file.sh & 

file.sh

bzip2 “$HOME/$ziphome/zipfile”

$HOME переменная еще работает и то только большими буквами а вот $bzip2 уже нет.

в чем проблема?



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

Имена переменных чувствительный к регистру. В index.sh надо заменить $home на $HOME. В file.sh надо заменить $ziphome на $ZIPHOME. Это основная проблема. Но после этих фиксов не заработает, потому что второй скрипт не знает о первом. Надо либо экспортировать переменную в первом скрипте (export ZIPHOME=bzip2), либо же второй скрипт не вызывать отдельно, а засурсить в первом: . $HOME/file.sh).

P.S. а никакого $gzip2 в ваших «скриптах» вообще нет, непонятно, о чём речь.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)