Полуночный Командующий конфигурирует опцию запуска местоположения dir

Да, использование -P опция pgrep,

т.е. pgrep -P 1234 получит Вас список идентификаторов дочернего процесса.

10
11.02.2018, 01:25
2 ответа

, что оказалось проще, как можно подумать. Переменная MC_HOME может быть установлена ​​на альтернативный путь перед запуском MC. Человек страницы не то, что вы можете найти ответ прямо сейчас =)

Вот как это работает: - Обычный путь

[jsmith@wstation5 ~]$ mc -F
Root directory: /home/jsmith

[System data]
<skipped>

[User data]
    Config directory: /home/jsmith/.config/mc/
    Data directory:   /home/jsmith/.local/share/mc/
        skins:          /home/jsmith/.local/share/mc/skins/
        extfs.d:        /home/jsmith/.local/share/mc/extfs.d/
        fish:           /home/jsmith/.local/share/mc/fish/
        mcedit macros:  /home/jsmith/.local/share/mc/mc.macros
        mcedit external macros: /home/jsmith/.local/share/mc/mcedit/macros.d/macro.*
    Cache directory:  /home/jsmith/.cache/mc/

и альтернативный способ:

[jsmith@wstation5 ~]$ MC_HOME=/tmp/MCHOME mc -F
Root directory: /tmp/MCHOME

[System data]
<skipped>    

[User data]
    Config directory: /tmp/MCHOME/.config/mc/
    Data directory:   /tmp/MCHOME/.local/share/mc/
        skins:          /tmp/MCHOME/.local/share/mc/skins/
        extfs.d:        /tmp/MCHOME/.local/share/mc/extfs.d/
        fish:           /tmp/MCHOME/.local/share/mc/fish/
        mcedit macros:  /tmp/MCHOME/.local/share/mc/mc.macros
        mcedit external macros: /tmp/MCHOME/.local/share/mc/mcedit/macros.d/macro.*
    Cache directory:  /tmp/MCHOME/.cache/mc/

Используйте случай этой функции:

Вы должны поделиться одно и то же имя пользователя на удаленном сервере (доступ к ключам RSA) и хотите использовать ваш любимый MC Конфигурация с перезаписью. Одновременные сеансы не мешают друг другу.

Это работает хорошо, как часть SSHRC-подхода, описанного в https://github.com/russell91/sshrc

11
27.01.2020, 20:02

Если вы имеете в виду, что хотите иметь возможность запускать два экземпляра mc от одного и того же пользователя одновременно с разными каталогами конфигурации, насколько я могу судить, вы не можете. Путь жестко закодирован.

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

  • Создать каталог $HOME/mc_conf, с поддиректорией, one.
  • Переместите содержимое $HOME/.config/mc в $HOME/mc_conf/один подкаталог
  • Дублируйте один каталог в виде $HOME/mc_conf/two.
  • Создайте скрипт, $HOME/bin/switch_mc:

    #!/bin/bash
    
    configBase=$HOME/mc_conf
    linkPath=$HOME/.config/mc
    
    если [ -z $1 ] || [ ! -e "$configBase/$1" ]; тогда
     эхо "Требуется достоверное имя субдиректории".
     выход 1
    
    
    убойный макияж
    объём оборотов $linkPath
    ln -sv $configBase/$1 $linkPath 
    
  • Запустите это, switch_mc one . rm не будет лаять о таком файле, это не имеет значения.

Надеюсь, там всё ясно - это устанавливает путь к каталогу config как симлинк. Что бы вы сейчас ни изменили и сохранили конфигурацию, это будет в каталоге one. Затем вы можете выйти и switch_mc two, вернуться к старой конфигурации, затем снова запустить mc, внести изменения и сохранить их, и т.д.

Вам может сойти с рук удаление killall mc и проигрывание; конфигурационный материал находится в файле ini, который считывается при запуске (таким образом, вы не можете включить его "на лету"). Затем он не трогается до выхода, если вы не "Save setup", но при выходе может быть перезаписан, так что опасность здесь заключается в том, что вы удалите что-то, что вы сделали ранее или за пределами запущенного экземпляра.

1
27.01.2020, 20:02

Теги

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