시그윈: 소개. Windows에서 Linux 명령을 실행하는 방법 Cygwin Windows 10 설치

간단하고 기본적으로 모든 사람에게 좋습니다. 적어도 현재로서는 Git 버전만 최신 버전이 아닙니다. 그러나 Git을 사용한 일상적인 작업에는 충분합니다. 버전을 살펴보면 다음과 같이 표시됩니다.

$git --버전
자식 버전 1.9.5.msysgit.0

그러나 갑자기 최신 기능이 필요한 경우 Cygwin 패키지에서 Git을 설치할 수 있습니다. 물론 이렇게 하려면 Cygwin 자체를 설치해야 합니다. 이것에 대해 복잡한 것은 없습니다. 여기로 가서 설치 프로그램을 다운로드해 보겠습니다. 이것이 바로 설치 프로그램, ㅏ 배포판이 아닙니다. 네트워크에서 모든 패키지를 다운로드하기 때문입니다. 게다가 설치된 패키지를 업데이트하거나 새 패키지를 설치하는 데에도 사용해야 합니다.

그래서 우리는 다운로드합니다

그리고 설치 프로그램을 실행하세요.

하나, 둘, 셋 해보세요

어쨌든 나중에 필요한 것이 있으면 다운로드하여 설치할 수 있습니다. 보시다시피 이 패키지의 Git 버전은 2.1.4로 1.9.5보다 확실히 최신 버전입니다. 2.3.1은 이미 Linux 및 Mac OS X에서 사용할 수 있습니다.

혹시라도 다운로드할 수 있는 빠른 서버 몇 대를 더 제공해 드리겠습니다.

이건 그냥 동화야

자, 다 준비됐어요

실행하고 처음 실행 시 구성 파일이 있는 위치를 알 수 있습니다.

오른쪽 그림은 사용자의 홈 디렉터리가 어디에 있는지 보여줍니다. 설치폴더입니다(제 경우에는 C:\cigwin64), 폴더 , 그 다음에 사용자 이름 폴더이미 구성 파일이 포함되어 있습니다 .bashrc, .bash_profile, .inputrc그리고 .프로필.

모든 터미널 구성은 이 파일에서 수행됩니다. 이것은 큰 별개의 주제이기 때문에 여기서는 설명하지 않겠습니다.

기본 bash 설정은 파일에서 이루어집니다. .bash_profile.

Git 설정 파일(.gitconfig)도 홈 디렉터리에 위치한다는 점을 참고하세요.

또한 구성 모습왼쪽 상단에 있는 터미널 아이콘을 클릭하고 옵션을 선택하여 터미널을 선택하세요.

필요한 경우 추가 패키지 Cygwin의 경우 검색할 수 있습니다.

모든 설정을 마친 후 Cygwin 터미널 창은 다음과 같습니다. 그리고 설치된 Git의 버전을 살펴보겠습니다.

자, 여기에 본격적인 Git이 있습니다. 이제 실제 저장소에서 작동을 (빠르게) 확인해 보겠습니다.

모든 것이 작동하고 있습니다.

추신 다시 한 번 주목할 만한 점은 Cygwin에서 설치된 msysGit과 Git의 전역 및 시스템(전역, 시스템) 설정이 서로 다른 위치에 저장되어 있으며 서로 간섭하거나 겹치지 않는다는 것입니다. 제 생각에는 이것이 편리하다고 생각합니다. 도구는 전역 설정 file.gitconfig에 해당 설정을 기록하려고 시도하며 이로 인해 때때로 불편함과 혼란이 발생할 수 있습니다.

Linux 이후에 명령줄을 사용해야 했던 적이 있습니까? 윈도우 문자열? 네, 저한테는요. 매우 이례적입니다. 많은 팀이 다르게 호출됩니다. 예를 들어, Windows의 ls에 해당하는 것은 dir입니다. 현지 통역사의 주장 전달 스타일이 다릅니다. 그리고 Linux 유틸리티가 제공하는 많은 기회는 실제로 존재하지 않습니다. Windows에서 유사한 Linux 환경을 얻으려면 어떻게 해야 합니까? Cygwin을 설치하면 가능합니다.

배포된 시스템 알아보기

첫째, cygwin은 기본적으로 Windows 명령줄보다 작업하기 더 편리한 자체 터미널 에뮬레이터를 설치합니다.

여기서 첫 번째 문제가 발생합니다. 보시다시피, 창문 유틸리티, cmd.exe를 포함하여 oem-866으로 텍스트를 인쇄하고 cygwin 에뮬레이터는 utf-8로 텍스트를 읽습니다. 인코딩을 866으로 전환하면 코드 페이지, 이 조치의 결과는 더욱 악화됩니다.


cygwin은 유니코드 인코딩의 러시아어 이름을 866 인코딩의 문자열로 해석하고 결국 새 디렉터리 /home/╨Ф╨╝╨╕╤В╤А╨╕╨╣를 만들기로 결정했습니다. 따라서 모든 것을 그대로 두고 가능하다면 cygwin 유틸리티를 사용하는 것이 좋습니다. 터미널 에뮬레이터 없이 명령 셸을 실행해야 하는 경우 Cygwin.bat 배치 파일을 실행하세요.
이 경우 cygwin은 C:\cygwin64\ 폴더에 설치됩니다. cygpath 유틸리티는 경로가 unix 경로에서 Windows 경로로 변환되는 방법을 찾는 데 도움이 됩니다.
$ cygpath -w `pwd`
C:\cygwin64\홈\드미트리

$ cygpath -w /
C:\cygwin64

$cygpath "C:\cygwin64"
/

$ cygpath "C:\cygwin64\home\Dmitry"
/홈/드미트리
모든 경로가 C:\cygwin64\로 변환된 경우 C: 드라이브에 어떻게 액세스할 수 있습니까?
간단 해. /cygdrive 디렉토리에는 이름별로 Windows 볼륨에 해당하는 마운트 지점이 포함되어 있습니다.
$cygpath "C:\"
/cygdrive/c

$ cygpath -w /cygdrive/c/somedir
C:\somedir
Cygpath는 또한 이 마운트 지점에 대한 호출을 성공적으로 변환합니다. Windows 경로.
그건 그렇고, cygpath와 같은 유틸리티의 존재는 왜 cygwin에서 가능하다면 해당 유틸리티만 사용해야 하는지를 보여줍니다. Java VM을 실행해야 하고 Windows 경로만 이해하는 경우 시작 시 cygwin 경로를 변환해야 합니다.
$ java -jar `cygpath -w "/opt/some.jar"`
따라서 Linux의 많은 스크립트를 Windows에서 간단히 가져와서 실행할 수는 없습니다. 때로는 스크립트를 전송해야 할 때도 있습니다. 게다가 모든 유틸리티가 그런 것은 아닙니다. 명령줄그들은 작동할 것이다.

더 많은 가능성

SSH

OpenSSH 클라이언트와 서버를 설치할 수 있습니다. 이를 통해 다음을 얻을 수 있습니다. 원격 액세스 bash 쉘, 다른 컴퓨터 또는 전화기(예: JuiceSSH 사용)에서. 또한 SFTP 프로토콜을 사용하여 파일에 원격으로 액세스할 수 있습니다(Windows에서는 SMB를 통해 액세스할 수 있는 디렉터리를 공유하는 것이 더 쉽습니다).

프로그램 작성

키트에는 Clang 또는 GCC와 같은 잘 알려진 컴파일러, 인터프리터가 포함되어 있습니다. 파이썬 언어, Perl, PHP, Ruby 등 Windows용 POSIX 호환 프로그램을 구축할 수 있습니다.

텍스트 편집기

대화형 편집기 - vim, nano, emacs.
스크립트에 사용하기에 적합한 비대화형 편집기 - sed, awk.

결론

Windows 기반 Linux의 기능을 놓치셨다면 직접 사용해 보실 수도 있습니다.

지원서를 작성하기 위해서는 유닉스설치할 필요는 없습니다 (단어 아래 유닉스나는 모든 것을 생각해 볼 것입니다 *아니야시스템). 이 진술은 다소 역설적으로 들리지만 이는 사실이며 이 기사에서는 이를 확신시키려고 노력할 것입니다.

당신이 진정한 Unix 전문가가 아니라면 이 OS에 대한 몇 가지 응용 프로그램을 작성하거나 컴파일하려면 기존 프로그램전혀 설치할 필요가 없습니다 유닉스. 에뮬레이터는 이러한 목적에 적합합니다. 유닉스. 이 작업을 완벽하게 수행하는 훌륭한 프로그램이 많이 있습니다. 예를 들면 다음과 같습니다. 유윈, MinGW, 시그윈등등

