별칭이 다른 터미널에서 작동하도록 만드는 방법

별칭이 다른 터미널에서 작동하도록 만드는 방법

기본적으로 별칭을 만들었습니다.

alias 1="python /root/sqlmap-dev/sqlmap.py"

1을 입력하면 제대로 작동하지만 다른 터미널을 열고 1을 다시 입력하면 문제가 발생합니다. 별칭을 인식하지 못합니다!

그렇다면 어디에서나 별칭을 사용할 수 있도록 하려면 어떻게 해야 할까요?

답변1

별칭은 정의된 세션에 따라 다릅니다. 각 세션에서 이를 정의해야 합니다. 다행히도 이를 수행하는 메커니즘이 있습니다. 새 터미널 세션이 시작될 때마다 동일한 작업을 수행합니다.

~/.bashrc이 파일은 귀하(귀하의 사용자 계정)가 새 터미널 세션을 열 때마다 실행됩니다. 이름이 마침표로 시작하므로 숨김 파일입니다. 숨겨진 파일이 파일 브라우저에 표시되는지 확인하십시오(아마도 를 통해 Ctrl + H). ~/.bashrc일반적으로 별칭이나 bash 함수와 같은 항목을 정의하는 데 사용됩니다.

그러나 이것이 거기에서 정의해야 한다는 의미는 아닙니다. Debian 및 Ubuntu(및 Kubuntu, Lubuntu, Mythbuntu, Ubuntu Budgie, Ubuntu GNOME, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Xubuntu 등과 같은 파생 제품), Deepin, Whonix 등의 파생 제품에 대한 사용자 정의 bash 별칭 등. 일반적으로 ~/.bash_aliasas대부분의 시스템에서 기본적으로 존재하지 않는 위치에 저장되므로 이들 중 하나를 사용하는 경우 계속해서 생성하십시오. 존재하는 경우 자동으로 호출됩니다.

시스템이 이 파일을 자동으로 호출하지 않더라도 여전히 bash 별칭을 정의할 수 있습니다(별칭이 많을 수 있습니다! 예:많은많은! 내 호스팅의 기본 계정에 약 60개의 계정이 있는데 이 계정이 ~/.bashrc내 . 다음 줄을 다음 줄에 추가하세요 ~/.bashrc.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

당신이 할 때 참고하시기 바랍니다시작터미널 세션. 이 파일에 대한 변경 사항은 열린 터미널 세션에 소급 적용되지 않습니다. 즉, 이 파일의 별칭이 정의/수정되기 전에 열린 터미널에서 새로 정의된 bash 별칭을 사용할 수 없습니다.

답변2

문제는 alias=...명령이 현재 쉘 세션에 대한 별칭을 생성하므로 시작하는 모든 새 세션에 대해(즉, 터미널을 열 때마다) 별칭을 정의해야 한다는 것입니다.

별칭을 영구적으로 만들려면 ~/.bashrcbash와 같은 셸의 구성 파일에 정의를 저장하세요.

답변3

이를 쉘의 구성 파일(예 ~/.profile: .

관련 정보