Besides relevant UNIX commands, I believe that a *.Z file can be uncompressed using the 7zip application. Besides that, the files are just space separated ASCII files. If you do not need the entire library you could just assess the FTP site with the individual uncompressed ASCII files and download the desired spectra.
The "spc" file extension is arbitrary and does not correspond to any given specialized format. You can look at the data structure by going directly to the file. Here is a-alunit.spc, which contains four columns: "Ammonioalunite", "NMNH145596", "W1R1Bd", "ABS REF" with their associated numeric values. These files can be manually downloaded or accessed using various functions in MATLAB (eg., ftp). The function to read delimited ASCII files in MATLAB is tdfread.
EDIT: as with many USGS databases, this one is very confusing with apparent redundancy containing different data. I stumbled across a different ftp location for splib06 that contains what appears to be the correct spectral scales, containing: "wavelength", "reflectance", "standard deviation" and are *.asc files.
Accessing the "a-alunit.spc" file directly, via the commandline, in MATLAB would look something like this:
usgs = ftp('ftpext.cr.usgs.gov')