bashrc добавить команду, но не выполнять [дубликат]

У меня есть папка в ~ под названием work , которая содержит все мои работы. Обычно, когда я запускаю экземпляр Терминала, я набираю cd work .

Я бы хотел избежать этого, потому что это очень повторяющееся. Я попытался поместить cd work в свой .bashrc , но понял, что не всегда хочу, чтобы cd работал - например, когда я Open Терминал здесь или когда я открываю Терминал в VSCode (который должен открывать мой Терминал в текущем каталоге проекта, а не работа ).

Моя идея состоит в том, чтобы выводить тип терминала cd работать всякий раз, когда я открываю его, но не выполняю команду. Если мне действительно нужно cd work , все, что мне нужно сделать, это нажать Return. Однако, если я не хочу этого делать, я могу просто Ctrl + C .

Возможно ли это?

1
задан 26 March 2021 в 01:59

1 ответ

Решение

Вы можете использовать встроенную команду bash read :

  • Либо используйте ее в простой строке, либо добавьте в конец вашего ~ / .bashrc файла следующим образом:

     read -p "$ {PS1 @ P} cd work"; cd work 
     
  • Или определите пользовательскую функцию и вызовите ее в конце вашего файла ~ / .bashrc следующим образом:

     myfunction () {
    mycommand = "cd work" 
    read -p "$ {PS1 @ P} $ mycommand" 
     $ mycommand 
    } 
     
    myfunction {{1 }} 

Информация

  • read -p покажет текст и будет ждать либо Enter для продолжения, либо Ctrl + c для отмены. .
  • $ {PS1 @ P} покажет текущее приглашение перед текстом.
1
ответ дан 23 April 2021 в 23:30

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

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