{"id":13587956,"url":"https://github.com/morgant/tools-osx","last_synced_at":"2025-04-12T21:19:15.744Z","repository":{"id":53489806,"uuid":"1020784","full_name":"morgant/tools-osx","owner":"morgant","description":"A small collection of command line tools for Mac OS X, incl.: clipcat, dict, eject, launch, ql, swuser, trash \u0026 with.","archived":false,"fork":false,"pushed_at":"2024-05-26T20:43:21.000Z","size":116,"stargazers_count":721,"open_issues_count":3,"forks_count":46,"subscribers_count":32,"default_branch":"master","last_synced_at":"2025-04-12T19:46:42.596Z","etag":null,"topics":["command-line","eject","mac","macos","macosx","osx","trash"],"latest_commit_sha":null,"homepage":"http://www.makkintosshu.com/development#tools-osx","language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/morgant.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2010-10-24T23:14:06.000Z","updated_at":"2025-04-08T04:11:48.000Z","dependencies_parsed_at":"2022-08-18T18:11:23.236Z","dependency_job_id":"075def20-29cd-4bae-b2d8-aaeca50570c5","html_url":"https://github.com/morgant/tools-osx","commit_stats":null,"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/morgant%2Ftools-osx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/morgant%2Ftools-osx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/morgant%2Ftools-osx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/morgant%2Ftools-osx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/morgant","download_url":"https://codeload.github.com/morgant/tools-osx/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248631923,"owners_count":21136590,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["command-line","eject","mac","macos","macosx","osx","trash"],"created_at":"2024-08-01T15:06:26.517Z","updated_at":"2025-04-12T21:19:15.724Z","avatar_url":"https://github.com/morgant.png","language":"Shell","readme":"tools-osx README\n================\n\nby Morgan Aldridge \u003cmorgant@makkintosshu.com\u003e\n\n[![tools-osx on OpenHub](https://www.openhub.net/p/tools-osx/widgets/project_thin_badge.gif)](https://www.openhub.net/p/tools-osx) [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=DBY3R8ARLDELE\u0026currency_code=USD\u0026source=url)\n\nOVERVIEW\n--------\n\nA small collection of Mac OS X command line tools that I’ve developed over the years. Similar to the NextStep and Mac OS X commands `open`, `pbcopy`, and `pbpaste`, most of these tools are `bash` scripts created as an exercise to hone my bash-fu. There are also a number of Perl and Ruby scripts submitted by others.\n\nTOOLS\n-----\n\n### clipcat\n\n`clipcat` prints and concatenates Mac OS text clippings. Submitted by Daphne Preston-Kendal.\n\n### dict\n\n`dict` performs a look-up in the Mac OS X dictionary. Note: unlike the other scripts provided, this one requires that you have [MacRuby](http://macruby.org/) installed. Submitted by Daphne Preston-Kendal.\n\n### eject\n\n`eject` ejects a volume or network volume and all other volumes on the same local device. A shorter, simpler, smarter wrapper of `diskutil`’s various eject/unmount options and allows specifying either a full path in `/Volumes` or just the volume name.\n\n### launch\n\n`launch` searches for and launches applications. It's a slightly smarter wrapper for `open -a` with wildcard matching via Spotlight, if available, or `find`.\n\n### ql\n\n`ql` opens files with the Mac OS X [Quick Look](https://support.apple.com/en-ca/guide/mac-help/mh14119/mac) feature.\n\n### swuser\n\n`swuser` switches users using the Mac OS X [Fast User Switching](https://support.apple.com/en-ca/guide/mac-help/mchlp2439/mac) feature. You can either switch out to the login window or to another user. Note: unfortunately, this is not currently compatible with `screen`.\n\n### trash\n\n`trash` allows trashing of files instead of tempting fate with `rm`. Correctly handles trashing files on other volumes, uses the same filename renaming scheme as Finder for duplicate file names, can list trash contents w/disk usage summary, and empty trash (including securely) w/confirmation. Does not require Finder to be running.\n\n### with\n\n`with` sets the application with which specified documents will be opened. It can even change and open in one fell swoop. Submitted by Daphne Preston-Kendal.\n\nINSTALLATION\n------------\n\n### Installing from Source\n\nInstalling all tools:\n\n1. Clone this repository or download and extract the tools.\n2. Run `rake`.\n3. Run `rake install`. (If you don't have write permission on `/usr/local/bin`, you'll need to prepend `sudo`.)\n\nInstalling one or more specific tools:\n\n1. Clone this repository or download and extract the tools.\n2. Run `rake`\n3. Run `rake 'install[ql,trash]'`, specifying individual tools in a comma separated list between the square brackets. (If you don't have write permission on `/usr/local/bin`, you'll need to prepend `sudo`.)\n\n### Installing Using a `zsh` Plugin Manager\n\n_Note: You cannot install `clipcat`, `dict`, or `with` using this method._\n\nmacOS 10.15 Catalina and newer now use `zsh` as the default shell. If you're using a `zsh` plugin manager, you can install individual tools as follows and they'll be automatically downloaded, installed, and kept up-to-date:\n\n* Using [zinit](https://github.com/zdharma/zinit): Add the following to your `~/.zshrc` file for each tool you wish to install, `trash`, for example:\n\n```shell\nzinit wait'1' lucid light-mode as\"program\" pick\"src/trash\" for morgant/tools-osx\n```\n\nOTHER TOOLS\n-----------\n\nLooking for other Mac OS X-specific command line tools to complement these? Check out the following:\n\n* [`appswitch`](http://sabi.net/nriley/software/#appswitch) and [`launch`](http://sabi.net/nriley/software/#launch) by Nicholas Riley\n* [`asprint`](http://hasseg.org/asprint/), [`icalBuddy`](http://hasseg.org/icalBuddy/), [`setWeblocThumb`](http://hasseg.org/setWeblocThumb/), and [`trash`](http://hasseg.org/trash/) by Ali Rantakari\n* [`contacts`](https://web.archive.org/web/20160319061131/http://www.gnufoo.org/contacts/) by Shane Celis\n* [`dark-mode`](https://github.com/sindresorhus/dark-mode) by Sindre Sorhus\n* [`dockutil`](https://github.com/kcrawford/dockutil) by Kyle Crawford\n* [`duti`](https://github.com/moretension/duti) by Andrew Mortensen\n* [`get-location`](https://github.com/lindes/get-location) by David Lindes\n* [`iloc`](https://derailer.org/iloc/) by Nate Weaver\n* [`imsg`](https://github.com/chrisfsampaio/imsg) by Christian Sampaio\n* [`ithief`](https://web.archive.org/web/20120418093332/http://cachivaches.chauca.net/ithief/) by Israel Chauca Fuentes\n* [osxiconutils (`geticon`, `icns2pict`, `pict2icns`, `seticon`)](http://sveinbjorn.org/osxiconutils) \u0026 [osxutils (`cpath`, `getfcomment`, `geticon`, `google`, `hfsdata`, `lsmac`, `mkalias`, `rcmac`, `setfcomment`, `setfctypes`, `setfflags`, `seticon`, `setlabel`, `setsuffix`, `setvolume`, `trash`, `wiki`, `wsupdate`)](https://web.archive.org/web/20100831125502/http://osxutils.sourceforge.net/) by Sveinbjorn Thordarson\n* [`pngpaste`](https://github.com/jcsalterego/pngpaste) by Jerry Chen\n* [`rem`](https://github.com/kykim/rem) by Kevin Y. Kim\n* [`service`](https://github.com/dpk/service) by Daphne Preston-Kendal\n* [`stronghold`](https://github.com/alichtman/stronghold) and [`shallow-backup`](https://github.com/alichtman/shallow-backup) by Aaron Lichtman\n* [`tag`](https://github.com/jdberry/tag) by James Berry\n* [`trash`](http://www.dribin.org/dave/osx-trash/) by Dave Dribin\n* [`trash`](https://github.com/sindresorhus/trash) by Sindre Sorhus\n* [`webkit2png`](http://www.paulhammond.org/webkit2png/) by Paul Hammond\n\nSPECIAL THANKS\n--------------\n\nSpecial thanks to: [Daphne Preston-Kendal](http://dpk.io/) for all her submissions and collaboration; [Matt Brictson](https://mattbrictson.com) for his initial relative path bug fix in `trash`; huyz for the improved determination of Finder’s PID to prevent possible false-positives in `trash`.\n","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=DBY3R8ARLDELE\u0026currency_code=USD\u0026source=url"],"categories":["Shell"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmorgant%2Ftools-osx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmorgant%2Ftools-osx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmorgant%2Ftools-osx/lists"}