GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com โ€” GitHub - Drive-for-Java/MyCMD: A full custom CMD shell written in Java with its own installer.

BranchesTags
Open more actions menu

Latest commit

 

History

340 Commits
340 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
.idea
.idea
 
 
.vscode
.vscode
 
 
icons
icons
 
 
installer
installer
 
 
launcher
launcher
 
 
lib
lib
 
 
scripts
scripts
 
 
src/main
src/main
 
 
website-directory
website-directory
 
 
.gitignore
.gitignore
 
 
CODE_OF_CONDUCT.md
CODE_OF_CONDUCT.md
 
 
COMMANDS.md
COMMANDS.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
CheckList.md
CheckList.md
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
mvnw
mvnw
 
 
mvnw.cmd
mvnw.cmd
 
 
pom.xml
pom.xml
 
 

Repository files navigation

๐Ÿ’ป MyCMD โ€“ A Custom Command Prompt in Java

Build Java License Platform

MyCMD is a fully custom command prompt implemented in Java.
It mimics the behavior of Windows cmd.exe with commands like dir, cd, echo, mkdir, del, and more โ€” plus it has its own installer.

Meet our CMD-builders


๐Ÿ“š Documentation & Command Reference

For a complete guide detailing the syntax, arguments, and options for every command, please see the full COMMANDS.md file.


MyCMD/
 โ”ฃ README.md                  # Project description, badges, usage
 โ”ฃ pom.xml                    # Maven build config
 โ”ฃ src/
 โ”ƒ โ”— main/
 โ”ƒ    โ”— java/
 โ”ƒ       โ”— com/
 โ”ƒ          โ”— mycmd/
 โ”ƒ             โ”ฃ App.java          # Main entry point (starts the shell)
 โ”ƒ             โ”ฃ ShellContext.java # Stores current working dir, state
 โ”ƒ             โ”ฃ Command.java      # Interface for all commands
 โ”ƒ             โ”— commands/         # All custom command classes
 โ”ƒ                โ”ฃ DirCommand.java
 โ”ƒ                โ”ฃ CdCommand.java
 โ”ƒ                โ”ฃ EchoCommand.java
 โ”ƒ                โ”ฃ MkdirCommand.java
 โ”ƒ                โ”ฃ RmdirCommand.java
 โ”ƒ                โ”ฃ CopyCommand.java
 โ”ƒ                โ”ฃ DelCommand.java
 โ”ƒ                โ”ฃ TypeCommand.java
 โ”ƒ                โ”ฃ ClsCommand.java
 โ”ƒ                โ”ฃ HelpCommand.java
 โ”ƒ                โ”ฃ ExitCommand.java
 โ”ƒ                โ”— VersionCommand.java
 โ”ฃ icons/
 โ”ƒ โ”— mycmd.ico              # App/installer icon
 โ”ฃ scripts/
 โ”ƒ โ”ฃ build-windows.bat      # Build + package EXE + run installer script
 โ”ƒ โ”— build-linux.sh         # Build + package for Linux (deb/rpm)
 โ”ฃ installer/
 โ”ƒ โ”— mycmd.iss              # Inno Setup script for Windows installer
 โ”— dist/                    # Output folder (auto-created after build)
    โ”ฃ bin/
    โ”ƒ โ”— MyCMD.exe           # Wrapped executable (via Launch4j or jpackage)
    โ”ฃ lib/
    โ”ƒ โ”— dependencies.jar    # Extra JAR dependencies (if any)
    โ”— setup.exe             # Generated installer (from Inno Setup)

๐Ÿš€ Key Features โœจ

Feature Description
โœ… Windows-like Commands Supports dir, cd, mkdir, del, copy, type, cls
โšก Extensible Easily add new commands via Java classes
๐Ÿ–ฅ๏ธ Executable Packaging Packaged into .exe using Launch4j
๐Ÿ› ๏ธ Installer Wizard Simple setup using Inno Setup
๐ŸŒ Cross-Platform Works on Windows and Linux (via jpackage)

๐Ÿ“ฆ Requirements

To build MyCMD you need:

  • Java JDK 17+
  • Apache Maven
  • Launch4j (for .exe wrapping)
  • Inno Setup (for Windows installer)

(Linux users can use jpackage instead of Launch4j/Inno Setup.)


๐Ÿ› ๏ธ Build Instructions

Building MyCMD is simple and automated for both Windows ๐ŸชŸ and Linux ๐Ÿง platforms

๐Ÿ”น Windows

scripts\build-windows.bat

๐Ÿ“ฆ This script will automatically:

1.๐Ÿงฉ Build the JAR using Apache Maven

2.โš™๏ธ Wrap it into an .exe using Launch4j

3.๐Ÿช„ Generate a setup.exe installer via Inno Setup

Final Output

dist/
 โ”ฃ bin/MyCMD.exe
 โ”ฃ lib/dependencies.jar
 โ”— setup.exe

Linux

chmod +x scripts/build-linux.sh
./scripts/build-linux.sh

This will build a .deb or .rpm package using jpackage.

๐Ÿ–ฅ๏ธ Usage

After installation, run:

MyCMD

You can now use commands like:

> dir
> cd ..
> mkdir test
> echo Hello World!
> type file.txt
> del file.txt
> help
> exit

๐Ÿงฉ Extending MyCMD

Note

There are many commands left like ls and Ping Command

๐Ÿค Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create! ๐Ÿ’ช

We welcome all kinds of improvements โ€” from fixing bugs ๐Ÿ› to adding new commands โš™๏ธ.

๐Ÿชœ Steps to Contribute

  1. ๐Ÿด Fork the repository
  2. ๐ŸŒฟ Create a new branch
    git checkout -b feature/your-feature-name
    

๐Ÿ“œ License

๐Ÿงพ Apache License 2.0
This project is open-source and available for anyone to use, modify, and share under the terms of the Apache License.

โœจ Attribution is appreciated but not required.
๐Ÿ“Ž For complete terms, check the LICENSE file.

About

A full custom CMD shell written in Java with its own installer.

Topics

activedrive-for-javahacktoberfesthacktoberfest-acceptedhacktoberfest2025java

Resources

Readme
MIT license

Code of conduct

Code of conduct

Contributing

Contributing
Activity
Custom properties

Stars

236 stars

Watchers

5 watching

Forks

23 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 โ€” GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800ร—600. No cookies required.