Multi Utility Command Line Interface
- Overview - What is MUCLI
- MUCLI Commands - What can you do with MUCLI
- Crates used - What was used to create MUCLI
- Contributing - How can you help out MUCLI's development
ⓘ NOTE
- This project was created to learn the fundamentals of Rust and should not be taken as a serious project.
- A lot of the functionalities might be really
basicornot complete.- If you want to help improve MUCLI, visits the "Contributing" section below.
- All the functionalities of MUCLI were tested on a
Windows 11machine.
MUCLI is an "all-in-one" command-line application written in Rust. Rather than requiring multiple small utilities for everyday tasks, MUCLI brings a wide range of features together into a single program.
Whether you need to handle files, inspect your system, or perform other common operations, MUCLI aims to a simple and convenient way to do so directly from the terminal.
In the following table of contents, you'll find an overview of every feature currently available in MUCLI, along with a brief description of what each command does.
- File
- Create
- Delete
- Write
- Copy
- Read
- Dir
- Create
- Delete
- Images
- System
- Configs
- Connection
- Ping
- Misc
- Weather
- Password-Generator
- Credits
The followings commands are used to handle file specific tasks.
ⓘ NOTE
The commands won't work if you don't have the authorization.
Command:
file create <file_name> <dir_path>
Example:
file create file_name.txt C:\Users\user\DesktopThis allows you to create a file in the specified directory (the extension MUST be included).
Command:
file delete <file_path>
Example:
file delete C:\Users\user\Desktop\file_name.txtThis allows you to delete a specified file (the extension MUST be included).
Command:
file write "<message>" <file_path> [FLAGS]
Example:
file write "this is a message" C:\Users\user\Desktop\file_name.txtFlags:
This command contains flags that can be included.
-o or --overwrite => overwrites the contents of the file.
This allows you to write contents in a specified file (the extension MUST be included).
Command:
file copy <file_copy_path> <file_paste_path> [FLAGS]
Example:
file copy C:\Users\user\file_name.txt C:\Users\user\NEW_DIR\file_name.txtFlags:
This command contains flags that can be included.
-o or --overwrite => overwrites the contents of the file.
This allows you to copy the contents of a file inside another (the extension MUST be included).
Command:
file read <file_path>
Example:
file read C:\Users\user\Desktop\file_name.txtThis allows you to read the contents of a file (the extension MUST be included).
The followings commands are used to handle directory specific tasks.
ⓘ NOTE
The commands won't work if you don't have the authorization.
Command:
dir create <dir_name> <dir_parent_directory>
Example:
dir create new_dir C:\Users\user\DesktopThis allows you to create a new subdirectory, give a parent directory.
Command:
dir delete <dir_path> [FLAGS]
Example:
dir delete C:\Users\user\Desktop\new_dirFlags:
This command contains flags that can be included.
-s or --save-elements => saves the files inside the specified directory to its parent directory (on the example, the files are going to be saved in "C:\Users\user\Desktop").
This allows you to delete a directory and its contents (with the possibility of saving them).
WORK IN PROGRESS
The followings commands are used to show system settings.
Command:
system config [FLAGS]
Example:
system configFlags:
This command contains flags that can be included.
If no flags are given, the command will show all the following settings.
-s or --sys => Shows system related information.
-m or --mem => Shows information about your RAM.
-p or --proc => Shows processes related information (process ID, name and disk usage).
-n or --network => Shows network information (network interfaces name, total data received and data transmitted).
This allows you to show system settings.
WORK IN PROGRESS
The followings commands are miscellaneous settings.
Command:
misc weather <latitude> <longitude> [FLAGS]
Example:
misc weather 41.902782 12.496366Flags:
This command contains flags that can be included.
If no flags are given, the command will show all the following settings.
--lat => Shows the latitude.
--long => Shows the longitude.
-e or --elevation => Shows the elevation.
-t or --temperature => Shows the hourly estimate of the temperature (might not be correct).
-p or --precipitation => Shows the hourly estimate of the precipitation (might not be correct).
This allows you to show weather information.
WORK IN PROGRESS
| Crate | Version | Features |
|---|---|---|
| anyhow | 1.0.103 | |
| clap | 4.6.1 | derive |
| reqwest | 0.13.4 | blocking |
| serde | 1.0.228 | derive |
| serde_json | 1.0.150 | |
| sysinfo | 0.38.4 | |
| webbrowser | 1.2.1 |
If you'd like to support the development of MUCLI, feel free to:
-
Clone the repository
git clone https://github.com/usersolvesgits/MUCLI.git
modify the code however you like and create a pull request.
-
Open an issue (click here) explaining what you would like to be added in the future.
Every contribution, even small ones, are welcome.