컴파일용 간단한 프로그램할 것이다 그리고 MinGW, 그러나 더 복잡한 것에는 적합하지 않습니다. 유윈고급 에뮬레이터이지만 그 기능은 더 널리 사용되는 다른 에뮬레이터보다 훨씬 열등합니다. 시그윈.

시그윈- 매우 기능적입니다. 무료 에뮬레이터 유닉스. 단일 파일로 배포됩니다( setup.exe), 이 파일의 크기에 속지 마십시오( ~300kb), 이것은 그 자신이 아닙니다 시그윈, 설치 프로그램만 해당됩니다. 필요한 모든 유틸리티와 라이브러리는 설치 과정에서 별도로 다운로드해야 합니다. 또는 필요한 파일이 이미 있는 경우 로컬 디렉터리를 소스로 지정할 수 있습니다.

시그윈포함 엄청난 양다양한 유틸리티와 라이브러리(대부분은 필요하지 않을 수도 있지만 설치 중에) 시그윈필요한 구성 요소만 선택할 수 있습니다. 따라서 프로그램을 컴파일하기만 하려면 컴파일러만 설치하면 됩니다. GCC, 필요한 라이브러리 및 유틸리티 세트 만들다. 개인적으로 저는 모든 애플리케이션을 설치했습니다. 시그윈언제든지 쉽게 "제거"할 수 있습니다. 사실은 시그윈단 하나의 파일로 구성 cygwin1.dll, 그 밖의 모든 것은 소프트웨어 패키지입니다. 암소 비슷한 일종의 영양, 특별히 다시 컴파일되어 작업 가능 시그윈.



설치에는 문제가 없었던 것 같아요. 이제 설정 및 사용에 있어서 몇 가지 미묘한 점을 살펴보겠습니다. 시그윈. 설치 후 프로그램이 설치된 폴더의 구조는 다음과 유사합니다. *아니야시스템. 출시하기 위해서는 시그윈, 그냥 실행 BAT 파일, cygwin.bat, 루트 디렉토리에 위치 시그윈(루트 디렉토리란 해당 파일이 있는 폴더를 의미합니다. 시그윈, 앞으로는 이 카탈로그에서 계산할 것입니다). 출시 후 BAT 파일콘솔 응용 프로그램이 앞에 나타납니다. 이것이다 세게 때리다, 이는 사이의 링크입니다. 유닉스그리고 윈도우. 세게 때리다- 이것은 단순한 아날로그가 아닙니다. cmd.exe. 세게 때리다다양한 작업을 수행하기 위해 스크립트를 작성할 수 있는 본격적인 프로그래밍 언어입니다. 이것이 바로 이 제품이 기존 제품과 근본적으로 다른 점입니다. cmd.exe (command.com).

초대 세게 때리다, 실질적으로 다르지 않습니다. cmd.exe (~ - 홈 디렉토리를 의미합니다.) 여기에는 논리 드라이브(A, C, D 등)가 없습니다. 카운트다운은 지정된 루트 디렉터리에서 시작됩니다. / ". 또한 여기서 대소문자가 중요하다는 점을 기억해야 합니다. 그리고 - 완전히 다른 두 개의 카탈로그. 루트 디렉터리로 이동해 보겠습니다. 이렇게 하려면 익숙한 명령을 실행하세요. " CD/" (~ 로 변경해야 / ). 그런 다음 " 명령을 입력하십시오. 디렉토리", 또는 " ㅋㅋㅋ", 루트 디렉터리의 내용을 보려면. 이제 루트 디렉터리가 무엇인지 이해하신 것 같습니다.





