Swiss File Knife
a command line
free external tools,
- download the free Swiss File Knife Base from Sourceforge. - open the Windows CMD command line, Mac OS X Terminal or Linux shell. - OS X : type mv sfk-mac-64.exe sfk and chmod +x sfk then ./sfk - Linux: type mv sfk-linux-64.exe sfk and chmod +x sfk then ./sfk OS X and Linux syntax may differ, check the help within the tool.
sfk gindex [opts] -dir rootDir [rootDir2] ... sfk index [opts] -dir localDir ... create index file(s) containing file names with time and size info, for later realtime filename lookup, or just to archive folder meta data. creating index files for use with sfk name to create a local index of the current directory tree, use sfk index . which writes a local file zz-index.txt. Under windows, no files are written to C:\ directly, but only to a folder C:\zz-index\ to avoid storage in a special system folder C:\Users\name\AppData\Local\VirtualStore to create a global index of the current machine, use sfk gindex -dir C:\ D:\ which stores a base index file in your user folder: C:\Users\main\AppData\Local\.sfkhome\data\zz-index.txt to create an extended global index of network drives, use sfk gindex2 -dir T:\ P:\ V:\ if drives T, P, V are network drives. this will write an extended index file in a user local folder: C:\Users\main\AppData\Local\.sfkhome\data\zz-index-ext.txt in other words: sfk index writes an index locally onto the disk where you are standing, visible for all users. this is useful 1. under linux in the root dir "/" to make an index of all files available for all users 2. on external media like USB hard drives, where an index in the drive root can be used on any machine. sfk gindex is your personal global index of whatever disk contents are important for you, not for use by other users, and maintained only by yourself. creating special purpose meta data archives to create a local index of a sub folder "mydir", use sfk index mydir which writes a file zz-index-mydir.txt. this file can NOT be used with sfk name. it's just an archive of file meta informations for that sub folder. using indexes for fast name lookup sfk name word [word2] [word3] [...] will use local index files: - in the current folder - in the parent folder - and so on, until the root folder "\" - and also the global Base Index file and then lists all file names from those indexes having the given words in their name or path. sfk name2 word [word2] [word3] [...] does the same as name, but also includes the global Extended Index file. sfk index options -tofile f write output into a file f instead of the default index file. can be used then with "sfk name -from f ..." -hidden list also hidden or system files -arc include contents of .zip .jar .ear etc. archives and also .gz, .bz2, .tar, .tar.gz and .tar.bz2 as deep as possible, including nested archives. type "sfk help opt" for supported file extensions. -qarc quick list archives, lists only archive entries at the top level, skipping nested archives. aliases sfk lindex same as sfk index sfk iname same as sfk name see also sfk name lookup files in local and Base Indexes sfk name2 lookup in local, Base and Extended Index sfk help select the sfk file selection syntax. sfk help opt for further general options. sfk dir list contents of a directory. sfk home tell sfk home folder location web reference http://stahlworks.com/sfk-index examples sfk gindex C:\ create a global Base Index containing all file names from drive C: using a short syntax. sfk gindex C:\ !.tmp !.bak the same, but excluding all .tmp and .bak files. to include another drive letter in the index, the long syntax must be used: sfk gindex -dir C:\ D:\ -subdir !tmp -file !.bak create Base Index of C: and D: without any sub dirs having tmp in their name, and w/o .bak files. sfk gindex2 -dir P:\ W:\ if P: and W: are network drives, this creates an Extended Index file with their contents. sfk index . if standing in the root dir of a drive like D:\ this will write a local index file for that drive which can later be used by typing sfk name from within in any folder on that drive.
sfk is a free open-source tool, running instantly without installation efforts. no DLL's,
no registry changes - just get sfk.exe from the zip package and use it (binaries for
windows, linux and mac are included).
read more about all sfk functions here.