Linux 시작하기

LinuxBeginner
지금 연습하기

소개

터미널은 Linux 와 텍스트로 통신하는 방법입니다. 프롬프트에 명령을 입력하고 Enter 키를 누르면 Linux 가 출력을 표시하거나 시스템의 내용을 변경합니다. 처음에는 프롬프트가 낯설 수 있지만, 모든 상호 작용은 같은 간단한 패턴을 따릅니다.

이 첫 번째 실습에서는 텍스트를 출력하고, 날짜를 표시하고, 달력을 확인하고, 숫자를 계산하고, 텍스트 아트를 만드는 안전한 명령을 실행합니다. 또한 몇 가지 결과를 /home/labex/project/first-commands 아래에 저장합니다. 이를 통해 임시 터미널 출력과 파일에 저장된 정보를 구분할 수 있습니다.

첫 번째 명령 실행하기

팁: LabEx 가 처음이라면 Linux Learning Path부터 시작하는 것이 좋습니다.

이 단계에서는 터미널 프롬프트를 식별하고, 명령을 실행하고, 출력을 읽는 방법을 배웁니다.

깜박이는 커서는 프롬프트 뒤에 나타납니다. 프롬프트는 셸이 명령을 입력받을 준비가 되었음을 나타냅니다. 프롬프트 자체를 입력하지는 않습니다. 먼저 이 실습을 위해 준비된 작업 공간으로 이동합니다.

cd /home/labex/project/first-commands

Terminal 탭에서 깜박이는 커서에 명령 입력

cd는“change directory”를 의미합니다. 디렉터리는 Linux 에서 폴더를 부르는 이름입니다. 디렉터리에 대해서는 이후 실습에서 자세히 다룹니다. 지금은 이 명령을 사용해 저장한 모든 결과의 기준 위치를 하나로 정합니다.

“print working directory”를 의미하는 pwd를 실행합니다.

pwd

출력에는 방금 이동한 디렉터리가 표시되어야 합니다.

/home/labex/project/first-commands

이제 echo를 사용해 셸이 텍스트를 출력하도록 합니다.

echo "Hello, Linux"

다음과 같이 표시됩니다.

Hello, Linux

따옴표는 여러 단어를 하나의 텍스트 값으로 묶습니다. 이제 이 인사말을 파일에 저장합니다. > 기호는 출력 리디렉션이라고 합니다. 셸은 오른쪽에 지정한 이름의 파일을 만들고, 명령의 일반 출력을 화면 대신 해당 파일로 보냅니다. 파일이 이미 있으면 >가 기존 내용을 바꾸므로, 중요한 데이터를 사용할 때는 먼저 대상 파일을 확인해야 합니다.

echo "Hello, Linux" > greeting.txt

출력이 greeting.txt로 보내졌기 때문에 이 명령은 화면에 아무것도 출력하지 않습니다.

cat으로 저장된 파일을 읽습니다.

cat greeting.txt

다시 Hello, Linux가 표시되면 텍스트가 터미널 화면에만 있는 것이 아니라 greeting.txt에 저장되었다는 뜻입니다.

날짜와 달력 확인하기

이 단계에서는 Linux 에서 시간 정보를 확인하고, 명령 출력이 환경에 따라 달라질 수 있다는 점을 알아봅니다.

옵션 없이 date를 실행합니다.

date

Linux 는 현재 요일, 날짜, 시간, 시간대, 연도를 출력합니다. 정확한 값은 매초 변하므로 다른 곳에서 본 예시와 출력이 다를 수 있습니다.

명령은 출력 형식을 바꾸는 옵션을 사용하는 경우가 많습니다. +로 시작하는 date 형식을 사용하면 표시할 필드를 선택할 수 있습니다. %F는 ISO 날짜 형식인 YYYY-MM-DD를 의미합니다.

date +%F

오늘 날짜를 ISO 형식으로 저장합니다. 이전 단계와 마찬가지로 >는 출력을 파일로 리디렉션하며, 파일이 이미 있으면 기존 내용을 바꿉니다.

date +%F > today.txt

cal 명령은 현재 달을 달력으로 표시합니다.

cal

월과 요일의 배치는 현재 날짜와 로캘에 따라 달라집니다. 이 출력도 저장합니다.

cal > calendar.txt

> 기호는 출력을 화면 대신 파일로 보냅니다. 저장된 달력을 표시해 파일에 제대로 기록되었는지 확인합니다.