이 글에서 모든 명령어를 설명할 수는 없으므로 실제로 설정하는 가장 중요한 단계로 바로 넘어가겠습니다. 시그윈. 몇 가지 프로그램을 컴파일해 봅시다. 편집을 위해 나는 프로그램을 선택했습니다 Htop(http://freshmeat.net/projects/htop/), 이는 개선된 버전입니다. 표준 프로그램 맨 위, 이는 콘솔 관리자프로세스. 첫 번째 단계는 아카이브의 압축을 푸는 것입니다. 다음과 같이 이 작업을 수행할 수 있습니다. 윈도우, 그리고 직접 시그윈. 안에 시그윈이는 다음 명령으로 수행됩니다.

tar zxf htop-0.6.tar.gz

물론 그 안에는 이 순간아카이브가 있는 동일한 디렉토리에 있어야 합니다. htop-0.6.tar.gz. 압축을 푼 후 생성된 디렉터리로 이동합니다. htop-0.6세 가지 표준 명령을 실행하여 애플리케이션을 컴파일합니다.

./구성
만들다
설치하다



이제 편집이 완료되었습니다. 자유롭게 팀을 모집하세요. htop그리고 그 결과에 감탄해보세요. 결과 "EXE"는 디렉토리에 있습니다. /usr/로컬/빈/.



이제 직접 써보자 간단한 프로그램 (안녕하세요 세상)로 컴파일하고 GCC. 먼저 프로그램 자체를 작성해야 합니다. 이 작업은 프로그램을 사용하여 수행합니다. 고양이. 명령을 입력하세요 고양이 new.c, 어디 new.c소스 코드가 포함된 파일의 이름입니다. 명령을 실행한 후 다음 코드를 작성합니다.

#포함하다
int 메인())(
printf("안녕하세요 월드");
1을 반환;)

코드를 입력한 후 다음을 누르세요. Ctrl+C. 이제 다음을 사용하여 컴파일해 보겠습니다. GCC. 이는 다음 명령으로 수행됩니다.

Gcc new.c -o new.exe

해당 파일이 있던 동일한 디렉토리에 new.c다른 파일이 나타납니다 - new.exe. 실행하면 "라는 예상 메시지가 표시됩니다. 안녕하세요 세계".



이것으로 기사가 끝날 수도 있지만 그래픽 환경에 대해서도 이야기하기로 결정했습니다. 시그윈나중에 이 주제로 돌아오지 않도록 말이죠. 패키지를 설치할 때 눈치챘을 것 같아요. 시그윈쉘 설치를 제안합니다 금언그리고 KDE. 실제로 이는 단순한 셸이 아니라 애플리케이션을 실행하는 데 필요한 라이브러리입니다. 예를 들어, 그래픽 버전유명한 편집자 이맥스, 바로 아래에서 실행됩니다. 윈도우마치 그랬던 것처럼 win32 응용 프로그램. 근거 없는 말을 하지 않기 위해, 이것을 시도해 보자 이맥스달리다. 이는 다음 명령으로 수행됩니다.

xemacs

이것이 우리가 보게 될 것입니다.



보시다시피 모든 것이 시작되고 제대로 작동합니다. 그러나 이것이 모든 사람에게 일어나는 것은 아닙니다. 그래픽 환경은 매우 변덕스럽습니다. 따라서 구성할 수 있어야 합니다. 설정 문서 X 서버인터넷에는 많은 것들이 있으며 쉽게 찾을 수 있습니다.

결국 나는 아무리 좋은 것이라도 당신에게 상기시키고 싶습니다. 시그윈, 그것은 단지 에뮬레이터 일뿐입니다. 아시다시피 사본은 원본보다 나을 수 없으므로 진정한 Unix 전문가가 되고 싶다면 게으르지 말고 본격적인 Unix 배포판을 설치하십시오. 내 생각에는 시작하는 것이 더 낫다. 리눅스. 가능한 모든 배포판 중에서 당신을 추천합니다 슬랙웨어.

크로스 플랫폼 애플리케이션을 개발하는 것은 쉽지 않습니다. 모든 것이 인간과 같지 않은 Windows 덕분에 특히 어렵습니다. 여기에는 일반 터미널도 일반 콘솔 유틸리티도 전혀 없습니다! 다시 한 번 이 문제에 직면하여 Cygwin을 다시 사용해 보기로 결정했습니다. 그리고 이것이 실제로 Windows를 거의 사용할 수 있는 것으로 만들어준다는 사실이 밝혀졌습니다!

여기에서 Cygwin 설치 프로그램을 다운로드할 수 있습니다. 실제로 이것은 설치 프로그램이라기보다는 시작 시 설치할 패키지를 직접 묻는 패키지 관리자입니다. 얘들아! 패키지 관리자! 윈도우에서!설치 프로그램은 실행될 디렉터리에 캐시를 생성합니다. 따라서 시작하기 전에 바탕 화면에 특수 폴더를 만들고 그 안에 설치 프로그램을 넣는 것이 좋습니다.

