Learn 15 Linux Commands

Objective: Learn 15 essential Linux commands and provide examples of their usage.
Requirements: Research and document the purpose of the following commands:

  1. ls
  2. cd
  3. pwd
  4. cp
  5. mv
  6. rm
  7. mkdir
  8. rmdir
  9. cat
  10. touch
  11. grep
  12. find
  13. chmod
  14. df
  15. top

Deliverables: For each command, provide:
A short explanation of its purpose.
An example of how the command is used (screenshot of executed command.

1. ls – List directory contents

Purpose: Displays the files and directories in the current directory.
Example:

bashCopyEdit$ ls
Documents  Downloads  file.txt  script.sh

2. cd – Change directory

Purpose: Navigates between directories in the file system.
Example:

bashCopyEdit$ cd Documents

3. pwd – Print working directory

Purpose: Displays the full path of the current directory.
Example:

bashCopyEdit$ pwd
/home/user/Documents

4. cp – Copy files or directories

Purpose: Makes a copy of a file or directory. cp [що копіюємо] [куди копіюємо]

Example:

bashCopyEdit$ cp file.txt backup.txt

5. mv – Move or rename files

Purpose: Moves a file to another location or renames it.
Example:

bashCopyEdit$ mv oldname.txt newname.txt

6. rm – Remove files or directories

Purpose: Deletes files (and optionally, directories).
Example:

bashCopyEdit$ rm unwanted.txt

⚠️ Use rm -r for directories and rm -rf with caution.


7. mkdir – Make directories

Purpose: Creates a new directory.
Example:

bashCopyEdit$ mkdir new_folder

8. rmdir – Remove empty directories

Purpose: Deletes an empty directory.
Example:

bashCopyEdit$ rmdir old_folder

9. cat – Concatenate and display file content

Purpose: Prints the contents of a file to the terminal.
Example:

bashCopyEdit$ cat file.txt
Hello, this is a text file.

10. touch – Create empty files / update timestamps

Purpose: Creates a new, empty file or updates the timestamp.
Example:

bashCopyEdit$ touch newfile.txt

11. grep – Search text using patterns

Purpose: Finds matching lines in text using regular expressions.
Example:

bashCopyEdit$ grep "error" logfile.txt
[ERROR] File not found

12. find – Locate files in a directory structure

Як використовувати команду find:

  1. 1. Шукати за ім’ям файлу:
    • find /шлях/до/каталогу -name "ім'я_файлу" – шукає файл з точним ім’ям у вказаному каталозі.
    • find /шлях/до/каталогу -name "*.txt" – шукає всі файли з розширенням .txt у вказаному каталозі.
    • find /шлях/до/каталогу -iname "Ім'я_файлу" – шукає файл, не враховуючи регістр.

Purpose: Searches for files based on name, type, size, etc.
Example:

bashCopyEdit$ find . -name "*.txt"
./notes.txt
./Documents/info.txt

13. chmod – Change file permissions

Команда chmod в терміналі використовується для зміни прав доступу до файлів та каталогів в операційних системах на базі Unix (Linux, macOS). Вона дозволяє налаштувати, хто може читати, записувати або виконувати файл чи каталог. 

Як використовувати chmod:

Команда chmod має два основних способи задання прав: символьний та числовий. 

1. Числовий (октальний) спосіб:

  • Кожен файл або каталог має три набори прав: для власника, для групи та для всіх інших користувачів. 
  • Кожне право має числовий еквівалент:
    • r (читання) – 4
    • w (запис) – 2
    • x (виконання) – 1
    • - (відсутність права) – 0 
  • Права об’єднуються для кожного набору (власник, група, інші) шляхом додавання їх числових значень. 
  • Наприклад:
    • 755 – власник має права читання, запису та виконання (4+2+1=7), група та інші мають права читання та виконання (4+1=5) 
    • 644 – власник має права читання та запису (4+2=6), група та інші мають права тільки на читання (4) 
  • Команда: chmod 755 ім'я_файлу 

2. Символьний спосіб:

  • Використовуються літери для позначення користувачів та прав:
    • u – власник (user)
    • g – група (group)
    • o – інші (others)
    • a – всі (all) 
    • + – додати право
    • - – забрати право
    • = – встановити право 
    • r – читання (read)
    • w – запис (write)
    • x – виконання (execute) 
  • Приклади:
    • chmod u+x файл.txt – додати право на виконання для власника файлу 
    • chmod g-w файл.txt – забрати право на запис для групи 
    • chmod a=rx файл.txt – встановити права на читання та виконання для всіх 
  • Команда: chmod u+x файл.txt 

Загальні поради:

  • Завжди переконайтеся, що ви розумієте, які права змінюєте, щоб уникнути небажаних наслідків. 
  • Для рекурсивного зміни прав для всього каталогу та його вмісту використовуйте параметр -R, наприклад: chmod -R 755 каталог/ 
  • Зміна прав доступу зазвичай вимагає прав адміністратора (root) або прав власника файлу. 
  • Ретельно перевіряйте команду chmod, перш ніж її виконувати, щоб уникнути помилок. 

Приклад використання:

Припустимо, у вас є скрипт script.sh, і ви хочете зробити його виконуваним для всіх. Ви можете використати таку команду:

Код

chmod 755 script.sh

або

Код

chmod a+x script.sh

після чого перевірити права за допомогою ls -l script.sh. Результатом має бути щось на кшталт:

Код

-rwxr-xr-x 1 користувач група розмір дата час script.sh

де rwxr-xr-x показує, що власник має права на читання, запис та виконання, а група та інші – на читання та виконання. 

Purpose: Modifies the read/write/execute permissions for files and directories.
Example:

bashCopyEdit$ chmod +x script.sh

14. df – Disk free space

Purpose: Shows available and used disk space on all mounted filesystems.
Example:

bashCopyEdit$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        50G   20G   27G  43% /

15. top – Show real-time system processes

Purpose: Displays system resource usage, CPU/memory stats, and running processes. Аналог у Windows tasklist
Example:

bashCopyEdit$ top

(Displays a dynamic table of running processes)