cat calendar.txt

리디렉션은 이후에 자세히 배웁니다. 지금은 터미널 출력을 즉시 확인하거나 나중에 사용하도록 저장할 수 있다는 점을 기억합니다.

Expr 로 계산하기

이 단계에서는 정수 산술에 expr을 사용하고, 셸 명령에서 공백이 중요한 이유를 확인합니다.

셸은 공백을 기준으로 명령줄을 여러 단어로 나눕니다. expr은 첫 번째 숫자, 연산자, 두 번째 숫자를 별도의 인수로 받아야 합니다. 두 수를 더합니다.

expr 5 + 3

결과는 다음과 같습니다.

8

뺄셈과 나눗셈도 실행해 봅니다.

expr 20 - 7
expr 24 / 6

곱셈에는 한 가지 추가로 알아둘 내용이 있습니다. 셸은 *를 파일 이름 와일드카드로 처리하므로, expr에 문자 그대로의 곱셈 연산자를 전달하려면 백슬래시로 이스케이프해야 합니다.

expr 6 \* 7

곱셈 결과를 파일에 저장합니다. 앞에서 연습한 것과 같은 출력 리디렉션을 사용하므로 터미널에는 출력되지 않고 calculation.txt42가 저장됩니다.

expr 6 \* 7 > calculation.txt

파일을 표시합니다.

cat calculation.txt

42가 표시되어야 합니다. 이 첫 번째 연습에서는 명령 구조에 집중합니다. 명령 이름, 공백으로 구분된 인수, 선택적인 출력 대상이 그것입니다.

텍스트를 ASCII 아트로 변환하기

이 단계에서는 명령 옵션을 사용해 figlet이 텍스트 형식을 지정하는 방식을 바꿉니다.

figlet은 일반 터미널 문자로 큰 글자를 만듭니다. 짧은 단어를 사용해 실행합니다.

figlet "LabEx"

출력은 여러 줄에 걸쳐 표시됩니다. 이미지 픽셀 대신 텍스트 문자를 사용하므로 이를 ASCII 아트라고 합니다.

많은 Linux 옵션은 -로 시작합니다. figlet에서 -f는 글꼴을 선택하며, slant는 글꼴 이름입니다. 다음 명령을 실행해 봅니다.

figlet -f slant "Linux"

첫 번째 디자인을 파일에 저장합니다.

figlet "LabEx" > labex-art.txt

저장된 아트의 앞부분을 확인합니다.

head labex-art.txt

head는 기본적으로 처음 10 줄을 표시합니다. 터미널에 표시되었던 것과 같은 여러 줄의 디자인이 보여야 합니다.

복잡해진 터미널 정리하기

이 단계에서는 이전 출력을 지우고, 화면 정리와 파일 삭제가 서로 다르다는 점을 확인합니다.

여러 명령을 실행하면 터미널 화면이 복잡해질 수 있습니다. 다음 명령을 실행합니다.

clear

clear는 이전 터미널 출력을 화면에서 보이지 않게 합니다. 명령, 파일, 디렉터리를 삭제하지는 않습니다. 대부분의 터미널에서는 같은 화면 정리 작업을 수행하는 키보드 단축키로 Ctrl+L도 지원합니다.

작업 공간의 파일 목록을 표시해 이전 파일이 여전히 존재하는지 확인합니다.

ls

greeting.txt, today.txt, calendar.txt, calculations.txt, labex-art.txt가 계속 표시되어야 합니다.

화면을 정리한 뒤 마지막 표시 파일을 만듭니다.

echo "Terminal ready" > terminal-ready.txt

표시 파일을 출력해 확인합니다.

cat terminal-ready.txt

이 마지막 명령은 중요한 개념을 다시 확인합니다. 화면을 지우는 작업은 현재 보이는 내용만 바꾸며, 파일은 디스크에 계속 저장되어 있습니다.

요약

터미널의 기본 상호 작용 패턴을 배웠습니다. 명령을 입력하고, Enter 키를 누르고, 결과를 해석하는 과정입니다. pwd, echo, date, cal, expr, figlet, clear를 연습하고, 간단한 옵션을 사용했으며, 출력을 파일에 저장했습니다. 이제 더 폭넓은 파일 작업을 배우기 전에 작은 터미널 과제에서 이러한 기본기를 적용할 준비가 되었습니다.