powershell과 동등한 bash 별명?


12

기본적으로 Windows PowerShell이 ​​시작되고 C:\Users\SantoshXAMPP 설치가 시작되어 D:\htdocs 폴더가에 있습니다 D:\xampp\htdocs. htdocs 폴더에서 무언가를 편집해야한다면 full을 입력해야합니다 cd D:\xampp\htdocs\ (자동 완성은 그리 친절하지 않습니다) . 그 파일을 편집하십시오.

이 PowerShell이 ​​Bash라면 .bash_aliases 파일 에서이 작업을 수행합니다.

alias htdocs='cd D:\xampp\htdocs'

PowerShell에서 파일 및 별칭과 같은 Bash 별칭을 모든 명령으로 유지할 수 있습니까?

답변:


12

당신은 원하는 설정-별명 PowerShell 스크립트 또는 기능 coombination에서 Section 명령을. 편집기를 열고 다음을 작성하십시오.

set-location d:\xampp\htdocs

이 파일을 예를 들어 c : \ Users \ kumar \ htdocs32.ps1에 저장 하거나 이와 같은 함수를 만들 수 있습니다.

function htdocs32 { set-location d:\xampp\htdocs }

스크립트를 실행하려면 스크립트를 로컬로 허용하는 실행 정책을 설정해야합니다. 관리자 권한으로 powershell 명령 행을 열고 다음을 입력하십시오.

set-executionpolicy remotesigned

이제 powershell 스크립트의 별명을 설정할 수 있습니다.

set-alias htdocs c:\Users\kumar\htdocs32.ps1

htdocs를 입력하면 htdocs 폴더로 들어갑니다.

Powershell은 소위 cmdlet의 이름을 지정하기 위해 동사-명사 조합을 사용하고 있습니다. 동사는 당신이하고 싶은 것을 말하고 당신이하고 싶은 것을 명사로 지칭합니다.

사용하려는 set-alias 명령에 대한 도움말을 보려면 다음을 수행하십시오.

get-help set-alias -full  |more 

그리고 더 적은 없습니다. 다른 방법은 http://technet.microsoft.com/en-us/library/ee176958.aspx를 읽는 것입니다.

또한 파워 쉘로 시작하려면이 URL을 살펴 보는 것이 좋습니다 : http://www.powershellpro.com/powershell-tutorial-introduction/

별명을 영구적으로 저장하려면 사용자 프로파일에 별명을 저장해야합니다. 먼저 다음을 사용하여 프로파일이 이미 존재하는지 테스트하십시오.

PS C:\> $profile

잘못된 경우 다음 을 입력하여 새 프로필을 만들 수 있습니다.

 New-Item -path $profile -type file -force

이제 파일을 편집 할 수 있습니다

c:\Users\kumar\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

definiton 함수와 별칭을 입력하십시오. 위에서 설명한대로.

그러나 리눅스에서 이것에 대한 별칭을 설정하는 것은 필요하지 않습니다. sicne ~ / .bahsrc에서 설정할 수있는 bash 용 환경 변수 $ CDPATH가 있습니다.


이 별칭이 저장된 파일이 있습니까? 백업하면 큰 도움이 될 것입니다.
Santosh Kumar

점점 Cannot resolve alias 'htdocs' because it refers to term 'cd D:\xampp\htdocs', which is not recognized as a cmdlet, function, operable program, or script file. Verify the term and try again.일을set-alias htdocs "cd D:\xampp\htdocs"
산토 쉬 쿠마을

좋아, ckdlet을 작성하는 것이 좋습니다. 텍스트 편집기를 열고 set-locaation c : \ xampp \ htdocs를 작성하고이 파일을 htdocs32.ps1로 저장하십시오. htdocs32.ps1이 c : \ Users \ kumar \ htdocs32.ps1에 저장된 것으로 가정하면 set-alias htdocs c : \ Users \ kumars \ htdocs32.ps1을 사용할 수 있습니다. 실행 정책을 적절하게 설정했는지 확인하십시오.
l1zard

@SantoshKumar 솔루션은 '/ d'플래그를 사용하여 DRIVE를 변경 한 다음 디렉토리를 변경해야합니다. || "cd / d D : \ xampp \ htdocs"
Eddie B

2

실제로 이것을 시도하면 자동으로로드 된 모듈이 생성됩니다.

C : \ Users \ kumar \ Documents \ WindowsPowerShell \에서

존재하지 않는 경우 새 폴더 모듈을 작성하십시오.

PS C:\>mkdir Modules

모듈에서 ex : "Quicky"라는 폴더 호출을 만듭니다.

PS C:\>mkdir Quicky

"quicky.psm1"이라는 파일을 작성하십시오. .psm1은 모듈의 확장자입니다.

파일을 편집하고 해당 줄을 추가하십시오.

function htdocs32 { set-location d:\xampp\htdocs }

모듈을 저장하십시오.

그런 다음 간단히 "htdocs32"함수를 호출하십시오.

PS C:\>htdocs32

0

너무 제한적이지 않은 powershell 스크립트 실행 정책이있는 경우이를 수행 할 스크립트 만 있으면됩니다. BASH와 달리 Windows 스크립트 완료 후 셸에 영향을 줄 수 있으므로 별칭이나 bash 함수에 해당하는 것이 필요 하지 않습니다 .

htdocs.ps1 (PATH의 어딘가에 넣으면 cdhtdocs.ps1을 직접 사용하지만 이름 지정 규칙입니다)

chdir "d:\xampp\htdocs"

참고 :이 역시 필요에 따라 변경 드라이브로 작동합니다. 즉, c : \ temp \에 있으면 시작됩니다.

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