Linux: Как установить каталог по умолчанию для эмуляторов терминала?

12

После обновления до Ubuntu 11.04 мои терминалы (gnome-terminal и urxvt) запускаются "/"вместо"~"

Что может вызвать это поведение?

Я предполагаю, что рабочий каталог Gnome или X настроен на "/"что-то в этом роде, но я не знаю, с чего начать отладку.

Я использую zsh, конфиг может быть включен.

Joernsn
источник
Вы можете попытаться dirs -vвыяснить, происходит ли последняя запись от некоторого pushd после $ HOME. Просто мысль.
Ален Паннетье

Ответы:

5

Я предполагаю, что вы видите это при открытии терминов с помощью пользовательских сочетаний клавиш, когда они запускаются в правильном каталоге, если они открываются через меню или диалоговое окно « Запустить приложение ».

Любопытно, что программы, которые вы определили в разделе « Пользовательские сочетания клавиш» в диалоговом окне « Сочетания клавиш Gnome », похоже, не наследуют рабочий каталог сеанса. Ничего не зная о причинах, я подозреваю, что это ошибка.

обходные:

  • Используйте ярлык « Запустить терминал» в разделе « Рабочий стол » и установите предпочитаемый эмулятор терминала в Система» > « Настройки» => « Предпочтительные приложения» => « Система» > « Эмулятор терминала» ,

  • Установите сочетание клавиш для сценария оболочки, например

    #!/bin/sh
    exec rxvt -cd $HOME
    
  • Определите ярлык для включения настройки рабочего каталога, например:

    gnome-terminal --working-directory=$HOME
    

    или

    rxvt -cd /path/to/home
    

    (Последний не работает с $HOME для меня; я должен был дать абсолютный путь.)

Peth
источник
100% правильно! Благодарность! Я исправил это, используя вместо этого сочетания клавиш compiz. Очень хорошие предложения. (Диалог запуска приложения на самом деле ведет себя так, как и должно быть в Ubuntu Natty)
Joernsn
2

Я решил свою проблему, добавив команду cd в конце моего ~ / .bashrc

...
cd /your_desired_path

После этого каждый раз, когда вы вызываете консоль, которая использует .bashrc, будет запрашивать ваш желаемый путь.

Серхио Абреу
источник
1

Вы могли бы попытаться поставить cdв конце вашего ~/.zshrc.

Кир
источник
Zsh - моя оболочка по умолчанию. Разве это не испортило бы сценарии, ожидающие, что cwd будет чем-то другим ??
Joernsn
1
Скрипты ожидают быть в домашней папке при запуске.
cYrus
1

Несколько вещей, чтобы проверить:

  1. Ваш домашний каталог установлен правильно (cd ~ доставит вас домой нормально)
  2. Раздел, содержащий ваш домашний каталог, монтируется и используется во время входа в систему GDM.

У меня была похожая проблема с использованием ZFS и моего дома в пуле ZFS. ZFS не запускалась до GDM, поэтому, когда она зашла в мой домашний каталог, там не было. Через несколько секунд он был там, так что я мог перейти к нему.

Majenko
источник
Хорошие предложения! 1: Если я захожу за пределы X, все работает, поэтому кажется, что $ HOME по крайней мере там правильный. «echo $ HOME» также правильно в эмуляторах терминала. 2: я попытался перезапустить GDM, убедившись, что все установлено, без удачи :(
Joernsn