Linux

Shell은 프로그래밍도 지원합니다.

빼이 2020. 10. 6. 19:30
반응형

Shell은 단순한 명령 스택이 아니며, Shell에서 프로그래밍 할 수도 있습니다. 이는 C ++ , C # , Java 및 Python 과 같은 일반적인 프로그래밍 언어를 사용하는 것과 다르지 않습니다.


Shell은 C ++, Java, Python 등만큼 강력하지는 않지만 다음과 같은 기본 프로그래밍 요소도 지원합니다.

  • if ... else select 구조체, case ... in switch 문, for, while, until 루프;
  • 변수, 배열, 문자열, 주석, 더하기, 빼기, 곱하기 및 나누기, 논리 연산과 같은 개념
  • 사용자 정의 함수 및 내장 함수 (예 : printf, export, eval 등)를 포함한 함수.

이러한 관점에서 Shell은 프로그래밍 언어이기도하며 컴파일러 (인터프리터)는 프로그램 Shell입니다. 우리가 일반적으로 언급하는 Shell은 때때로 사용자와 커널을 연결하는 프로그램을 지칭하고 때로는 Shell 프로그래밍을 지칭합니다.


Shell은 주로 컴퓨터 하드웨어 매개 변수 감지, 웹 운영 환경 설정, 로그 분석 등과 같은 복잡한 비즈니스 로직이있는 중대형 소프트웨어를 개발하는 것이 아니라 일부 실용적이고 자동화 된 소규모 도구를 개발하는 데 사용됩니다. Shell은 매우 적합합니다.


Shell 사용의 숙련도는 Linux 사용자의 숙련도를 반영합니다. 운영 및 유지 관리 엔지니어, 네트워크 관리자 및 프로그래머는 모두 Shell을 배워야합니다.


특히 Linux 운영 및 유지 보수 엔지니어에게 Shell은 더욱 필수적이고 숙달되어야하는 기술입니다.이를 통해 서버 클러스터를 자동으로 관리 할 수 ​​있습니다. 그렇지 않으면 모든 서버에 하나씩 로그인하여 수행해야합니다. 동일한 설정과 이러한 서버에는 수십만 개가있을 수 있으므로 반복적 인 작업에 많은 시간을 낭비하게됩니다.



★ Shell은 스크립팅 언어입니다.

모든 코드는 컴퓨터에서 실행되기 전에 결국 이진 형식으로 "변환"되어야합니다.


C / C ++, Pascal, Go 언어, 어셈블리 등과 같은 일부 프로그래밍 언어는 프로그램이 실행되기 전에 모든 코드를 바이너리 형식으로 변환해야합니다. 즉, 실행 파일이 생성됩니다. 사용자가 얻는 것은 최종 생성 된 실행 파일입니다. , 소스 코드를 볼 수 없습니다.


이 프로세스를 Compile 이라고 하며 이러한 프로그래밍 언어를 컴파일 된 언어 라고하며 컴파일 프로세스를 완료하는 소프트웨어를 Compiler 라고 합니다.


또한 Shell, JavaScript , Python, PHP 등과 같은 일부 프로그래밍 언어 는 실행 중에 번역해야하며 실행 파일이 생성되지 않습니다. 사용자는 프로그램을 실행하기 위해 소스 코드를 받아야합니다. 프로그램이 실행되면 모든 코드가 번역 될 때까지 기다리지 않고 즉시 번역되고 번역의 일부가 완료되고 다른 부분이 실행됩니다.


이 과정을 통역 이라고 하며 이러한 프로그래밍 언어를 통역 언어 또는 스크립트 언어 (Script) 라고하며 통역 과정을 완료하는 소프트웨어를 통역사라고합니다 .


컴파일 된 언어의 장점은 빠른 실행 속도, 낮은 하드웨어 요구 사항 및 우수한 기밀성이며 운영 체제, 대규모 응용 프로그램, 데이터베이스 등을 개발하는 데 적합합니다.


스크립팅 언어는 유연한 사용, 손쉬운 배포 및 우수한 크로스 플랫폼이라는 장점을 가지고있어 웹 개발 및 소형 도구 제작에 매우 적합합니다.


Shell은 스크립팅 언어입니다. 소스 코드를 작성한 후에는 컴파일 할 필요없이 소스 코드를 직접 실행하기 만하면됩니다.

반응형