koopa run

run autopad-zeros directory

Autopad zeros in numbered file names.

run clone source target

Clone directory contents using rsync.

run convert-svg-to-png files...

Convert SVG files to PNG using macOS sips.

run convert-utf8-nfd-to-nfc paths...

Convert UTF-8 NFD filenames to NFC.

run create-dmg source-folder

Create a DMG disk image from a source folder.

run delete-empty-dirs dirs...

Delete empty directories.

run delete-named-subdirs directory name

Delete subdirectories matching a name.

run detab files...

Convert tabs to spaces.

run df2

Wrapper around df with improved defaults.

run dns domain

Print DNS records and nameserver provider for a domain.

  • --route53

run dot-clean directory

Remove dot files and macOS cruft.

run download url [output]

Download a file from a URL.

run download-cran-latest packages...

Download latest CRAN package source.

run download-github-latest repo [--pattern glob]

Download latest GitHub release asset.

  • --pattern

run entab files...

Convert spaces to tabs.

run eol-lf files...

Convert line endings to LF.

run extract files...

Extract archives.

run extract-all files...

Extract all archives.

run file-count directory

Count files in a directory.

run find-and-move-in-sequence

Find and move files in sequence (not yet implemented).

run find-and-replace pattern replacement files...

Find and replace text in files.

  • --fixed

  • --regex

run find-empty-dirs dirs...

Find empty directories.

run find-files-without-line-ending directory

Find files missing a final newline.

run find-large-dirs directory

Find large directories.

run find-large-files directory

Find large files.

run ifactive

Show active network interfaces (macOS only).

run ip-address [--local|--public]

Print IP address.

  • --local

  • --public

run ip-info

Print public IP information.

run line-count files...

Count lines in files.

run merge-pdf files...

Merge PDF files.

run move-files-in-batch --num N --source-dir DIR --target-dir DIR

Move a batch of files between directories.

  • --num

  • --source-dir

  • --target-dir

run move-files-up-1-level [directory]

Move files up one directory level.

run move-into-dated-dirs-by-filename files...

Move files into dated directories based on filename.

run move-into-dated-dirs-by-timestamp files...

Move files into dated directories based on timestamp.

run nfiletypes directory

Count file types in a directory.

run rename-camel-case paths...

Rename files to camelCase.

run rename-from-csv csv-file

Rename files according to a CSV mapping.

run rename-kebab-case paths...

Rename files to kebab-case.

run rename-lowercase [--recursive] paths...

Rename files to lowercase.

  • --recursive

run rename-snake-case paths...

Rename files to snake_case.

run reset-terminal

Reset a terminal left in a bad state by a dead SSH/tmux session.

run rg-sort pattern

Run ripgrep with results sorted by path.

run rg-unique pattern

Run ripgrep and return unique matches.

run sort-lines files...

Sort lines in files.

run spotlight query [directory]

Search using macOS Spotlight (mdfind).

run tar-multiple-dirs dirs... [--delete|--no-delete]

Create tar archives for multiple directories.

  • --delete

  • --no-delete

run update-today-bucket

Repoint the dated ‘today bucket’ symlink at today’s directory.