Сценарий оболочки, чтобы изменить каталог терминала и открыть второй терминал

можно сделать две вещи:

1. Первое к отключенному 3D ускорению на vm, пока это не фиксируется.

  1. Что делает журналы для X-сервера, говорят? если X не загрузится то будет причина там, можно попытаться отладить и возможно пойти далее.
3
25.02.2015, 08:44
2 ответа

Ваша первая версия впервые открывает Terminal , ждет, пока вы не закроете его, а затем изменяются в новый каталог.

Ваша вторая версия пытается запускать команду CD вместо оболочки, однако CD не является настоящей командой, а оболочка. (См. Тип -А CD Для этого.)

Вопрос в том, как Terminal решает, какой каталог для отображения. Обычно он использует текущий рабочий каталог, если он не переопределен - рабочий каталог .

Поэтому можно использовать либо:

cd /path/to/dir && gnome-terminal

, либо

gnome-terminal --working-directory=/path/to/dir

посмотрите на MAN GNOME-TERMNAL для доступных опций.

Для части SSH вы должны решить, хотите ли вы запустить вам GNOME-терминал на локальной или удаленной стороне. Чтобы запустить его на удаленном сайте, вы используете:

ssh -X user@foo.bar.edu gnome-terminal --working-directory=/path/to/dir

для локальной стороны, вы можете использовать что-то вроде:

gnome-terminal -e "ssh -t user@foo.bar.edu bash -c 'cd /path/to/dir && bash -l'";
3
27.01.2020, 21:19

Рабочий каталог останется измененным, если вы запустите сценарий с точкой (и пробелом )перед именем сценария.

Например, я использую один с именем pj, который перемещает меня в мой каталог python для проектов. Он содержит эти две строки:

#!/bin/bash
cd /home/pi/python

Я сделал его исполняемым, а затем скопировал в /usr/sbin, где он находится в моем $PATH.

Чтобы запустить его, я набираю:

. pj         (note the dot and the space)

И вуаля, он переходит в этот каталог и оставляет меня там.
Не может быть проще.

1
27.01.2020, 21:19

Теги

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