Articles of bashrc

Создание псевдонима команды rm

Создание псевдонима команды rm, чтобы при выполнении команды rm она сначала скопировала файл в /tmp/recycle_bin а затем удалила файл. Но я получаю проблемы в процессе. Шаги, выполненные мной: Я написал ниже команду в файле ~/.bashrc : alias rm=’cp $@ /tmp/recycle_bin && rm $@’ выполните его с помощью следующей команды: . ~/.bashrc Откройте новый терминал и […]

Shell Script To CD и запуск скрипта Python

Хорошо, я знаю, что есть много, как этот вопрос, но я буквально ничего не понимаю. То, что мне нужно, это сценарий, который cd для /home/project затем запускает python3 pyscript.py Я создал псевдоним для alias name=’cd /home/project cd alias name=’cd /home/project но когда я запускаю скрипт оболочки, я получаю ошибку: : not found: 3: script: script.sh: […]

Как узнать, какой метод использовался для входа (пароль против ключевого файла) из bashrc

Есть ли способ, как вы можете проверить, какой метод аутентификации использовал пользователь, который только что вошел в учетную запись? Мне нравится распечатывать предупреждение после входа в систему, если кто-то использует пароль вместо ключевого файла. Конечно, одним из решений является проверка логов ssh. Но есть ли лучший способ сделать это? Поскольку поиск журналов может повлиять на […]

Многострочные команды запутались в моей PS1

declare __host=’\[\e[30;102m\] \h \[\e[0m\]’; declare __dir=’\[\e[1;97;44m\] \w \[\e[22m\]’; declare __arrow=’\[\e[1m\]▸ \[\e[0m\]’; function __git_status() { local info; info=$(__git_info) && printf ‘\e[30;43m%s’ “$info”; } PS1=”$__host$__dir”‘$(__git_status)'”$__arrow “; Когда я иду выполнять многострочные команды, они возвращаются к стартовой строке. Я уверен, что это как-то связано с побегами в моей PS1. Я перепробовал почти все, что мог придумать, и никуда […]

Установка псевдонима, когда двойные кавычки и одинарные кавычки оба терпят неудачу

Этот вопрос не является дубликатом Почему псевдоним ведет себя иначе, чем прямой запуск команды bash? потому что я пробовал это решение, и оно не сработало. Я заменил все свои одинарные кавычки на двойные и наоборот. Команда не работает ни в коем случае. Я пытаюсь реализовать псевдоним sys , который откроет файл, в котором я отслеживаю […]

Условный env proxy?

У меня есть следующая информация прокси в моем bash_profile: export http_proxy=http://work.proxy.address.com:8080 export https_proxy=$http_proxy export no_proxy=”localhost,.workURL.com” Это позволяет мне запускать такие вещи, как Homebrew, без необходимости переключать Wi-Fi на работе (у нас есть две сети Wi-Fi – одна прокси). Проблема в том, что если я дома и не подключен к прокси, я не могу использовать Homebrew […]

Мой терминал MacOSX не показывает текущий каталог

Независимо от того, в какой каталог я вхожу, терминал всегда показывает мне корневой каталог, который называется «Nidas-MBP». Nidas-MBP% cd Projects Nidas-MBP% ls 09-Selector-Exercise-Starter.zip My Little Form 09_Selector_Exercise_Starter Prefix Free File Blog Recursion Practice Callbacks Themes Callbacks-Exercise Todo-Vanilla Copywriting css3-contact-form.zip Freelancer Theme webpack-deepdive Frog Chase Nidas-MBP% cd webpack-deepdive Nidas-MBP% ls es6-todomvc Nidas-MBP% Я попытался добавить следующую […]

Экспортируйте vars env в окно tmux windows / сессии / панели

Есть ли способ экспортировать / обновить список переменных env из файла или что-то в окне / сессии / панели tmux? Здесь я должен вручную установить исходный код .bashrc для обновления новой переменной env на панели каждого tmux

Как я могу настроить $ PROMPT_COMMAND без перезаписи по умолчанию (если есть)?

Терминал Mac поставляется с PROMPT_COMMAND умолчанию, который проверяет историю и обновляет текущий рабочий каталог (название вкладки): Добавьте echo $PROMPT_COMMAND в начало вашего .bash_profile и вы увидите: shell_session_history_check; update_terminal_cwd Я хочу добавить свой собственный PROMPT_COMMAND без PROMPT_COMMAND по умолчанию. Значение по умолчанию должно предшествовать моему настраиваемому PROMPT_COMMAND с точкой с запятой и пробелом для их разделения. […]

Почему `sudo su -l -c" java "` работает, даже если `sudo su -l -c 'echo $ PATH" `отображает местоположение двоичного файла java?

У меня есть сервер с двоичными файлами Java из tarball в настраиваемом месте, а в /etc/bash.bashrc : export JAVA_HOME=/path/to/java/home export PATH=$JAVA_HOME/bin:$PATH Когда я запускаю sudo su -l -c "java" , я получаю -su: java: command not found . Однако, когда я sudo su -l напрямую, я могу запускать java без ошибок. Кроме того, sudo su […]