제 생각에는 어떤 패키지를 설치해야 할까요?

  • openssh- 마스테프;
  • inetutils, 바인드 유틸리티, , 체크 안함그리고 NC6- 마스테프;
  • wget, 곱슬 곱슬하다- 마스테프;
  • 파이썬및/또는 파이썬3— 꼭 있어야 할 것 같아요.
  • 정력, gvim— 작은 파일을 편집하는 데는 불필요하지 않습니다.
  • 어려움, pwgen, 압축을 풀다, rzync- 만일의 경우에 대비해 두십시오.
  • gcc및/또는 그 소리, cmake, gdb- 필요한 경우;
  • 화면, 티먹스, MC- 연인을 위해;
  • 자식- 아래에 매우 크다질문은 아래를 참조하세요.

메모! Cygwin에 pip를 설치하려면 python-setuptools 및/또는 python3-setuptools 패키지 옆에 있는 확인란을 선택하세요. 설치 후 터미널에서 다음과 같이 말합니다.

easy_install-2.7 pip

easy_install-3.4 pip

..., 설치한 Python 버전에 따라 다릅니다.

따라서 Cygwin을 설치한 후 터미널을 열 수 있습니다.

얘들아! 크기를 조정하는 일반 터미널을 사용하면 텍스트를 복사하고 붙여넣을 수 있으며 그게 전부입니다! 윈도우에서!잘 알려지고 친숙한 명령 id, ls, pwd, cat, ssh, scp 등이 모두 사용됩니다. 인간 환경 - .bashrc, ~/.ssh/config 등. 또한 PowerShell이라는 부끄러운 해킹과 달리 Cygwin은 .NET Framework를 따라 끌지 않습니다. Ctr + Tab 단축키를 사용하여 여러 터미널을 열고 터미널 간에 전환할 수도 있습니다. 거의 탭과 비슷해요! 물론 오래된 Alt + Tab도 작동합니다.

위에서는 Git 설치를 권장하지 않았으며 그 이유는 다음과 같습니다. 사실 Cygwin에서는 속도가 눈에 띄게 느려집니다. 다음 명령을 실행하는 것이 좋습니다.

git config --global core.preloadindex true
git config --global core.fscache true
git config --global gc.auto 256

그러나 불행하게도 이것으로는 문제가 완전히 해결되지는 않습니다. 따라서 대규모 프로젝트에서는 git status 명령이 20초 안에 실행될 수 있습니다. Linux에서는 정확히 동일한 저장소에서 명령이 즉시 실행됩니다.

싸이그윈(CYGWIN)이란? 2001년 1월 23일자 CG No. 3에 Chris Kaspersky의 "Windows에서 Unix를 만드는 방법"이라는 기사가 나온 후, 나는 여러분에게 유닉스에 대해 조금 더 이야기하고 싶었습니다. Windows 사용자 Cygwin이 무엇인지에 대해. 나는 꽤 오랫동안 그것을 사용해 왔으며 Cygwin을 설치하지 않으면 Windows에서 더 이상 효과적으로 작동할 수 없습니다.

Cygwin이라는 단어는 두 가지 구성 요소로 구성됩니다. Cygnus는 회사 이름이고 Windows이지만 Cygwin의 모든 것이 Cygnus 직원이 작성했다고 말하는 것은 잘못된 것입니다. Cygwin은 Windows용 Gnu 유틸리티의 포트이고 Gnu(www.gnu.org)는 Free의 프로젝트입니다. 소프트웨어(자유 소프트웨어 재단, 간단히 FSF)는 어느 누구에게도 개인적으로 속하지 않고 소프트웨어 배포 및 수정의 자유를 제한하는 라이센스가 없는 비영리 Unix 시스템을 만드는 것을 목표로 합니다. 이 프로젝트의 일환으로 거의 모든 표준 유틸리티유닉스. FSF의 가장 중요한 세 가지 기여는 gcc(Gnu C 컴파일러 또는 Gnu 컴파일러 컬렉션), Bash(Bourne Again Shell) 및 Emacs입니다. gcc가 없으면 Linux도 없으며 Bash는 많은 최신 Unix 시스템의 표준 셸입니다. 경험이 있는 사람들은 상용 Unix를 설치한 후 시스템 관리자가 가장 먼저 하는 일은 Gnu 유틸리티를 다시 설치하는 것이라고 말합니다. 원칙적으로 GNU와 FSF 자체는 광범위한 주제이므로 별도의 자세한 기사를 작성할 가치가 있습니다.

