https://github.com/siddhant-vij/unix-java-tools
Java-based UNIX Command Simulation
https://github.com/siddhant-vij/unix-java-tools
command-line data-processing educational-project file-management java java-io java-nio multithreading network-programming regular-expressions system-utilities unix-command
Last synced: 3 months ago
JSON representation
Java-based UNIX Command Simulation
- Host: GitHub
- URL: https://github.com/siddhant-vij/unix-java-tools
- Owner: siddhant-vij
- License: mit
- Created: 2024-01-02T14:27:59.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-17T07:04:46.000Z (over 1 year ago)
- Last Synced: 2025-01-16T19:37:24.715Z (4 months ago)
- Topics: command-line, data-processing, educational-project, file-management, java, java-io, java-nio, multithreading, network-programming, regular-expressions, system-utilities, unix-command
- Language: Java
- Homepage:
- Size: 69.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Unix Java Tools
Java-based project aimed at simulating UNIX command line tools on a Windows environment. It's designed to practice advanced Java concepts while providing functional versions of classic UNIX commands.
## Table of Contents
1. [Features](#features)
1. [Contributing](#contributing)
1. [Future Improvements](#future-improvements)
1. [License](#license)## Features
- **File and Directory Management**:
- `ls`: List directory contents.
- `mkdir`: Create new directories.
- `rmdir`: Remove directories.
- `cp`: Copy files and directories.
- `mv`: Move/rename files and directories.
- `rm`: Remove files and directories.
- `touch`: Create or update files.
- `find`: Search for files in a directory hierarchy.
- `df`: Report file system disk space usage.
- `du`: Estimate file space usage.
- `pwd`: Print the current working directory.
- **Networking Capabilities**:
- `ping`: Check network connectivity to a server.
- `curl`: Retrieve web pages and files.
- `wget`: Download web pages and files.
- `ifconfig`: Display network interface information.
- `traceroute`: Trace a route through the network.
- **File Content Manipulation**:
- `cat`: Concatenate and display file content.
- `head`: Output the first part of files.
- `tail`: Output the last part of files.
- `grep`: Search for patterns in files using regex.
- `sort`: Sort lines of text files.
- `uniq`: Report or omit repeated lines.
- `wc`: Word, line, character, and byte count.
- `tr`: Translate or delete characters.
- `echo`: Display a line of text.## Contributing
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
1. **Fork the Project**
2. **Create your Feature Branch**:
```bash
git checkout -b feature/AmazingFeature
```
3. **Commit your Changes**:
```bash
git commit -m 'Add some AmazingFeature'
```
4. **Push to the Branch**:
```bash
git push origin feature/AmazingFeature
```
5. **Open a Pull Request**## Future Improvements
- **Other Unix Commands**: Add the following to the project:
- `cut`: Extract columns from files.
- `diff`: Compare files line by line.
- `sed`: Stream editor for filtering and transforming text.
- `awk`: Pattern scanning and processing language.
- and other advanced Unix commands.
- **GUI Integration**: Develop a Graphical User Interface for the command-line tools for enhanced user interaction.
- **Networking Capabilities**: Extend the project to include network-related commands for advanced operations.
- **Cross-Platform Compatibility**: Enhance compatibility with other operating systems, including full UNIX and Linux support.
- **Performance Optimization**: Optimize command execution and resource management.## License
Distributed under the MIT License. See [`LICENSE`](https://github.com/siddhant-vij/Unix-Java-Tools/blob/main/LICENSE) for more information.