'clear'할 때마다 bashrc 파일을 어떻게 소싱 할 수 있습니까?


13

이것은 나쁜 생각 일 수 있습니다. 내가 그것에 대해 더 많이 생각할수록 나는 아마 그것을해서는 안된다는 것을 깨닫게됩니다 ...하지만 노력하고 실패했기 때문에 나쁜 생각이더라도 그것을하는 법을 정말로 알고 싶습니다.

내가 원하는 것은 clear명령을 실행할 때마다 bashrc 파일을 소스로 만드는 것 입니다. 그 이유는 완전히 물질적입니다. bashrc를 소스 할 때 시스템 정보가 표시되고 나에게 시원하며 지울 때마다 맨 위에 오기를 원합니다.
별칭을 설정하려고 시도했지만 clear무한 루프가 계속 발생합니다. 명백한 해결책은 별명을 분명한 것 이외의 것으로 변경하여 방해하지 않고 별명에서 명확한 명령을 실행할 수 있지만이 시점에서 뇌에 뿌리를 내릴 수 있도록 너무 자주 입력하는 것입니다. clear를 입력하고 명확하게하고 bashrc 파일을 소스 화하고 싶습니다.


2
.bashrc 스크립트에 누적 효과가 없는지 확인하십시오. 경로에 물건을 추가하는 것과 같은 일을하면 지저분해질 수 있습니다. 일반적으로 .bashrc는 쉘 환경을 초기화하기위한 것입니다. 다른 일을하는 경우 새 스크립트로 나누고 명확하게 호출하는 것이 좋습니다. 또한 다른 사람이 시스템을 사용하거나 도와 주면 공통 명령의 용도를 변경했기 때문에 예기치 않은 동작이 발생할 수 있습니다.
Joe

@Joe 그것은 내 시스템을 사용하는 다른 사람들에 대한 좋은 지적입니다. 너희들은 내가 생각하지 못한 것들을 많이 가져왔다.
CaldwellYSR

답변:


27

alias clear='source ~/.bashrc; \clear'

이 명령 \은 bash에게 별칭이 아닌 외부 명령을 호출 할 것을 지시합니다.


아 대단하다, 나는 그것이 그렇게 간단한 일이라는 것을 알고 있었다!
CaldwellYSR

13
다른 순서로이 작업을 수행하려고하거나 .bashrc생성 된 출력을 지우면 지워 집니다. 그러나 출력 을 전혀 생성 하지 않는.bashrc 것도 좋지 않습니다 .
CJM

@cjm 그래, 나는 오늘 아침 주문에 대해 깨달았다. 나는 이미 올바른 순서로 그것을 가지고 ` in front of 있었지만, bashrc와 출력에 대한 정보를 볼 것입니다. 링크 주셔서 감사합니다.
CaldwellYSR

대안 \clearcommand clear
glenn jackman

@CaldwellYSR, 짧은 버전은 그 ssh host command소스 .bashrc입니다. 출력이 발생하면 호스트 및 계정에서 원격 명령을 실행하려는 스크립트가 혼동됩니다. 당신은 지금 그렇게하지 않을 수도 있지만 언젠가는 할 수도 있습니다. 그러면 왜 작동하지 않는지 혼란 스러울 것입니다.
CJM

2

원하는 시스템 정보를 인쇄하는 스크립트를 작성하십시오. 별명 .bashrc과 함께 호출하십시오 clear.


1

나중에 해당 소스 .bashrc의 별명을 설정 하십시오 .clear.bashrc

alias clear='clear && . ~/.bashrc'

1

Joe의 의견에 따르면 ... "누적 효과"(프로필이 여러 번 다시 실행되기에 안전하지 않은 경우)가있는 경우 여기를 해결하기위한 해킹이 있습니다!

alias clear='\clear; exec bash -l'

이것은 당신이 지울 때마다 새로운 통역사를 시작합니다. 그러나 exec는 나중에 수많은 프로세스가 필요하지 않다는 것을 의미합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.