전체 Gnu 유틸리티 세트는 Unix 시스템 사용자(유닉스뿐만 아니라)가 매일 접하는 대부분의 작업을 다루는 작은(일반적으로) 프로그램 세트입니다. 각 프로그램은 하나의 작업을 잘 수행합니다. 그런 다음 이러한 프로그램을 결합하여 다양한 문제를 해결할 수 있습니다.

Gnu를 Unix가 아닌 다른 플랫폼으로 포팅하려는 시도가 두 번 이상 이루어졌는데, 이는 그 인기를 나타냅니다.

유틸리티를 DOS로 포팅하는 프로젝트인 DJGPP를 언급할 가치가 있습니다. http://www.delorie.com/djgpp/로 가보세요. 정말 흥미롭습니다.

Cygnus는 각 유틸리티를 별도로 컴파일하지 않았으며 매번 동일한 문제를 해결하기 위해 고생했습니다. 대신 GNU 유틸리티와 유틸리티 사이에 일종의 "스페이서"가 작성되었습니다. 운영 체제. 이 shim(cygwin1.dll(1 - 버전 번호))은 UNIX 시스템 호출 에뮬레이션을 제공하므로 수정을 거의 또는 전혀 하지 않고도 Unix 프로그램을 컴파일하고 실행할 수 있습니다. 소스 코드. 기본적으로 이 dll은 Cygwin 자체이며 그 밖의 모든 것은 소프트웨어 패키지 GNU는 Cygwin과 함께 작동하도록 컴파일되었습니다.

gcc와 라이브러리가 있으면 다양한 애플리케이션을 Windows로 포팅할 수 있으며 Cygwin을 완전한 플랫폼으로 만들 수 있습니다. 때때로 "Cygwin 플랫폼"이라는 표현을 찾을 수 있습니다. Cygwin의 첫 번째 베타 버전 이후 다양한 사람들이 Windows에 부족한 부분을 Cygwin용으로 컴파일했으며 이러한 집에서 만든 컴파일을 포함하여 표준 Cygwin 배포판이 점차 성장했습니다. 예를 들어 베타 20에서는 vim 편집기를 별도로 다운로드해야 했지만 이제는 전체 세트와 함께 설치됩니다.

다 설치하는 방법

Cygnus는 Linux OS 배포판의 일부 유사한 프로그램을 약간 연상시키는 편리한 패키지 관리 프로그램을 작성했습니다. 첫 번째 단계는 Cygnus 웹사이트 http://sources.redhat.com/cygwin/setup.exe에서 다운로드하는 것입니다. 이를 시작하면 많은 미러 중 하나에서 표준 패키지 세트를 다운로드할 수 있으며 개별 패키지를 건너뛰고 선택적으로 이 작업을 수행하도록 선택할 수 있습니다.

나중에 동일한 디렉토리에서 이 프로그램을 실행하면 어떤 새 패키지가 나타났는지 또는 기존 패키지의 새 버전을 확인할 수 있습니다.

동일한 프로그램이 Cygwin을 설치하고 설치할 것과 설치하지 않을 것을 다시 결정하도록 요청합니다. 설치 시 Unix 파일 계층 구조에서 공통적인 디렉터리(bin, usr, sbin 등)가 생성되므로 Windows 폴더와 혼동되지 않도록 모든 디렉터리를 하나의 디렉터리에 배치하는 것이 편리합니다.

그리고 그것을 모두 사용하는 방법

Cygwin을 시작하면 일반 Windows 콘솔(Win9x의 경우 command.com, NT의 경우 cmd.exe)과 유사한 콘솔 창이 표시됩니다. 하지만! Windows에서는 BAT 파일로 command.com을 모방하려고 시도한 Unix 명령 해석기의 영광스러운 후손을 시작했습니다. Bash와 그의 형 sh는 서로를 묶는 접착제입니다. 유닉스 시스템, 그것은 정당하게 프로그래밍 언어라고 부를 수 있습니다. 즉, 프로그래밍 언어로 쓸 수 있습니다.

Windows의 몇 가지 기본 명령과 이에 상응하는 명령

ls = dir - 디렉토리의 내용을 봅니다.
cd = chdir - 다른 디렉토리로 이동;
cp = 복사 - 파일을 복사합니다.
mv = mv - 파일 이동/이름 바꾸기;
rm = del - 파일 삭제;
mkdir = mkdir - 디렉토리를 생성합니다.
pwd - 현재 디렉토리를 표시합니다.

