Skip to content
 Swiss Army Knife for macOS
Shell Python
Branch: master
Clone or download
Pull request Compare This branch is 5 commits behind rgcr:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
completion
lib
plugins
.editorconfig
.gitignore
LICENSE.md
Readme.md
install.sh
m

Readme.md

 m-cli

💥 Swiss Army Knife for macOS !

Overview
Install
Uninstall
How To Use
All Commands
Contributing

Overview

m-cli is a macOS command line tool that lets you interact with utilities and applications entirely in Terminal. It differs from other macOS command line tools in the following ways:

  • You can easily manage administrative tasks
  • It doesn't install 3rd party tools since it doesn't have dependencies
  • Installation is easy and doesn't require intervention
  • It only uses macOS commands

Install

You can install m-cli using Homebrew, or you can manually install it.

Homebrew install

If you have Homebrew installed, run:

brew install m-cli

Manual install

If you want to manually install m-cli, run:

curl -fsSL https://raw.githubusercontent.com/rgcr/m-cli/master/install.sh | sudo sh

You can also install it to a different path, shown below:

INSTALL_DIR=$HOME/.m-cli sh <(curl -fsSL https://raw.githubusercontent.com/rgcr/m-cli/master/install.sh)

Note: You need privileges

Uninstall

To uninstall m-cli from your system, run:

m --uninstall

How To Use

Run m to display all of the commands available. The structure of m-cli commands is:

m + utility + command

A diagram of this structure is shown below:

m
|___itunes
|     |___status
|     |___play
|     |___pause
|     |
|     ...
|
|___disk 
      |___ls
      |___list
      |___fs
      ...

For example, running m itunes will display the commands available for iTunes, as shown below:

    usage: m itunes [ status | play | pause | next | prev | mute | unmute | vol up | vol down | vol #| stop | quit | help ]

    Examples:
      m itunes status       # Show status
      m itunes play         # Play track
      m itunes pause        # Pause track
      m itunes next         # Play next track
      m itunes prev         # Play previous track
      m itunes mute         # Mute iTunes
      m itunes unmute       # Unmute iTunes
      m itunes vol up       # Volume Up
      m itunes vol down     # Volume Down
      m itunes vol #        # Set volume level
      m itunes stop         # Stop track
      m itunes quit         # Quit iTunes

In this example, running m itunes play will play the current selected track in your iTunes music library.

All Commands

m-cli currently supports the following:

help
battery
bluetooth
dir
disk
display
dns
dock
finder
firewall
flightmode
gatekeeper
hostname
info
itunes
localhost
lock
ntp
printer
network
nosleep
notification
restart
safeboot
screensaver
service
shutdown
sleep
timezone
touchbar
trash
update
user
volume
vpn
wallpaper
wifi

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -m 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request 🤘

TODO:

  • Add more plugins
  • Improve the help
  • Improve the installation script

Thanks

guarinogabriel/Mac-CLI was a great source of inspiration.


MIT License © Rogelio Cedillo

You can’t perform that action at this time.