소개
터미널은 텍스트를 기반으로 Linux 와 소통하는 방법입니다. 프롬프트에 명령을 입력하고 Enter 를 누르면 Linux 가 결과를 출력하거나 시스템의 무언가를 변경합니다. 처음에는 프롬프트가 낯설게 보일 수 있지만, 모든 상호작용은 같은 간단한 패턴으로 이루어집니다.
이 첫 번째 실습에서는 텍스트를 출력하고, 날짜를 확인하고, 달력을 표시하고, 숫자를 계산하고, 텍스트 아트를 만드는 안전한 명령을 실행합니다. 또한 몇 가지 결과를 /home/labex/project/first-commands 아래에 저장하여, 터미널에 일시적으로 표시되는 출력과 파일에 저장된 정보를 구분하는 방법도 익힙니다.
첫 번째 명령 실행하기
팁: LabEx를 처음 사용하는 경우 Linux 학습 경로부터 시작하는 것을 권장합니다.
이 단계에서는 터미널 프롬프트를 식별하고, 명령을 실행하고, 출력 결과를 읽는 방법을 배웁니다.
깜박이는 커서는 프롬프트 뒤에 나타납니다. 프롬프트는 셸이 명령을 입력받을 준비가 되었음을 알려 주는 표시이므로, 프롬프트 자체를 입력하면 안 됩니다. 먼저 이 실습을 위해 준비된 작업 공간으로 이동합니다.
cd /home/labex/project/first-commands

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.txt에 42가 저장됩니다.
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를 연습하고, 간단한 옵션을 사용했으며, 출력 결과를 파일에 저장했습니다. 이제 더 폭넓은 파일 작업을 배우기 전에, 작은 터미널 도전 과제에서 이러한 기초를 적용해 볼 준비가 되었습니다.



