Windows에서 Git Bash 대 Windows Power Shell 대 Command 프롬프트의 차이점은 무엇입니까?
저는 맥의 터미널에 익숙한 맥가이에요.지금은 윈도우를 사용하고 있습니다.
- 이 CLI 옵션들의 차이점은 무엇입니까?
- 제가 언제 하나를 다른 하나보다 더 사용해야 합니까?
- 고려해야 할 CLI 옵션이 더 있습니까?
- Windows에 적응하려는 Mac 사용자라면 어떤 CLI를 사용하시겠습니까?
Windows(윈도우)를 사용하려는 이유는 도커 프로젝트의 CLI가 Windows(윈도우) 사용자에게 작동하는지 확인하고 컨테이너에서 Windows(윈도우)로 전송되는 파일을 쓸 수 있는지 확인하고 README(리드미) 파일에 Windows(윈도우) 사용자를 위한 지침이 있는지 확인하기 위해서입니다.그리고 기본적으로 파이썬처럼 제가 윈도우에서 하는 모든 것을 테스트해보세요.
깃배시는bash
, IIRC는 MacOS의 기본 셸이기도 합니다.윈도우즈의 기본 셸은 아니지만 여러 구현이 존재합니다(CygWin, MinGW, ...).
Git는 수많은 POSIX(UNIX/Linux/등) 유틸리티와 함께 번들로 제공됩니다.bash
; 비슷한 이름의 Windows 명령어로 "충돌"을 피하기 위해 가장 일반적인 설치 옵션은 설치하는 것입니다.bash
다른 POSIX 명령을 실행할 때만 사용할 수 있도록 합니다.bash
. Git 설치 관리자가 이 "개인" 버전을 시작하는 바로 가기를 만듭니다.bash
, 그래서 "깃배시".
윈도우즈 명령 프롬프트는 이전 MS-DOS 명령 셸인 COMMAND에서 파생된 기본 윈도우즈 셸인 CMD.EXE를 실행합니다.COM. 대부분의 POSIX 셸보다 성능이 훨씬 떨어집니다. 예를 들어 비교적 최근까지 if/then/else 구문을 지원하지 않았으며 셸 함수나 별칭을 지원하지 않습니다(이러한 제한에 대한 몇 가지 해결 방법이 있음).
PowerShell은 스크립트 환경에 가깝습니다.UNIX/리눅스 시스템의 Perl과 비교해 보겠습니다. 표준 셸보다 훨씬 강력하지만 명령줄에서 사용하고 싶은 것은 아닙니다.
주의해야 할 사항은 일부 PowerShell 기능의 경우 Windows에 번들로 제공된 버전은 일반적으로 몇 년이 지난 PowerShell 버전을 업데이트해야 할 수도 있다는 것입니다.PowerShell을 업데이트하려면 일반적으로 관리자 권한이 필요합니다. 버전에 따라 를 업데이트해야 할 수도 있습니다.NET 프레임워크.
Windows에 적응하려는 Mac 사용자라면...사정에 따라 다르겠지.단기적으로는 다음과 같은 익숙한 것을 사용하는 것이 더 쉬울 것입니다.bash
. 그러나 장기적으로 사용자는 물론, 보다 중요하게는 사용자의 잠재적인 사용자도 제3자 도구에 의존하고 싶지 않을 수 있습니다. 특히 일반적으로 추가 학습 곡선을 제시하는 Windows 사용자의 경우 더욱 그렇습니다.
...의 경우에 사용할 것에 관하여.기술적 기능과 사용자에게 제공하고자 하는 인터페이스 모두에서 달성하려는 작업에 따라 달라집니다.위에서 언급한 바와 같이 CLI보다 PowerShell이 스크립팅에 더 적합하다고 생각합니다. cmdlet(내장형 또는 직접 생성한 cmdlet)만 실행하면 되는 경우가 아니라면 말입니다.
셸 간의 일부 차이점에 대한 개요이며 형상 비교에 의한 형상이 아닙니다.
CMD
(명령 프롬프트) 및PowerShell
둘 다 윈도우용 셸입니다.CMD.exe
로부터 생산되었습니다.COMMAND.COM
, 그 자체로 탄생한 것입니다.MS-DOS
, 그리고 몇 가지 논리적 구성을 가지고 있으며 프로그램을 실행하고 출력을 처리하며 셸에서 기대하는 대부분의 기본 작업을 수행할 수 있습니다.일반적으로 다른 포탄이 할 수 있는 것에 따라 매우 제한적으로 간주되지만 사용 방법을 알고 있다면 불가능합니다.그러나 명확한 로드맵 없이 새로운 기능을 추가하는 등 실제로 "설계"된 적은 없었습니다.
Powershell
는 에 연결된 상태로 처음부터 설계된 포탄입니다.NET 및 보다 현대적인 언어 구성 요소가 내장되어 있습니다.마이크로소프트는 파워셸을 대체하기 위해 설계했습니다.CMD.exe
그리고 일괄 스크립팅을 할 수 있습니다.CMD
감가상각 대상과는 거리가 멉니다.Powershell
직접 호출할 수 있습니다.NET 클래스, 기본적으로 WMI 개체와 함께 작동하며 원격 기능이 내장되어 있습니다.일괄 스크립팅보다는 프로그래밍이나 스크립팅 언어에 더 가깝습니다.주변에는 훨씬 더 강력한 커뮤니티가 있습니다.Powershell
배치 스크립팅의 경우보다 오늘날, 그리고 일반적으로 새로운 코드를 작성하는 것이 권장됩니다.Powershell
배치를 계속 사용하는 것 보다(CMD
) 스크립트를 작성합니다.
Powershell
그런 느낌이 듭니다.CMD
처음에는프로그램을 실행하고 출력을 처리할 수 있으며 대부분의 경우 프로그램이 실행되든 정확히 동일하게 동작합니다.Powershell
, 또는 로부터CMD
. 그러나 몇 가지 차이점을 금방 알 수 있습니다. 모든 변수가 환경 변수로 간주되는 것은 아니며 변수 앞에 a가 붙습니다.$
에 싸여 있는 것과는 반대로%
, 그리고.Powershell
파이프라인은 훨씬 더 강력합니다.CMD
관로의Powershell
또한 주로 텍스트 기반인 대부분의 다른 셸 언어와 비교할 때 고유한 개체 지향적입니다.
여기서 더 자세히 읽어보실 수 있습니다. 그 이유에 대해.Powershell
배치 스크립팅보다 권장되며, 에 대한 많은 기록이 있습니다.CMD.exe
배치 파일도 포함할 수 있습니다.
Git Bash
같음bash
셸은 리눅스와 맥OS에서 익숙하지만 대신 윈도우용으로 컴파일됩니다.그것은.Git
그것이 Git for Windows와 함께 설치되었음을 나타내는 이름을 가진 접두사, 포장.git
git와 함께 사용할 수 있도록 Windows용으로 컴파일된 다양한 *nix 유틸리티.뛸 수 있습니다sh
그리고.bash
스크립트와 함께 설치되는 유닉스 프로그램을 호출할 수 있습니다.
유닉스 유틸리티는 일반적으로 다음에서 실행할 수 있습니다.CMD
아니면PowerShell
기본적으로 설치 관리자는 이러한 유틸리티를 시스템이나 사용자에 추가하지 않습니다.PATH
, 사용자가 다른 컨텍스트에서 사용할 수 있는 유틸리티를 잠재적으로 무시하지 않도록 합니다.기본적으로 다음과 같이 설치된 유틸리티를 격리합니다.Git Bash
로.Git Bash
.
외git
자동화 기능을 사용하는 것을 권장하지 않습니다.Git Bash
생산과 관련된 모든 것을 위해, 당신은 아마도 설치를 관리하는 것이 더 나을 것입니다.cygwin
,msys2
, 다른 유닉스 호환성 계층을 선택할 수도 있습니다.하지만 요즘에는 일반적으로 제가 선호하지만, 그것은 개발 중에 가지고 있는 편리한 껍질이 될 수 있습니다.PowerShell
위에bash
Windows 스크립팅에 사용할 수 있습니다.
언급URL : https://stackoverflow.com/questions/56362161/on-windows-what-is-the-difference-between-git-bash-vs-windows-power-shell-vs-com
'programing' 카테고리의 다른 글
동일한 SELECT 절에서 열 별칭 사용 (0) | 2023.11.05 |
---|---|
이 트레이스 시스템 호출은 무엇을 의미합니까? (0) | 2023.11.05 |
워드프레스필터가추가되지않음 (0) | 2023.11.05 |
wocommerce_shipping_free_shipping_is_available이 작동하지 않습니다. (0) | 2023.11.05 |
MySQL JDBC 드라이버 msi 설치 (0) | 2023.11.05 |