Как изменить каталог с помощью сценария

У меня есть этот сценарий

#!/bin/bash
cd /home/user/somedir
pwd

это работает как ожидалось, но я хотел бы, чтобы этот сценарий транспортировал меня к/home/user/somedir, но я остаюсь в том же dir.

Как записать сценарий, который транспортирует меня (в терминале гнома) к/home/user/somedir?

10
задан 18 September 2015 в 16:44

2 ответа

Вы должны source Ваш сценарий. Если не это будет выполнено в отдельной подоболочке, изменяя рабочий каталог подоболочки, но не оболочки Вы выполняете его в.

Получать его:

. myfile.sh

или

source myfile.sh

Можно читать больше здесь

13
ответ дан 23 November 2019 в 04:26

Использовать exec bash в конце

Сценарий удара воздействует на свою текущую среду или на того из его детей, но никогда на ее родительской среде.

Однако этот вопрос часто задают, потому что каждый хочет быть оставленным при подсказке удара в определенном каталоге после выполнения сценария удара из другого каталога.

Если это верно, просто выполните дочерний экземпляр удара в конце сценария:

#!/bin/bash
cd /home/user/somedir
exec bash
3
ответ дан 23 November 2019 в 04:26

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

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