afpcmd(1)
okay bestie, welcome to the afpcmd(1) manual page π it's the file-transfer tool from afpfs-ng, and we're about to get into all of it β¨
β¨ NAME β¨
afpcmd - transfer files over the networking using the Apple Filing Protocol (AFP) π¦
π SYNOPSIS π
afpcmd [-r [afp url]
π DESCRIPTION π
okay so afpcmd is a command-line tool that helps you move files to and from a server using AFP π the server is usually Netatalk or Mac OS or Mac OS X, so you know it's giving legit Apple energy π
you can do all of this as a non-root user, which is lowkey the best part π«Ά you get either an interactive command line (basically a traditional FTP client vibe π») or batch retrievals.
bestie, don't mix this up with the FUSE mounting tools (mount_afp,afpfsd,afp_client) π those ones mount an entire filesystem, and afpcmd does NOT do that.
πΈ OPTIONS πΈ
-rβ turns on the recursive flag πafp urlβ uses the standard AFP URL format π
π¦ AFP version support π¦
for the deets on which AFP versions are supported, go check the afpfs-ng documentation π it has all the compatibility info you need, no cap.
π Batch mode π
batch file transfers can go one of two ways, and both are giving efficiency π
afpcmd -r [afp url to directory]
this one does a recursive transfer of all subdirectories and files locally πβ¨
afpcmd [afp url to file]
this one just transfers the one file locally π
after either of these finishes, the command exits. bye bye π
π Interactive mode π
if you pass a URL on the command line, afpcmd connects and drops you right into the volume and directory you specified π§
standard readline keystrokes are enabled π you get command line completion (hit tab π) and history (up and down arrows π). local filename completion is enabled too, so you're literally set.
Most common commands
connect <afp URL>β connect to the server, then change to the volume and directory πcdβ change directories on the server πget <filename>β retrieve a file π₯get -r <directory>β recursively retrieve the directory π³put <filename>β upload a file π€quitβ quit π
Conect/disconnect commands
disconnectβ disconnect from the current server πpasswdβ prompts for a new password without showing it on screen πuser <user>β set the user π€passwdβ change the password on the server. It does not work. π
Remote directory commands
pwdβ show the current directory on the server πmkdir <directory>β create a new directory π·rmdir <directoryβ remove a directory ποΈlsordirβ show the files in the current directory π
Remote file commands
mvorrename old_file new_fileβ rename<old file>to<new file>βοΈtouch <filename>β create a blank file π«§view <filename>β show the file ποΈchmod: <file> <mode>β change the mode of a file on the server πdelete of rm: <file>β remove the file from the server π
Status commands
statusβ show the status of the connection and details. For debugging π οΈdfβ show the disk size and available blocks πΎ
Local commands
lpwdβ show current local πlcdβ change the local directory π‘
Other commands
helpor?β show help πtestafpβ various tests for developers π§ͺ
π AFP URLs π
a typical usage of afpcmd looks like this, and it's so simple π₯°
afpcmd afp://username:password@servername/volume
the complete syntax of a URL is a little more extra π
afp://username;AUTH=authtype:password@server:port/volume/path
pro tip from the manual: if you put a password of "-", afpcmd will prompt you for the password instead πβ¨
π¬ REPORTING BUGS π¬
found a bug? slide into the afpfs-ng-devel@sf.net mailing list π that's where bug reports go.
π SEE ALSO π
afpgetstatus(1)π
That's the whole page, bestie π«Ά this is afpcmd(1) from afpfs-ng, version 0.5, dated 13 Nov 2007 π stay iconic, and go transfer some files πβ¨
π¦ where this page comes from
- alpine 3.24: afpfs-ng-doc 0.8.1-r12 Β· GPL-2.0-only
- arch rolling: afpfs-ng 0.8.2-4 Β· GPL
- epel 9: afpfs-ng 0.8.1-40.el9 Β· GPL+
- fedora 43: afpfs-ng 0.8.1-65.fc43 Β· GPL-2.0-or-later
- fedora 43: afpfs-ng 0.8.1-65.fc43 Β· GPL-2.0-or-later
- fedora 44: afpfs-ng 0.8.1-67.fc44 Β· GPL-2.0-or-later
- fedora 44: afpfs-ng 0.8.1-67.fc44 Β· GPL-2.0-or-later
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms