EVL Anonymization


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

Copyright © 2017–2023 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.

Synopsis

syntax/anon syntax/anon2 syntax/anon3
evl anon project
  ( new | sample ) <project_dir>
  [-v|--verbose]

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

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

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

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

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

Options

-p, --project=<project_dir>

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

--parallel[=<parallel_threads>]

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:

--help

print this help and exit

--usage

print short usage information and exit

-v, --verbose

print to stderr info/debug messages of the component

--version

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

EVL_ANON_APPEND=0

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

EVL_ANON_EOL=""

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

EVL_ANON_HEADER=1

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

EVL_ANON_SALT_PATH=".salt"

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

EVL_ANON_TOKEN_DIR=".token"

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

EVL_CONFIG_FIELD_SEPARATOR=";"

the default field separator used in config files

EVL_DEFAULT_FIELD_SEPARATOR=";"

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

EVL_DEFAULT_RECORD_SEPARATOR='\n'

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