기억하세요. 큰 "A"는 더 이상 작은 "a"와 동일하지 않습니다. 이제 \ 기호를 /로 바꿔야 합니다. Cygwin의 cd / 명령을 사용하면 bin, usr 등이 있는 디렉터리로 이동합니다. Unix에서는 / 위에 아무 것도 없지만 Cygwin에서는 Windows 파티션을 통해 이동하려면 cd //c/ 명령(cd //d/MyDir 등)을 사용할 수 있습니다.

Bash의 가장 편리한 기능 중 하나는 자동 완성입니다. cat 명령을 사용하여 여러 파일을 생성해 보겠습니다.

고양이 > 첫 번째_파일 ENTER

무언가를 입력한 다음 Ctrl-C를 누르세요.

다른 파일에서도 마찬가지입니다.

고양이 > 두 번째_파일 ENTER.

파일이 있는지 확인하십시오.

이제 임의의 명령(예: ls)과 첫 번째 파일의 첫 문자를 입력하십시오. Tab 키를 누르세요. Bash는 파일 이름 자체를 추가합니다. file_one과 file_two처럼 파일이 동일하게 시작하면 Bash는 file_만 추가하고 사용자가 이를 명확하게 하기 위해 다른 문자를 입력할 때까지 기다립니다.

일부 유틸리티를 사용하는 몇 가지 예입니다.

당신이 가지고 있다고 가정 해 봅시다 텍스트 파일 in.txt. 다음과 같이 단어 수를 셀 수 있습니다.

라인 수:

문자 시퀀스 Larry가 포함된 행을 찾습니다.

grep "래리" in.txt

줄을 단어로 나누고 공백을 줄 끝 문자로 바꿉니다.

고양이 in.txt | gawk "gsub(" +","\n")"

gawk 명령 "gsub(" +","\n")"은 하나 또는 더 많은 공간(" +")를 줄 끝 문자("\n")로 이동합니다.

동일한 작업을 수행하되 편리하게 볼 수 있습니다(PageUp, PageDown, 종료 - q).

고양이 in.txt | gawk "gsub(" +","\n")" | 더 적은

문자열(단어) 정렬:

고양이 in.txt | gawk "gsub(" +","\n")" | 정렬 | 더 적은

동일한 줄(단어) 제거:

고양이 in.txt | gawk "gsub(" +","\n")" | 정렬 | 유니크 | 더 적은

고양이 in.txt | gawk "gsub(" +","\n")" | 정렬 | 유니크 | 화장실 -l

개수를 세면서 동일한 줄(단어)을 제거합니다.

고양이 in.txt | gawk "gsub(" +","\n")" | 정렬 | 유니크 --카운트 | 더 적은

다시 정렬하여 텍스트의 빈도 사전을 얻습니다.

고양이 in.txt | gawk "gsub(" +","\n")" | 정렬 | 유니크 --카운트 | 정렬 -r | 더 적은

결과도 텍스트 파일로 출력됩니다.

고양이 in.txt | gawk "gsub(" +","\n")" | 정렬 | 유니크 --카운트 | 정렬 -r > out.txt

Intermediate.txt 파일에 중간 결과가 저장되는 경우도 마찬가지입니다.

고양이 in.txt | gawk "gsub(" +","\n")" | teeintermediate.txt | 정렬 | 유니크 --카운트 | 정렬 -r | 더 적은

이제 Bash의 강력한 기능을 사용하여 여러 파일에 대해 이 명령을 반복할 수 있습니다. 다음으로 이동하여 콘솔에 직접 스크립트를 입력하세요. 새 줄기사에 인쇄된 것처럼 Bash는 명령이 완료되지 않았음을 이해하고 프롬프트를 ">"로 변경합니다.

*.txt 파일의 경우; 하다

고양이 $file | gawk "gsub(" +","\n")" | 정렬 | 유니크 --카운트 | 정렬 -r > $file.out

이와 같이. 간단한 문제 - 간단한 해결책.

특정 명령이 어떻게 작동하는지 알아보려면 --help 스위치를 사용하여 실행하거나 man(수동) 명령(man awk, man grep)을 사용할 수 있습니다. q를 사용하여 man을 종료할 수 있습니다.

CYGWIN에는 또 무엇이 있나요?

컴파일러

Perl의 조상 중 하나인 간단한(1일 교육) 워드 프로세싱 프로그래밍 언어입니다.

