How to do things
AI Noob vs. Pro

List biggest files
List newest files
Show subdir sizes
Search in files
Replace word in files
List dir differences
Send files in LAN

Free Open Source:

Swiss File Knife

a command line
multi function tool.

remove tabs
list dir sizes
find text
filter lines
find in path
collect text
instant ftp or
http server
file transfer
send text
patch text
patch binary
run own cmd
convert crlf
dup file find
md5 lists
fromto clip
hexdump
split files
list latest
compare dirs
save typing
trace http
echo colors
head & tail
dep. listing
find classes
speed shell
zip search
zip dir list

Depeche View
Source Research
First Steps

windows GUI
automation

command line
file encryption

free external tools,
zero install effort,
usb stick compliant:

zip and unzip
diff and merge
reformat xml
reformat source

cpp sources

log tracing
mem tracing
hexdump
using printf

articles

embedded
stat. c array
stat. java array
var. c array
var. java array
view all text
as you type
surf over text
find by click
quick copy
multi view
find nearby
fullscreen
bookmarks
find by path
expressions
location jump
skip accents
clip match
filter lines
edit text
highlight
load filter
hotkey list
receive text
send in C++
send in Java
smooth scroll
touch scroll
fly wxWidgets
fly over Qt
search Java

Supersonic Text File Search - Free Download

Create tab separated CSV text files with all filenames of a folder, including time and size information, with the free sfk index command.
  • 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[2] [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 gindex[2] [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.

you are viewing this page in mobile portrait mode with a limited layout. turn your device right, use a desktop browser or buy the sfk e-book for improved reading.

 
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).

 

the Endless Image 🍣 Sushi