HFSUTILS(1)

πŸ’– HFSUTILS πŸ’–

okay so bestie, welcome to hfsutils β€” the manual page (section 1, General Commands Manual, iykyk) for a whole lil family of tools for reading and writing Macintosh HFS volumes. it's giving vintage Apple energy and honestly? we're obsessed.


✨ NAME ✨

hfsutils β€” tools for reading and writing Macintosh HFS volumes πŸ“


πŸŽ€ SYNOPSIS πŸŽ€

so there's not one program, there's a WHOLE SQUAD. here they all are:

hattrib - change HFS file or directory attributes
hcd - change working HFS directory
hcopy - copy files from or to an HFS volume
hdel - delete both forks of an HFS file
hdir - display an HFS directory in long format
hformat - create a new HFS filesystem and make it current
hls - list files in an HFS directory
hmkdir - create a new HFS directory
hmount - introduce a new HFS volume and make it current
hpwd - print the full path to the current HFS working directory
hrename - rename or move an HFS file or directory
hrmdir - remove an empty HFS directory
humount - remove an HFS volume from the list of known volumes
hvol - display or change the current HFS volume
hfssh - Tcl interpreter with HFS extensions
hfs - shell for manipulating HFS volumes
xhfs - graphical interface for manipulating HFS volumes

🌸 DESCRIPTION 🌸

hfsutils is a whole collection of tools and programs for accessing Macintosh HFS-formatted volumes. every single program above has its own man page, so go read that one for the full tea β˜• β€” this page is just the intro.


πŸ¦‹ NOTES πŸ¦‹

okay this is the part where you actually pay attention, bestie, because there's lore.

these utilities can manipulate HFS volumes on nearly any medium. you start by handing a UNIX path to hmount or hformat, and that path tells them where the volume lives. that path can be a block device β€” like a floppy disk, CD-ROM, SCSI disk, or some other device β€” or it can be a regular file holding an image of any of the above. either one, no cap. πŸ’…

the medium you point that UNIX path at may or may not have an Apple partition map on it. and if it is partitioned? plot twist: it's possible for more than one HFS volume to be hanging out on the same medium. in that case you also gotta give a partition number to pick which one you want. that number refers to the nth ordinal HFS partition on the volume β€” and no, the other non-HFS partitions don't count, they get ignored entirely. πŸ™ˆ

and listen: partition number 0 means the entire medium, disregarding the partition map completely, if there even is one.

now, HFS pathnames. they're made of components separated by colons, and this is where they get weird compared to UNIX:

  • an HFS path that begins with a colon β€” like :Foo:Bar β€” is a relative path.
  • an HFS path that doesn't begin with a colon β€” like Foo:Bar β€” is an absolute path.
🚨 the sole exception to that rule: a path that contains no colons at all is assumed to be relative.

absolute pathnames always start with the name of the volume itself. and any time you see two or more consecutive colons in a path, resolving it ascends up into the parent directories. climb, queen 🧚

most of the command-line programs support HFS filename globbing. here's every form that's supported:

  • * β€” matches zero or more characters.
  • ? β€” matches exactly one character.
  • [...] β€” matches any single character enclosed within the brackets. you can specify a character range with a hyphen (-). heads up: matches are not case sensitive.
  • {...,...} β€” expands into the Cartesian product of each specified substring.
  • \ β€” causes the following character to be matched literally.
⚠️ okay important: globbing is done by each HFS command itself, NOT by the UNIX shell β€” the shell knows literally nothing about HFS volumes. so always protect your pathnames from the shell with proper quoting. typically the move is to wrap HFS pathnames containing glob characters in single quotes ('). do it. trust. πŸ™

time stamps on HFS volumes are interpreted as being relative to the current time zone. which means modification dates on HFS volumes that were written in another time zone may look like they're off by some number of hours. it's not a bug bestie it's just timezone brain 😭

also: hardware limitations stop some systems from reading or writing native Macintosh 800K floppy disks. on those systems, only high-density 1440K disks can be used. brutal but true πŸ’€

and finally β€” the obsolete MFS volume format is not supported by this software. periodt.


πŸ‘‘ SEE ALSO πŸ‘‘

hattrib(1), hcd(1), hcopy(1), hdel(1), hdir(1), hformat(1), hls(1), hmkdir(1), hmount(1), hpwd(1), hrename(1), hrmdir(1), hvol(1), hfs(1), xhfs(1)


🌈 AUTHOR 🌈

Robert Leslie <rob@mars.org> β€” the icon, the moment, the blueprint 🫢


and that's the whole page, bestie!! this one's from the HFSUTILS manual, dated 08-Nov-1997 β€” yes, 1997, she's vintage, she's a classic, and she still ate. πŸ’œβœ¨