Skip to content

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).

Notifications You must be signed in to change notification settings

Operating-Systems-1/Bash-Scripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

UNIWA

UNIVERSITY OF WEST ATTICA
SCHOOL OF ENGINEERING
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

Co-supervisor: Georgios Pentaris, Postdoctoral Researcher

UNIWA Profile

Athens, January 2022

Bash Scripts Assignment

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 Repository overview and usage instructions

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.


Requirements

  • Operating System: Linux (or WSL for Windows)
  • Shell Environment: Bash or compatible
  • Commands Used: find, ls, grep, chmod, chown, tar, cron, at, ps, etc.

Installation & Usage

1. Clone the Repository

git clone https://github.com/Operating-Systems-I/Bash-Scripts.git
cd Bash-Scripts

2. Make Scripts Executable

chmod u+x searching.sh createpvs.sh cmpdir.sh bck.sh bck1.sh bck2.sh mfproc.sh

3. Run Scripts with Arguments

./searching.sh $1 $2
./createpvs.sh $1 $2 $3 $4
./cmpdir.sh $1 $2 $3
./bck.sh $1 $2 $3
./bck1.sh $1 $2 $3 $4
./bck2.sh
./mfproc.sh

About

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).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages