기본 Powershell 별칭을 영구적으로 제거하려면 어떻게합니까?


22

알려지지 않은 이유로 인해 Invoke-WebRequest개발자는 curl의 적절한 구현과 호환되지 않더라도 "curl"을 별칭으로 포함 시켰 습니다. 이는 curl 요청을 시도 할 때 방해가됩니다. 를 사용하여 별칭을 제거 할 수 Remove-Item alias:curl있지만 다음에 Powershell을 시작하면 별칭이 반환됩니다. 시작할 때마다 스크립트를 실행하지 않고 영구적으로 제거 할 수있는 방법이 있습니까?


그냥 참고 : 나는 같은 명령을 실행 한 Remove-Item alias:curl윈도우 서버 2019의 내부와 심지어 restaring 후 다시 표시되지 않습니다이다
맷슨 kepson

답변:


33

이미 Powershell 프로파일이있는 경우이 단계를 건너 뛰십시오.

New-Item $profile -force -itemtype file

그런 다음 프로파일을 편집하십시오.

notepad $profile

다음 줄을 추가하십시오.

remove-item alias:curl

아래 명령으로 메모장을 저장하고 닫은 후 프로파일을 다시로드하거나 Powershell을 닫았다가 열어 프로파일을 적용하십시오.

. $profile

1
감사. 필자는 파워 쉘 개발자들이 이것을 생각하지 않았기 때문에 성가신 말을해야하므로 이제는 이런 식으로 문제를 해결해야합니다.
Nathan Ridley

나는 그것이 1 : 1 대체품이라고 생각하지 않습니다. Powershell은 정의 된 매개 변수 세트와 자동 매개 변수 바인딩을 사용하는 데 중점을두고 있습니다. 컬 별칭을 제공하는 것은 Powernix에 컬에 상응하는 컬이 있음을 * nix에 익숙한 사람들에게 표시하는 것입니다.
megamorf

1
첫 번째 단계는 항상 건너 뛸 수 있습니다. 방금했는데 파일을 만들지 묻는 팝업이 나타납니다.
np8

참고 : 일부 별칭의 경우 "-Force"
Dan Friedman

"재미있는"것은 심지어 푸른 문서조차도 물건을 빨리 테스트하기 위해 curl 명령을 보여줍니다. Invoke-WebRequest구문이 아닌 실제 컬 명령 ...
Akos Lukacs

4

curl.exe그냥 대신 사용을 고수 할 것 curl입니다. 이 방법은 특정 프로필로 실행되는 PowerShell에 의존하지 않으며 -NoProfile스위치를 사용하여 프로필없이 PowerShell을 실행할 수 있습니다 .


1
이론적으로 powershell은 결국 유닉스에서 실행될 수 있으며 프로그램 파일의 확장자는 ".exe"가 아닌 유닉스에서 실행될 수 있습니다. 유닉스 사람들이 스크립트 에서 별칭을 사용하도록 설정하는 것은 절대 의미가 없습니다 . 나쁜 디자인 선택이 Windows에서 오픈 소스 GNU 소프트웨어 스택을 죽이려고 고의적으로 노력했는지 궁금합니다. 그리고 쉘이 실제 프로그램을 찾도록 강제하기 위해 최소한 "명령"이 내장되어 있지 않은 이유는 무엇입니까? KISS 원칙에서 Powershell은 실제로 실패합니다.
Johan Boulé

1
@ JohanBoulé 음모 이론이 필요하지 않습니다. 단지 감독이었습니다. PowerShell 6은 이미 Linux에서 실행되며 별칭 문제가 부분적으로 해결되었습니다. 이 링크를 참조 initialsession : 제거 컬과 wget과 별칭 , 제거하십시오 모든 내장 별칭과 모듈에 넣어 , 그 이름이 별명이 기본 바이너리 호출하는 구문을 제공합니다
beatcracker

이러한 PR은 병합되지 않습니다. 그냥 말하면
Dan Friedman

0

Remove-Item alias:curPowershell 자동 실행 스크립트에 추가

XP, 2003 이상 :

%ALLUSERSPROFILE%\Documents\Msh\profile.msh
%ALLUSERSPROFILE%\Documents\Msh\Microsoft.Management.Automation.msh_profile.msh

XP, 2003 :

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