GitHunt
OP

Operating-Systems-1/Bash-Scripts

Linux shell scripting assignment featuring scripts for file searching, directory comparison, backup, process management, and directory creation, enhancing command-line and Bash skills (Operating Systems I, UNIWA).

UNIWA

UNIVERSITY OF WEST ATTICA
SCHOOL OF ENGINEERING
DEPARTMENT OF COMPUTER ENGINEERING AND INFORMATICS

University of West Attica · Department of Computer Engineering and Informatics


Operating Systems I

Bash Scripts

Vasileios Evangelos Athanasiou
Student ID: 19390005

GitHub · LinkedIn


Supervision

Supervisor: Vasileios Mamalis, Professor

UNIWA Profile

Supervisor: Dimitrios Karolidis, Applications Lecturer

UNIWA Profile · LinkedIn

Co-supervisor: Georgios Pentaris, Academic Scholar

UNIWA Profile


Athens, January 2022



README

Bash Scripts

This repository contains a comprehensive assignment for Linux shell scripting, designed to enhance students’ proficiency in managing the Linux file system and processes through Bash scripts.


Table of Contents

Section Folder/File Description
1 assign/ Assignment material for the Bash Scripts workshop
1.1 assign/OS1_Lab_Ask-2-2021-22.pdf Assignment description in English
1.2 assign/ΛΣ1_Εργ_Ασκ-2-2021-22.pdf Assignment description in Greek
2 docs/ Bash script scenarios and explanations
2.1 docs/Bck-Script.txt Backup script scenario in English
2.2 docs/Bck-Σενάριο.txt Backup script scenario in Greek
2.3 docs/Cmpdir-Script.txt Compare directories script scenario in English
2.4 docs/Cmpdir-Σενάριο.txt Compare directories script scenario in Greek
2.5 docs/Createpvs-Script.txt Create PVS script scenario in English
2.6 docs/Createpvs-Σενάριο.txt Create PVS script scenario in Greek
2.7 docs/Mfproc-Script.txt Mfproc script scenario in English
2.8 docs/Mfproc-Σενάριο.txt Mfproc script scenario in Greek
2.9 docs/Searching-Script.txt Searching script scenario in English
2.10 docs/Searching-Σενάριο.txt Searching script scenario in Greek
3 src/ Bash script source files
3.1 src/bck.sh Backup script
3.2 src/bck1.sh Backup variant 1 script
3.3 src/bck2.sh Backup variant 2 script
3.4 src/cmpdir.sh Compare directories script
3.5 src/createpvs.sh Create PVS script
3.6 src/mfproc.sh Mfproc processing script
3.7 src/searching.sh Searching script
4 README.md Project documentation
5 INSTALL.md Usage instructions

1. Project Overview

The assignment covers five Bash scripts that handle:

  1. Searching Files – Using find, ls, and grep to filter by permissions, modification time, and directory access.
  2. Directory Comparison (cmpdir) – Identifying unique and common files, moving them, and creating hard links.
  3. Directory Creation (createpvs) – Creating directories with proper permissions and ownership.
  4. Backup (bck) – Archiving files/directories using tar with optional scheduling via cron or at.
  5. Process Management (mfproc) – Displaying processes by user or state (Running, Sleeping, Zombie).

The goal is to strengthen Linux CLI skills and shell scripting expertise.

Languages

Shell100.0%

Contributors

Created October 9, 2024
Updated February 20, 2026