스트림 편집기

C의 파서 생성기

C의 파서 생성기

프로그래밍 언어. 실제로 이는 Gnu 유틸리티와 직접적인 관련이 없습니다. 한동안 Sun 회사에서 지원했습니다. cd /usr/share/tk8.0/demos를 수행하고 프로그램 위젯 -./widget을 실행할 수 있습니다. GUI 생성을 위한 Tcl 확장인 Tk의 기능에 대한 데모를 볼 수 있습니다.

아카이버

강력한 아카이버

파일 비교 프로그램

그리고 훨씬 더. 쓰레기통에 가서 거기에 무엇이 있는지 확인하십시오. 패키지 예금은 http://www.hirmke.de/software/develop/gnuwin32/cygwin/porters/Hirmke_Michael/GNUWin32-contents.html에서 찾을 수 있습니다. 또한 Cygnus 웹사이트 http://sources.redhat.com/cygwin/에는 해당 주제에 대한 많은 정보와 링크가 있습니다.

CYGWIN 설정 방법

첫째, 콘솔이 두렵다면 Bash를 실행할 필요가 없습니다. Far, Windows Commander 등의 모든 프로그램을 사용할 수 있으며, bin 디렉터리 경로만 지정하면 됩니다. Windows 9x에서는 autoexec.bat 파일에서, NT에서는 내 컴퓨터/속성/환경에서 이 작업을 수행합니다. 환경 변수 PATH는 bin에 트랙을 추가해야 합니다.

이상 편안한 일 Bash에서는 다음을 수행하는 것이 좋습니다. Cygwin 디렉터리가 c:\cygwin에 있는 경우 c:\cygwin\root(mkdir /root) 디렉터리를 만들고 다음 위치에 있는 cygwin.bat 파일에 한 줄을 추가합니다. c:\cygwin:

홈=d:\cygwin\루트

루트 디렉터리에 점으로 시작하는 2개의 파일(.inputrc 및 .bashrc)을 생성해야 합니다. 두 파일 모두 시작 시 Bash에 의해 실행되며, .inputrc는 모든 키가 올바르게 작동하는지 확인하는 역할을 하며, .bashrc에는 다음이 포함됩니다. 다양한 정보. 예를 들어, 내 .bashrc를 제공하겠습니다.

PS1="\w > " 내보내기

내보내기 PATH=".:$PATH"

별칭 ls="ls --color"

별칭 untar="tar xvf"

echo CygWin에 오신 것을 환영합니다!

첫 번째 줄은 Bash 경로를 지정합니다. 이것이 Unix가 모든 인터프리터에서 수행하는 작업입니다. 예를 들어 Perl에 hello.pl 스크립트가 있고 Perl 자체가 /usr/bin에 있는 경우 첫 번째 줄에 다음과 같이 쓸 수 있습니다.

다음과 같이 실행하세요.

이렇게 하면 프로그램이 작성된 내용에 대해 걱정하지 않고 프로그램을 실행할 수 있습니다.

PS1은 작업 초대인 Bash 프롬프트를 저장하는 변수입니다. \w는 현재 디렉터리입니다.

이를 PATH에 추가한 후 Windows 사용자에게 익숙한 방식으로 수행할 수 있습니다.

다음으로 동의어 또는 별칭을 사용합니다. 예를 들어 ls 명령은 파일 내용에 따라 출력 색상을 지정하지 않으므로 --color 스위치를 사용하여 실행해야 합니다. alias ls="ls" command --color" 이 문제를 해결했습니다. 이제 ls는 ls --color를 의미합니다. 동일한 명령 이름을 사용할 필요는 없습니다. ll="ls --color"를 수행하고 새로운 ll 명령은 tar 아카이브의 압축을 풀기 위해 untar 명령을 생성할 때 수행하는 작업과 대략 같습니다. 매번 tar xvf를 입력하는 대신 별칭에 파이프(파이프, 파이프라인)를 배치할 수도 있습니다. alias sort_un_sort=" sort | 유니크 --카운트 | 정렬 -r ".

실제로 여기서 직장을 마련하는 범위는 무한하며 나의 예는 원시적이고 단순합니다. .bashrc에는 대화형 명령, 프롬프트에서 실행되는 함수도 있습니다...

Cygwin을 실험해 볼 수 있는 영감을 얻었기를 바랍니다. 귀하의 의견을 다음 주소로 보내주십시오.

공유하다