У меня есть этот сценарий
#!/bin/bash
cd /home/user/somedir
pwd
это работает как ожидалось, но я хотел бы, чтобы этот сценарий транспортировал меня к/home/user/somedir, но я остаюсь в том же dir.
Как записать сценарий, который транспортирует меня (в терминале гнома) к/home/user/somedir?
Вы должны source
Ваш сценарий. Если не это будет выполнено в отдельной подоболочке, изменяя рабочий каталог подоболочки, но не оболочки Вы выполняете его в.
Получать его:
. myfile.sh
или
source myfile.sh
Можно читать больше здесь
exec bash
в концеСценарий удара воздействует на свою текущую среду или на того из его детей, но никогда на ее родительской среде.
Однако этот вопрос часто задают, потому что каждый хочет быть оставленным при подсказке удара в определенном каталоге после выполнения сценария удара из другого каталога.
Если это верно, просто выполните дочерний экземпляр удара в конце сценария:
#!/bin/bash
cd /home/user/somedir
exec bash