2016-09-09 3 views
-5

Я должен реализовать сценарий развертывания, который запускает команду с помощью специального символа от конкретного пользователя.Linux, команда запуска BASH со специальным char

Команда, я должен начать это:

cd /path 
. ./setantenv.sh 

Я пытаюсь запустить команду с этим синтаксисом:

su - USER -s /bin/bash -c 'cd /PATH/ && . ./setantenv.sh' 
su - USER -s /bin/bash -c 'cd /PATH/ && ant clean all' 

Но у меня есть проблемы с . ./setantenv.sh

+4

В чем проблема? –

+4

Какой из этих символов особенный? Знаешь, мы все уникальны. – tripleee

ответ

2

Чтобы настроить среду для вашей последующей команды ant, вы должны включить «./setantenv.sh» в свой второй вызов. Оба вызова приводят к независимым процессам bash, которые не разделяют их специфическую среду.

попробовать это:

su - USER -s /bin/bash -c 'cd /PATH/ && . ./setantenv.sh && ant clean all' 
+0

спасибо большое! ! – Luca

Смежные вопросы