EVL Anonymization

Products, services and company names referenced in this document may be either trademarks or registered trademarks of their respective owners.

Copyright © 2017–2021 EVL Tool, s.r.o.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts.

evl anon command

(since EVL 1.0)

To help to generate, check and build all the configuration files, there is ‘evl anon’ command line utility.

evl anon project new <project_dir>

creates new project folder <project_dir> with default folder structure and files inside.

evl anon project sample <project_dir>

creates new project folder <project_dir> with sample data and configs.

evl anon source new <source_name>

creates new source <source_name> in current project directory (or in <project_dir>). With ‘--guess-from-csv’ option, it guess data types based on source csv files.

evl anon salt regenerate

generate new salt, or regenerate existing one, for given <project_dir>. Path to the salt is taken from ‘EVL_ANON_SALT_PATH’ variable from ‘project.sh’ file. When no <project_dir> is specified, suppose current directory as project’s one.

evl anon check <config_file>

check if <config_file> contains valid combination of metadata.

evl anon build <config_file>

generates anonymization jobs based on <config_file> and also a Workflow with all these jobs.


syntax/anon syntax/anon2 syntax/anon3
evl anon project
  ( new | sample ) <project_dir>

evl anon source new
  [-p|--project <project_dir>]
  [-g|--guess-from-csv <source_dir>]

evl anon salt regenerate
  [-p|--project <project_dir>]

evl anon check
  [-p|--project <project_dir>]

evl anon build
  [-p|--project <project_dir>]
  [--parallel [<parallel_threads>]]

evl anon
  ( --help | --usage | --version )


-p, --project=<project_dir>

if the current directory is not a project’s one, full or relative path can be specified by <project_dir>


generate workflow with jobs parallelized as much as possible. To limit this parallelization to, <parallel_threads> can be specified, which is the value how many jobs can run in parallel.

-g, --guess-from-csv=<source_dir>

preserve mode (i.e. permission), timestamps and ownership

Standard options:


print this help and exit


print short usage information and exit

-v, --verbose

print to stderr info/debug messages of the component


print version and exit

Environment Variables

The list of all EVL Data Anonymization variables with their default values. One can change these values in his ‘~/.evlrc’ file or in the project in ‘project.sh’.


whether append or overwrite target files/tables. Possible values are ‘0’ or ‘1’.


whether Linux (‘\n’), Windows (‘\r\n’) or old Mac (‘\r’) end-of-lines. Possible values are "dos", "mac", or leave empty for Linux EOL.


whether or how many lines has file header. Zero means no header.


path to a salt. It is strongly recommended to have this file with 600 permissions


token tables (files) directory. It is strongly recommended to have this folder secret, so with 700 permissions.


the default field separator used in config files


the default field separator for CSV files. This character might be any one of the first 128 ascii ones.


the default record separator for CSV files. This character might be any one of the first 128 ascii ones. By default a Linux newline is used. To use Windows end of line (i.e. ‘\r\n’), use ‘EVL_ANON_EOL’ variable