bash 쉘의 별칭과 함수의 차이점과 사용시기를 알고 싶습니다.
함수가 인수를 취할 수 있기 때문에 더 강력하다는 것이 명백합니다. 넷북이있는 도로에서 주로 일하고 에너지와 처리 능력을 절약하고 싶기 때문에 특히 성능 차이에 대해 조금 더 알고 싶습니다. bash 기능을 확장하는 두 가지 방법 중 하나입니다.
bash 쉘의 별칭과 함수의 차이점과 사용시기를 알고 싶습니다.
함수가 인수를 취할 수 있기 때문에 더 강력하다는 것이 명백합니다. 넷북이있는 도로에서 주로 일하고 에너지와 처리 능력을 절약하고 싶기 때문에 특히 성능 차이에 대해 조금 더 알고 싶습니다. bash 기능을 확장하는 두 가지 방법 중 하나입니다.
답변:
별명 을 별명 으로 생각하십시오 . 많이 수행하지만 단축하려는 명령이있을 수 있습니다.
예를 들어, 명령 줄에서 데스크톱으로 바로 이동하려는 경우가 종종 있습니다.
alias desktop="cd ~/Desktop"
그때부터 당신은 입력
desktop
터미널 cd ~/Desktop에서 당신을 위해 수행합니다 .
함수 는 논리를 포함합니다. 함수에서 여러 다른 프로그램을 호출 할 수 있습니다. 간단한 에코 함수가 있습니다.
function e {
echo $1
echo $1 $1
echo $1 $1 $1
}
별명을 부르면 별명과 비슷하게 보일 수 있지만
e Hello
귀하의 e ()는 많은 다른 일이 일어날 수 있습니다. 위의 간단한 예입니다.
간단한 사용 사례를 위해 별칭 을 예약해야합니다. 개인적인 예-나는 이렇게 rm명령 을 바꿨다.
alias rm='trash-put'
내가 rm을 할 때마다 디스크에서 삭제하는 대신 휴지통으로 보냅니다. 이것은 실수로 중요한 파일을 실수로 삭제할 수있는 터미널에서 내 서투른 느낌을줍니다.
기억해야 할 함수 는 논리의 조각입니다. 일반적으로 독립형 함수를 사용하지 않습니다. 더 큰 스크립트의 일부일 것입니다. 모든 파일을 가져 와서 파일을 돼지 라틴 버전으로 바꾸는 스크립트를 상상해보십시오. 다른 방법으로 수행하는 것을 무시하십시오.
그러나 할 수있는 일은 디렉토리의 모든 파일을 반복하고 파일 경로를 RenameAsPigLatin 함수에 전달하는 것입니다. RenameAsPigLatin 함수에는 숫자와 관련된 추가 논리가있을 수 있으며, 숫자로 끝나는 파일의 이름을 바꾸지 않기로 결정합니다.
즉시 기능으로 갖는 이점을 볼 수 있습니다. 이 기능은 이상한 규칙으로 이름을 바꾸는 데 집중할 수 있으며 나머지 스크립트는 필요에 따라 다양한 디렉토리를 탐색 할 수 있습니다.