26 반드시 읽어야 하는 쉘 스크립팅 인터뷰 질문 및 답변 [초보자 및 경험자용]
게시 됨: 2020-12-17셸은 명령줄 인터프리터 또는 명령, 셸 스크립트 및 프로그램을 실행하도록 설계된 완전한 환경입니다. 쉘에 명령을 입력하면 입력에 따라 프로그램이 실행됩니다.
기본적으로 입력 명령을 번역하고 커널 호환 언어로 변환합니다. Shell Script는 Unix Shell에서 실행되는 프로그램의 명령 목록을 나타냅니다. 스크립트에는 실행 순서대로 명령을 정의하는 주석이 포함되어 있습니다.
소개를 통해 Shell Scripting에 대해 더 알고 싶으시면 끝까지 스크롤하십시오. 학습 과정을 시작하는 데 도움이 되도록 Shell Scripting 인터뷰 질문 및 답변 목록을 작성했습니다! 데이터 과학에 대해 자세히 알아보려면 데이터 과학 과정을 확인하십시오.
목차
쉘 스크립팅 인터뷰 질문 및 답변
- 쉘 스크립팅의 장점은 무엇입니까?
셸 스크립팅의 가장 큰 이점은 다음과 같습니다.
- 이를 통해 요구 사항에 가장 적합한 맞춤형 운영 체제를 만들 수 있습니다.
- 사용 중인 플랫폼을 기반으로 소프트웨어 응용 프로그램을 설계할 수 있습니다.
- 시스템 관리 작업을 자동화하는 데 도움이 되므로 시간이 절약됩니다.
2. 쉘 변수란 무엇입니까?
셸 변수는 셸 프로그램 또는 스크립트의 핵심 부분을 형성합니다. 변수를 통해 Shell은 Shell 프로그램 내에서 정보를 저장하고 조작할 수 있습니다. 쉘 변수는 일반적으로 문자열 변수로 저장됩니다.
3. 쉘 스크립팅에 사용되는 변수의 유형을 나열하십시오.
일반적으로 셸 스크립트에는 두 가지 유형의 변수가 있습니다.
- 시스템 정의 변수 – OS(Linux)에서 생성되며 대문자로 정의됩니다. Set 명령을 사용하여 볼 수 있습니다.
- 사용자 정의 변수 – 시스템 사용자가 만들고 정의합니다. Echo 명령을 사용하여 변수 값을 볼 수 있습니다.
- 어떻게 변수를 변경할 수 없게 만들 수 있습니까?
읽기 전용을 사용하여 변수를 변경할 수 없도록 만들 수 있습니다. 변수 'a'의 값이 5로 유지되고 일정하게 유지되기를 원하므로 다음과 같이 readonly를 사용한다고 가정해 보겠습니다.
$ a=5
$ 읽기 전용
- 다양한 쉘 유형의 이름을 지정하십시오.
다음과 같은 4가지 핵심 유형의 셸이 있습니다.
- 본 쉘(sh)
- C 쉘(csh)
- 콘 쉘(ksh)
- 본 어게인 쉘(bash)
- "위치 매개변수"를 설명합니다.
위치 매개변수는 Shell에서 정의한 변수입니다. 명령줄에서 인수를 지정하여 프로그램에 정보를 전달하는 데 사용됩니다.
- UNIX 환경에서 사용할 수 있는 셸과 커널은 몇 개입니까?
일반적으로 UNIX 환경에는 하나의 커널만 있습니다. 그러나 여러 셸을 사용할 수 있습니다.
- Shell 프로그램을 실행하기 위해 별도의 컴파일러가 필요합니까?
아니요, Shell 프로그램을 실행하기 위해 별도의 컴파일러가 필요하지 않습니다. 셸 자체가 셸 프로그램의 명령줄이기 때문에 이를 실행합니다.
- 쉘 스크립팅에서 파일 권한을 어떻게 수정합니까?
umask를 통해 파일 권한을 수정할 수 있습니다.
- "."은(는) 무슨 뜻인가요? 파일 이름의 시작 부분에 있는 (점)은 무엇을 나타냅니까?
"."로 시작하는 파일 이름 숨김 파일입니다. 일반적으로 Shell에서 파일을 나열하려고 하면 숨김 파일을 제외한 모든 파일이 나열됩니다. 그러나 숨겨진 파일은 디렉토리에 있습니다. 숨겨진 파일을 보려면 "-a" 플래그와 함께 Is 명령을 실행해야 합니다.
- Linux에서 바로 가기를 만드는 방법은 무엇입니까?
두 개의 링크를 통해 Linux에서 바로 가기를 만들 수 있습니다.
하드 링크 – 이 링크는 파일의 inode에 연결됩니다. 그들은 항상 파일과 동일한 파일 시스템에 있습니다. 원본 파일을 삭제하더라도 하드 링크는 영향을 받지 않습니다.
소프트 링크 – 이 링크는 파일 이름에 연결됩니다. 파일과 동일한 파일 시스템에 상주하거나 상주하지 않을 수 있습니다. 원본 파일을 삭제하면 소프트 링크가 비활성화됩니다.
12. Linux 프로세스의 여러 단계의 이름을 지정하십시오.
일반적으로 Linux 프로세스는 다음 4단계를 거칩니다.
- Waiting – 이 단계에서 Linux 프로세스는 필요한 리소스를 기다려야 합니다.
- Running – 이 단계에서 프로세스가 실행됩니다.
- 중지됨 – 성공적으로 실행된 후 Linux 프로세스가 중지됩니다.
- 좀비 – 마지막 단계에서 프로세스가 더 이상 실행되지 않더라도 프로세스 테이블에서 활성 상태를 유지합니다.
- "echo"에 대한 대체 명령이 있습니까?
예, tput은 echo 명령의 대안입니다. tput 명령을 사용하면 출력이 화면에 표시되는 방식을 제어할 수 있습니다.
- 파일 시스템에는 몇 개의 블록이 포함되어 있습니까?
파일 시스템에는 4개의 블록이 있습니다.
- 수퍼 블록 – 이 블록은 블록 크기, 블록 그룹 크기, 사용 정보, 비어 있거나 채워진 블록 및 해당 개수, inode 테이블의 크기 및 위치 등과 같은 파일 시스템 상태에 대한 정보를 제공합니다.
- Bootblock – 이 블록은 사용자가 호스트 시스템을 부팅할 때 실행되는 부트스트랩 로더 프로그램을 보유합니다.
- 데이터 블록 – 이 블록에는 파일 시스템의 파일 내용이 포함됩니다.
- Inode 테이블 – UNIX는 모든 요소를 파일로 취급하며 파일과 관련된 모든 정보는 inode 테이블에 저장됩니다.
필독: 파이썬 인터뷰 질문
- vi 편집기의 세 가지 작동 모드의 이름을 지정하십시오.
세 가지 작동 모드는 다음과 같습니다.
- 명령 모드 – 이 모드는 사용자가 누른 모든 키를 편집기 명령으로 처리하고 해석합니다.
- 삽입 모드 – 이 모드를 사용하여 새 텍스트를 삽입하거나 기존 텍스트를 편집하는 등의 작업을 수행할 수 있습니다.
- Ex-command 모드 – 사용자는 명령줄에 모든 명령을 입력할 수 있습니다.
- "제어 지침"을 정의합니다. Shell에서 사용할 수 있는 제어 명령 유형은 몇 개입니까?
제어 명령은 스크립트의 다른 명령을 실행하는 방법을 지정할 수 있는 명령입니다. 따라서 주요 목적은 Shell 프로그램에서 제어 흐름을 결정하는 것입니다.
셸에는 4가지 유형의 제어 명령이 있습니다.
- 시퀀스 제어 명령은 명령이 프로그램에 있는 것과 동일한 순서로 실행되도록 합니다.
- 컴퓨터가 다음에 실행할 명령을 결정할 수 있도록 하는 선택/결정 제어 명령.
- 컴퓨터가 명령문 그룹을 반복적으로 실행할 수 있도록 하는 반복/루프 제어 명령.
- 사례 제어 명령은 다양한 대안 중에서 선택해야 할 때 사용됩니다.
- "IFS"를 정의합니다.
IFS는 내부 필드 구분 기호를 나타냅니다. 기본값이 공백, 탭이고 그 뒤에 새 행이 오는 시스템 변수입니다. IFS는 한 줄에서 필드나 단어가 끝나는 곳과 다른 곳이 시작되는 곳을 나타냅니다.
- "메타 문자"를 정의하십시오.
셸은 다른 문자에 대한 정보를 제공하는 데이터 필드나 프로그램의 특수 문자인 메타 문자로 구성됩니다. 예를 들어, 셸의 "ls s*" 명령은 문자 ''로 시작하는 모든 파일을 나열합니다.
- $*와 $@를 구별하십시오.
$*는 위치 매개변수의 전체 그룹을 단일 문자열로 취급하지만 $@는 인용된 각 인수를 별도의 인수로 취급합니다.
읽어보기: 인도의 Python 개발자 급여
21. 쉘 스크립팅에서 while 루프의 구문을 작성하십시오.
쉘 스크립팅에서 while 루프는 명령 블록을 여러 번 반복하려는 경우에 사용됩니다. "while" 루프의 구문은 다음과 같습니다.

