An open API service indexing awesome lists of open source software.

https://github.com/ovuiproduction/unix-file-system-simulation

This project simulates a Unix-like file system using an N-ary tree data structure, enabling efficient file and directory management. It supports essential operations like creation, deletion, traversal, and renaming while providing a command-line interface that mimics Unix shell commands for an intuitive user experience.
https://github.com/ovuiproduction/unix-file-system-simulation

command-line-interface data-structures directory-management file-management file-system filesystem-simulation n-ary-tree shell-commands tree-structure unix-shell

Last synced: 28 days ago
JSON representation

This project simulates a Unix-like file system using an N-ary tree data structure, enabling efficient file and directory management. It supports essential operations like creation, deletion, traversal, and renaming while providing a command-line interface that mimics Unix shell commands for an intuitive user experience.

Awesome Lists containing this project

README

          

## Unix File System Simulation using N-ary Tree

### Demo

**[Demo Video](https://youtu.be/lfB_HMSvs-c)**

### Overview

This project simulates a Unix-like file system using an N-ary tree data structure. It provides essential file and directory operations such as creation, deletion, traversal, and renaming. The project also includes a command-line interface that mimics Unix shell commands.

----

### Tech Stack
```bash
# Programming Language
C

# Data Structures
N-ary Tree

# Concepts
File System Management
```
---

### File System Operations
```bash
# Available commands (usage)
man # Display help
ls [-l] # List files/directories, -l for details (date/type)
pwd # Print working directory
cd # Change directory (.., ~ or / supported)
mkdir # Create a new directory
touch # Create a new empty file
rm # Remove a file or empty directory
cp # Copy file (files only)
mv # Move file or directory into destination directory
rename # Rename file or directory in current dir
cat # Display file content
echo > # Write a single line to file (overwrites or creates)
find # Find file/directory path (searches entire tree)
tree # Display directory tree for current directory
clear # Clear the screen
exit # Exit the program
```

---

### Features

1. File and Directory Management: Create, delete, rename, and move files and directories.

2. Navigation: Change directories (cd), list contents (ls), and print the working directory (pwd).

3. File Operations: Create files (touch), read content (cat), and copy files (cp).

4. Search: Find files and directories using the find command.

Mimics Unix Shell Commands: Supports basic Unix commands like mkdir, rm, mv, etc.

---

### Installation

Use the following commands to install and run the project:

```bash
git clone https://github.com/ovuiproduction/Unix-File-System-Simulation.git
cd Unix-File-System-Simulation
gcc Unix_File_System_Simulation.c -o app.exe
./app.exe
```

---