pspp-convert: Add --labels and --recode options.
[pspp] / doc / pspp-convert.texi
1 @c PSPP - a program for statistical analysis.
2 @c Copyright (C) 2017 Free Software Foundation, Inc.
3 @c Permission is granted to copy, distribute and/or modify this document
4 @c under the terms of the GNU Free Documentation License, Version 1.3
5 @c or any later version published by the Free Software Foundation;
6 @c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
7 @c A copy of the license is included in the section entitled "GNU
8 @c Free Documentation License".
9 @c
10 @node Invoking pspp-convert
11 @chapter Invoking @command{pspp-convert}
12 @cindex Invocation
13 @cindex @command{pspp-convert}
14
15 @command{pspp-convert} is a command-line utility accompanying
16 @pspp{}. It reads an SPSS or SPSS/PC+ system file or SPSS portable
17 file or encrypted SPSS syntax file @var{input} and
18 writes a copy of it to another @var{output} in a different format.
19 Synopsis:
20
21 @display
22 @t{pspp-convert} [@var{options}] @var{input} @var{output}
23
24 @t{pspp-convert -@w{-}help}
25
26 @t{pspp-convert -@w{-}version}
27 @end display
28
29 The format of @var{input} is automatically detected, when possible.
30 The character encoding of old SPSS system files cannot always be
31 guessed correctly, and SPSS/PC+ system files do not include any
32 indication of their encoding.  Use @code{-e @var{encoding}} to specify
33 the encoding in this case.
34
35 By default, the intended format for @var{output} is inferred based on its
36 extension:
37
38 @table @code
39 @item csv
40 @itemx txt
41 Comma-separated value.  Each value is formatted according to its
42 variable's print format.  The first line in the file contains variable
43 names.
44
45 @item sav
46 @item sys
47 SPSS system file.
48
49 @item por
50 SPSS portable file.
51
52 @item sps
53 SPSS syntax file.  (Only encrypted syntax files may be converted to
54 this format.)
55 @end table
56
57 @command{pspp-convert} can convert most input formats to most output
58 formats.  Encrypted SPSS file formats are exceptions: if the input
59 file is in an encrypted format, then the output file will be the same
60 format (decrypted).  To decrypt such a file, specify the encrypted
61 file as @var{input}.  The output will be the equivalent plaintext
62 file.  Options for the output format are ignored in this case.
63
64 The password for encrypted files can be specified a few different
65 ways.  If the password is known, use the @option{-p} option
66 (documented below) or allow @command{pspp-convert} to prompt for it.
67 If the password is unknown, use the @option{-a} and @option{-l}
68 options to specify how to search for it, or @option{--password-list}
69 to specify a file of passwords to try.
70
71 Use @code{-O format=@var{format}} to override the inferred format or to
72 specify the format for unrecognized extensions.
73
74 @command{pspp-convert} accepts the following options:
75
76 @table @option
77 @item @option{-O format=@var{format}}
78 Overrides the format inferred from the output file's extension.  Use
79 @option{--help} to list the available formats.  @xref{Invoking PSPP},
80 for details of the available output formats.
81
82 @item @option{-O @var{option}=@var{value}}
83 Sets an option for the output file format.  @xref{Invoking PSPP}, for
84 details of the available output options.
85
86 @item -c @var{maxcases}
87 @itemx --cases=@var{maxcases}
88 By default, all cases are copied from @var{input} to @var{output}.
89 Specifying this option to limit the number of cases written to
90 @var{output} to @var{maxcases}.
91
92 @item -e @var{charset}
93 @itemx --encoding=@var{charset}
94 Overrides the encoding in which character strings in @var{input} are
95 interpreted.  This option is necessary because old SPSS system files,
96 and SPSS/PC+ system files, do not self-identify their encoding.
97
98 @item --labels
99 By default, @command{pspp-convert} writes variables' values to CVS
100 output files.  With this option, @command{pspp-convert} writes value
101 labels.
102
103 @item --recode
104 By default, @command{pspp-convert} writes user-missing values to CVS
105 output files as their regular values.  With this option,
106 @command{pspp-convert} recodes them to system-missing values (which
107 are written as a single space).
108
109 @item -p @var{password}
110 @item --password=@var{password}
111 Specifies the password to use to decrypt an encrypted SPSS system file
112 or syntax file.  If this option is not specified,
113 @command{pspp-convert} will prompt interactively for the password as
114 necessary.
115
116 Be aware that command-line options, including passwords, may be
117 visible to other users on multiuser systems.
118
119 When used with @option{-a} (or @option{--password-alphabet}) and
120 @option{-l} (or @option{--password-length}), this option specifies the
121 starting point for the search.  This can be used to restart a search
122 that was interrupted.
123
124 @item -a @var{alphabet}
125 @item --password-alphabet=@var{alphabet}
126 Specifies the alphabet of symbols over which to search for an
127 encrypted file's password.  @var{alphabet} may include individual
128 characters and ranges delimited by @samp{-}.  For example, @option{-a
129 a-z} searches lowercase letters, @option{-a A-Z0-9} searches uppercase
130 letters and digits, and @option{-a ' -~'} searches all printable ASCII
131 characters.
132
133 @item -l @var{max-length}
134 @item --password-length=@var{max-length}
135 Specifies the maximum length of the passwords to try.
136
137 @item --password-list=@var{file}
138 Specifies a file to read containing a list of passwords to try, one
139 per line.  If @var{file} is @file{-}, reads from stdin.
140
141 @item -h
142 @itemx --help
143 Prints a usage message on stdout and exits.
144
145 @item -v
146 @itemx --version
147 Prints version information on stdout and exits.
148 @end table