Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/ruben2163/terminal-emulator-python

This is an open source project to simulate the unix terminal in python
https://github.com/ruben2163/terminal-emulator-python

command-line emulator linux mit-license python python-terminal python3 pythonterminal simulater teminal-emulator terminal unix virtual virtual-machine

Last synced: about 2 months ago
JSON representation

This is an open source project to simulate the unix terminal in python

Awesome Lists containing this project

README

        

# **Python Terminal**

A Python-based Linux terminal simulation that allows users to execute basic file system commands within a virtual environment. Includes support for file management, directory navigation, and command aliases.

---
![Demo](READMEIMGS/demo.jpg)
## **Features**
- **File System Management**:
- Create folders and files (`mkdir`, `touch`).
- List directory contents (`ls`).
- Read and delete files (`read`, `rm`).
- Rename files or folders (`mv`).
- Navigate directories (`cd`, `cd ..`, `pwd`).
- Delete folders (`rmdir`).
- **Aliases**:
- Define custom aliases for frequently used commands (`alias`).
- Remove aliases (`unalias`).
- Save and load aliases automatically.
- **Help Menu**:
- View all available commands using the `help` command.
- **Persistence**:
- Virtual file system and aliases persist across sessions.

---

## **Installation**

### **Prerequisites**
- Python 3.6 or higher.

### **Steps**
1. Clone the repository:
```bash
git clone https://github.com/Ruben2163/Python-Terminal.git
1. Run Main.py:
```bash
python3 main.py
---
## **Basic commands**

| Commands|Usage|
| -------|------------------ |
| mkdir |Create a folder.|
|touch | Create a file.|
|ls |List contents of the current directory.|
|read |Display the content of a file.|
|rm |Delete a file.|
|rmdir |Delete a folder.|
|mv |Rename a file or folder.|
|cd |Navigate to a directory.|
|cd .. |Go to the parent directory.|
|pwd |Print the current working directory.|
|help |Display the help menu.|
|exit |Exit the terminal.|
|alias |Create a shortcut for a command.|
|unalias |Remove an alias.|

---

## **Project Structure**

```plaintext
Python-Terminal/

├── main.py # Main script for the terminal interface
├── file_system.py # Handles file system and alias logic
├── virtual_fs/ # Virtual file system root directory
└── README.md # Documentation (this file)
```
---

## **Contributing**

Contributions are welcome! If you have suggestions for improvements or new features, feel free to:

1. Fork the repository.
2. Create a new branch.
3. Submit a pull request.

---

## **License**

This project is licensed under the MIT License. See the LICENSE file for details.