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

Zip files selected by name, date or content, like including/excluding sub folders of a folder, zip only files changed since 3 days, or zip only files differing between two folders, with the free Open Source tool Swiss File Knife for Windows, Mac OS and Linux.
  • 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 sel ... +zipto outfile
sfk seluni ... +zipto outfile

zip files selected by a previous command.

UTF-8 filename encoding

the same applies as with sfk zip. however,

- if you use sfk sel ... +zipto then only file-
  name characters of your own system codepage
  can be stored, as shown by: sfk ascii

  if you use sfk seluni ... +zipto then any
  unicode filename, including asian and cyrillic,
  can be stored.

options
  -force    overwrite existing zip file.
  -asdir x  create a new folder x within the zip
            and add all files into that folder.
            cannot add to an existing folder.
  -nometa   do not add the os/code comment.
  -setexec  mask1 mask2 !mask3 ...
            mark files as executable with
            linux/mac operating systems.
            must be followed by -dir ...

see also
  sfk zip       all infos about zip creation.
  sfk ziptouni  add just UTF-8 names.
  sfk unzip     extract zip files.

examples
  sfk sel mydir +zipto out
    add all files of mydir into out.zip,
    as UTF-8, limited to characters of your
    windows system codepage.

  sfk seluni mydir +zipto out
    add all files of mydir as UTF-8 filenames,
    supporting filenames of any language, like
    cyrillic, greek or chinese. use seluni only
    with +zipto as other sfk functions will fail
    to read the listed utf-8 filenames.

  sfk sel -dir mydir -subdir !save !\tmp
   -file !.bak !old +zipto out
    add all of mydir into out.zip, except for
    sub folders having 'save' in their name or
    starting with 'tmp', and except for files
    with .bak extension or 'old' in their name.

  sfk sel -text mydir +zipto out
    collect all ascii plain text files,
    but no binaries like .obj .exe .png

  sfk fromclip +zipto out
    if you see filenames in the console,
    mark and copy them to clipboard, then run
    this command to collect them to out.zip.
    for tips how to configure clipboard support
    with CMD.EXE type: sfk help shell

  sfk fromclip +filt -tabform $col4 +zipto out
    a spreadsheed table contains 4 colums, with
    filenames in the 4th column. copy the table
    to the clipboard, then run this command
    to zip all files listed in the 4th column.

  sfk today -nosub . .bat +zipto out -asdir monday
    select all .bat files that were changed today,
    in the current dir but without sub folders,
    and add them to out.zip as a new virtual folder
    named 'monday'.

  sfk xfind mydir "/foo*bar/" -names +zipto out
    search all text files in mydir for phrases
    starting foo and ending bar. pass the list of
    found filenames to zipto, and create out.zip.

 
. 
sfk sel ... +zipto outfile
sfk seluni ... +zipto outfile

zip files selected by a previous command.

UTF-8 filename encoding

the same applies as with sfk zip. however,

- if you use sfk sel ... +zipto then only 
                         file-
  name characters of your own system 
codepage
  can be stored, as shown by: sfk ascii

  if you use sfk seluni ... +zipto 
then any
  unicode filename, including asian and 
cyrillic, can be stored.

options
  -force    overwrite existing zip file.
  -asdir x  create a new folder x within 
            the zip and add all files into
            that folder. cannot add to an
            existing folder.
  -nometa   do not add the os/code comment.
  -setexec  mask1 mask2 !mask3 ...
            mark files as executable with
            linux/mac operating systems.
            must be followed by -dir ...

see also
  sfk zip       all infos about zip 
                creation.
  sfk ziptouni  add just UTF-8 names.
  sfk unzip     extract zip files.

examples sfk sel mydir +zipto out add all files of mydir into out.zip, as UTF-8, limited to characters of your windows system codepage. sfk seluni mydir +zipto out add all files of mydir as UTF-8 filenames, supporting filenames of any language, like cyrillic, greek or chinese. use seluni only with +zipto as other sfk functions will fail to read the listed utf-8 filenames. sfk sel -dir mydir -subdir !save !\tmp -file !.bak !old +zipto out add all of mydir into out.zip, except for sub folders having 'save' in their name or starting with 'tmp', and except for files with .bak extension or 'old' in their name. sfk sel -text mydir +zipto out collect all ascii plain text files, but no binaries like .obj .exe .png sfk fromclip +zipto out if you see filenames in the console, mark and copy them to clipboard, then run this command to collect them to out.zip. for tips how to configure clipboard support with CMD.EXE type: sfk help shell sfk fromclip +filt -tabform $col4 +zipto out a spreadsheed table contains 4 colums, with filenames in the 4th column. copy the table to the clipboard, then run this command to zip all files listed in the 4th column. sfk today -nosub . .bat +zipto out -asdir monday select all .bat files that were changed today, in the current dir but without sub folders, and add them to out.zip as a new virtual folder named 'monday'. sfk xfind mydir "/foo*bar/" -names +zipto out search all text files in mydir for phrases starting foo and ending bar. pass the list of found filenames to zipto, and create out.zip. .

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 Daily Landscape image
the Daily Mobile Background