동안 [테스트 조건]
~하다
명령…
완료
- break 및 continue 명령은 어떻게 다른가요?
break 명령은 실행 중인 루프를 탈출하는 데 사용됩니다. break 명령을 사용하여 until 및 while 루프를 비롯한 모든 루프 명령을 종료할 수 있습니다. 반면에, continue 명령은 완전한 루프를 떠나지 않고 루프의 현재 반복을 종료하는 데 사용됩니다.
23. 쉘 스크립팅에서 Shebang 라인을 사용하는 이유는 무엇입니까?
Shebang 라인은 Shell 스크립트/프로그램의 상단에 위치합니다. 스크립트를 실행하는 엔진의 위치를 사용자에게 알려줍니다.
다음은 Shebang 라인의 예입니다.
#!/bin/sh
ct $1
- Shell에서 여러 스크립트를 실행할 수 있습니까?
예, 셸에서 여러 스크립트를 실행할 수 있습니다. 여러 스크립트를 실행하면 다른 스크립트에서 한 스크립트를 호출할 수 있습니다. 그렇게 하려면 호출할 때 호출될 스크립트의 이름을 언급해야 합니다.
- 시스템이 실행된 기간을 알기 위해 어떤 명령을 사용해야 합니까?
시스템이 실행된 기간을 확인하려면 uptime 명령을 사용해야 합니다. 다음은 가동 시간 명령의 예입니다.
u/user1/Shell_Scripts_2018> 가동 시간
- 디스크 사용량을 확인하려면 어떤 명령을 사용해야 합니까?
다음 세 가지 명령을 사용하여 디스크 사용량을 확인할 수 있습니다.
- df – 여유 디스크 공간을 확인하는 데 사용됩니다.
- du – 디렉토리별 디스크 사용량을 확인하는 데 사용됩니다.
- dfspace – 메가바이트(MB) 단위의 여유 디스크 공간을 확인합니다.
27. 크론탭이란 무엇을 의미합니까?
Crontab은 cron table의 약자로, Cron은 작업을 실행하는 작업 스케줄러입니다. Crontab은 해당 목록을 관리하는 데 사용하려는 명령과 함께 일정에 따라 실행할 명령 목록입니다.
28. 언제 쉘 스크립팅을 사용하지 말아야 합니까?
다음과 같은 경우 쉘 스크립팅을 사용하면 안 됩니다.
- 완전한 급여 처리 솔루션을 작성하는 것과 같이 작업이 매우 복잡한 경우 쉘 스크립팅을 사용하지 않아야 합니다.
- 작업에 높은 수준의 생산성이 필요한 경우 셸 스크립팅을 사용하지 않아야 합니다.
- 작업에 여러 소프트웨어 솔루션이 필요한 경우 셸 스크립팅을 사용하면 안 됩니다.
29. 쉘 스크립트의 문자열을 어떻게 비교합니까?
테스트 명령을 사용하여 텍스트 문자열을 비교합니다. 각 문자열에 있는 모든 문자를 비교하여 텍스트 문자열을 비교합니다.
읽기: 데이터 엔지니어 인터뷰 질문
30. 파일 시스템이란 무엇을 의미합니까?
파일 시스템은 해당 파일과 관련된 정보와 함께 파일 모음입니다. 데이터를 검색하고 저장하는 방법을 제어합니다. 파일 시스템이 없으면 스토리지에 있는 데이터는 데이터의 한 부분이 끝나고 다른 부분이 시작되는 위치를 알 수 있는 방법이 없는 큰 데이터 본문일 뿐입니다.
31. 작은따옴표와 큰따옴표를 구별할 수 있습니까?
네. 값에 대한 변수 평가를 수행하지 않으려는 경우 작은 따옴표를 사용합니다. 반면에 값에 대한 변수 평가를 수행하려는 경우 큰따옴표를 사용합니다.
32. GUI 스크립팅이란 무엇을 의미합니까?
우리는 GUI를 사용하여 컴퓨터와 응용 프로그램을 제어합니다. GUI 스크립팅을 통해 운영 체제에 따라 다양한 응용 프로그램을 처리할 수 있습니다.
33. Super Block in Shell 스크립팅에 대해 무엇을 알고 있습니까?
슈퍼 블록은 특정 파일 시스템에 대한 기록이 있는 프로그램입니다. 여기에는 블록 크기, 해당 개수가 있는 채워진 블록과 비어 있는 블록, inode 테이블의 위치와 크기, 사용 정보, 디스크 블록 맵 등의 특성이 포함됩니다.
34. Shebang 라인의 중요성은 무엇입니까?
Shebang 라인은 스크립트의 맨 위에 남아 있습니다. 스크립트를 실행하는 엔진이 있는 위치에 대한 정보를 제공합니다.
35. 가장 널리 사용되는 UNIX 명령을 제공합니다.
다음은 가장 널리 사용되는 UNIX 명령 중 일부입니다.
- cd – cd 명령은 $ cd로 사용될 때 디렉토리를 사용자의 홈 디렉토리로 변경합니다. $ cd test를 통해 테스트할 디렉토리를 변경하는데 사용할 수 있습니다.
- ls – ls 명령은 $ ls로 사용될 때 현재 디렉토리의 파일을 나열합니다. $ ls -lrt로 사용하면 긴 형식으로 파일을 녹음할 수 있습니다.
- rm – rm 명령은 $ rm fileA로 사용할 때 fileA라는 파일을 삭제합니다.
- cat – 이 명령은 $ cat 파일 이름으로 사용할 때 파일에 있는 내용을 표시합니다.
- mv – mv 명령은 파일의 이름을 바꾸거나 이동할 수 있습니다. 예를 들어, $ mv fileA fileB 명령은 fileA 및 fileB라는 파일을 이동합니다.
- date – date 명령은 현재 시간과 날짜를 표시합니다.
- grep – grep 명령은 파일에서 특정 정보를 검색할 수 있습니다. 예를 들어, $ grep Hello fileA 명령은 'Hello'라는 단어가 있는 줄을 검색합니다.
- finger – finger 명령은 사용자에 대한 정보를 보여줍니다.
- ps – ps 명령은 컴퓨터에서 현재 실행 중인 프로세스를 보여줍니다.
- man – man 명령은 지정된 명령에 대한 온라인 도움말 또는 설명서를 표시합니다. 예를 들어, $ ms rm 명령은 rm 명령에 대한 온라인 설명서를 표시합니다.
- pwd – pwd 명령은 현재 작업 디렉토리를 표시합니다.
- wc – wc 명령은 파일에 있는 문자, 단어 및 행의 수를 계산합니다.
- history – history 명령은 최근에 사용한 모든 명령 목록을 표시합니다.
- gzip – gzip 명령은 지정된 파일을 압축합니다. 예를 들어 $ gzip fileA 명령은 fileA를 압축하여 fileA.gz로 변경합니다.
- logname – logname 명령은 사용자의 로그 이름을 인쇄합니다.
- head – head 명령은 파일에 있는 첫 번째 줄을 표시합니다. 예를 들어, $ head -15 fileA 명령은 fileA의 처음 15줄을 표시합니다.
추가 참고 사항: 이것은 가장 중요한 Shell 스크립팅 인터뷰 질문 중 하나입니다. 인터뷰에서 이 질문의 많은 버전이 요구되므로 보다 철저한 UNIX 명령 목록을 준비하는 것이 좋습니다.
반드시 읽어야 할 내용: 데이터 과학 인터뷰 질문
36. C Shell이 Bourne Shell보다 나은 점은 무엇입니까?
C Shell은 다음과 같은 이유로 Bourne Shell보다 우수합니다.
- C 셸을 사용하면 명령의 별칭을 지정할 수 있습니다. 이것은 사용자가 명령에 원하는 이름을 지정할 수 있음을 의미합니다. 사용자가 긴 명령을 여러 번 사용해야 할 때 매우 유용합니다. 명령의 긴 이름을 여러 번 입력하는 대신 사용자가 할당된 이름을 입력할 수 있습니다. 많은 시간과 에너지를 절약하여 프로세스를 훨씬 더 효율적으로 만듭니다.
- C Shell에는 이전에 사용한 모든 명령을 기억하는 명령 기록 기능이 있습니다. 이 기능을 사용하여 동일한 명령을 여러 번 입력하지 않도록 할 수 있습니다. 효율성을 크게 향상시킵니다.
위의 두 가지 이유로 C Shell을 사용하는 것이 Bourne Shell보다 훨씬 유리합니다.
37. 쉘 스크립트를 작성하는 데 필수적인 것은 무엇입니까?
셸 스크립팅에는 중요한 이점이 많이 있습니다. 사용자로부터 입력을 받아 정리하여 화면에 표시합니다. 또한 자신만의 명령을 만들고 간단한 일상 작업을 자동화할 수 있습니다. 셸 스크립팅을 사용하여 시스템 관리 작업도 자동화할 수 있습니다. 셸 스크립팅은 많은 에너지와 시간을 절약하여 프로세스를 보다 효율적으로 만듭니다. 이 때문에 매우 필수적이며 널리 사용됩니다.
결론
이 26개의 Shell Scripting 인터뷰 질문과 답변이 Shell Scripting에 대한 편견을 깨고 다음 인터뷰를 준비하는 데 도움이 되기를 바랍니다!
데이터 과학에 대해 자세히 알아보려면 작업 전문가를 위해 만들어졌으며 10개 이상의 사례 연구 및 프로젝트, 실용적인 실습 워크숍, 업계 전문가와의 멘토링, 1 - 업계 멘토와 일대일, 400시간 이상의 학습 및 최고의 기업과의 취업 지원.
쉘 스크립팅이란 무엇입니까?
쉘 스크립팅은 단조로운 작업을 자동화하기 위해 스크립트/코드를 작성하는 프로세스입니다. 명령을 차례로 n번 입력하는 대신, 차례로 실행되는 일련의 명령을 자동화하는 스크립트를 작성할 수 있습니다. 쉘 스크립팅의 필수 단계는 스크립트를 작성하고 쉘에 액세스할 수 있도록 하고 쉘 실행 권한을 부여하는 것입니다. 쉘 스크립트는 ASCII 텍스트로 작성되며 ASCII 텍스트를 포함합니다. 텍스트 편집기, 워드 프로세서 또는 GUI(그래픽 사용자 인터페이스)로 생성됩니다. 스크립트의 내용은 쉘이 이해할 수 있는 언어로 작성된 명령 시퀀스로 구성됩니다. 완료되면 파일은 확장자와 함께 셸이 액세스할 수 있는 위치에 저장됩니다.
쉘 스크립팅의 응용 프로그램은 무엇입니까?
쉘 스크립팅은 쉽고 효과적입니다. 쉘 명령줄에서와 같이 스크립트에서 동일한 구문을 사용하여 모호성을 제거합니다. 쉘 스크립트는 한 번에 한 줄만 입력하여 완료하는 데 너무 오래 걸리는 반복적인 활동에 유용합니다. 사용자는 코드 컴파일 프로세스 자동화, 프로그램 실행 또는 프로그래밍 환경 구축, 배치 완료 및 파일 조작, 기존 프로그램 연결, 일상적인 백업 수행 및 시스템 모니터링과 같은 다양한 목적을 위해 쉘 스크립트를 사용할 수 있습니다.
쉘 스크립팅은 좋은 직업입니까?
쉘 스크립팅은 자동화, 프로그래밍, 시스템 관리 잡일, 애플리케이션 자동화, 패키지 설정, 검증 자동화, 시스템의 데이터 백업 및 복원 등과 같은 다양한 분야에서 사용됩니다. 따라서 쉘 스크립팅은 모든 회사의 IT 부서에서 필수적인 부분입니다. . 또한 개인의 IT 경력 전반에 걸쳐 도움이 됩니다. 연간 평균 급여가 6,39,000루피인 Shell 스크립팅은 학습자에게 많은 가능성이 있는 좋은 직업입니다. 대부분의 IT 전문가는 많은 시간을 절약할 수 있으므로 일상적인 자동화된 집안일을 위해 매일 사용합니다.