how to приложи тебе path with переменные from source file

I have в source file that contains some переменные, for example,

 locate=$HOME

and в shell рукописный шрифт that contains

. .foorc


cat ${locate}/file.txt 

I get cat ошибка with the "не such file" mention. Every file is in its assigned directory.

What did I do wrong?

Thanks, Рафаэль

0
задан 5 December 2015 в 15:27

2 ответа

Можно использовать переменные, объявленные в файле при помощи source filename в сценарии оболочки.

<час>

Пример:
Это - то, как мой каталог похож:

.
├── .foorc
├── foo.sh
└── testdir
    └── file.txt

содержание .foorc:

directory="./testdir"
word="World"

содержание file.txt:

foo-bar

содержание foo.sh:

#!/bin/bash

source .foorc

echo "Hello $word"
cat "$directory"/file.txt

Теперь, работая ./foo.sh результаты в:

Hello World
foo-bar
1
ответ дан 26 July 2019 в 13:27

Проблема решена. Я предположил, что, если эти cat функция не могла бы найти файл, это была проблема из-за рабочего каталога. Я добавил cd к каталогу, в котором я, казалось, был, и проблема решила

cd ${location}
cat file.txt

Спасибо за Ваш очень полный ответ.

0
ответ дан 26 July 2019 в 13:27

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

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