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.
- Host: GitHub
- URL: https://github.com/ovuiproduction/unix-file-system-simulation
- Owner: ovuiproduction
- Created: 2023-12-05T14:42:22.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-10-29T05:41:30.000Z (7 months ago)
- Last Synced: 2025-10-29T07:27:46.103Z (7 months ago)
- Topics: command-line-interface, data-structures, directory-management, file-management, file-system, filesystem-simulation, n-ary-tree, shell-commands, tree-structure, unix-shell
- Language: C
- Homepage: https://github.com/ovuiproduction/Unix-File-System-Simulation
- Size: 19.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
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
```
---