dm
dm is a command line counterpart to DirMaster with a unix-flavored set of features.
dm started out as an ls-like lister for CBM (Commodore Business Machine, i.e. the c64, c128, etc) container formats - that includes both physical-media image formats (like .d64, .t64 .p00) and native/archival formats (like .lnx and [1-4]! zips). dm now includes a growing number of useful sub-commands for performing various tasks on supported container formats that make sense in the command line context. dm was originally called cbmls when its only feature was listing.
With the release of v1.7.0 there are eight sub-commands; the default when no sub-command is explicitly selected is 'ls' and in that case dm will behave much like cbmls did. But you can also use 'dm ls' if you want to explicitly invoke the ls/listing feature. i.e. the following are equivalent:
dm ls -l disk.d64
dm -l disk.d64 # sub-command omitted, same output as above
dm uses some specialized syntax systems to help bridge the gap between command line text and modern file systems (usually ASCII or UTF8) and CBM file systems (PETSCII, CBM DOS) and generally make working with so-called retro computing easier. You can review those here.
All current sub-commands are:
- ls: list the contents of Commodore container formats
- view: display supported file formats directly in the terminal
- cat: concatenate data from Commodore containers to standard output
- unar: expand archive contents to a new disk image
- zip: compress a .d64 into a zip4/5 set
- unzip: uncompress zip4/5 and zip6 sets into a .d64 or .g64
- diff: compare two block-based disk images
- fgrep: search for matching bytes in block-based disk images