SCLI is a simple command line application to open paths with just one command no matter how nested it is.
SCLI is Windows only at least for now...
-
Download scli from here.
-
Add the path to the downloaded binary in environment variables and you are good to go.
-
Open cmd or powershell and type
scli helpto get the list of commands.
[ NOTE ] To build from source you will need C++17 or above.
- Clone the repository and navigate into the directory.
git clone https://github.com/NexusWasLost/scli.git && cd scli- Build using
g++. This will generate the binary !
g++ ./src/* -o scli- Add the path to the downloaded binary in environment variables and you are good to go.
- Open cmd or powershell and type
scli helpto get the list of commands.
scli uses terminal arguments using argc and argv[] to get commands. It then parses them and then stores them in a simple text file (.txt).
scli stores keys and path in a key - value pair structure and read from the that file itself. Example : dwn="C://users/username/donwloads". And then open using scli open dwn. (The key dwn must match what is stored in the .txt file !).
Strict parsing rules have been applied so that any tampering or misalignment with the structure will cause scli to throw error.
AS LONG AS ONE STICKS TO COMMANDS ALL WILL BE GOOD
Each key value - pair must be unique ! If duplicates are entered manually by editing the .txt file then scli will throw error !
While opening, scli checks if a stored path associated with the key is valid or not, and if valid it will open it.
SCLI CANNOT OPEN FILES THAT REQUIRE ADMINISTRATOR PREMISSION
(I am using std::system() for opening directories and files, I tried using ShellExecuteA() with runas but still it prompts for permission and upon hitting yes the application just remains in the task manager and not open.)
I found myself jumping back and forth between folders a lot and that was the perfect excuse to make my first ever C++ application and its cool...😁
- SCLI was compiled using C++17.
- AI tools used - ChatGPT and Microsoft Copilot.
- Its currently Windows Only but I think only changing the system call will allow to make versions for Linux and MacOS too.
- I am open to improvements, suggestions and Feedback !