1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164
|
.\" Man page generated from reStructuredText.
.
.
.nr rst2man-indent-level 0
.
.de1 rstReportMargin
\\$1 \\n[an-margin]
level \\n[rst2man-indent-level]
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
-
\\n[rst2man-indent0]
\\n[rst2man-indent1]
\\n[rst2man-indent2]
..
.de1 INDENT
.\" .rstReportMargin pre:
. RS \\$1
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
. nr rst2man-indent-level +1
.\" .rstReportMargin post:
..
.de UNINDENT
. RE
.\" indent \\n[an-margin]
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
.nr rst2man-indent-level -1
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "CSVGREP" "1" "Aug 16, 2024" "2.2.0" "csvkit"
.SH NAME
csvgrep \- csvgrep Documentation
.SH DESCRIPTION
.sp
Filter tabular data to only those rows where certain columns contain a given value or match a regular expression:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
usage: csvgrep [\-h] [\-d DELIMITER] [\-t] [\-q QUOTECHAR] [\-u {0,1,2,3}] [\-b]
[\-p ESCAPECHAR] [\-z FIELD_SIZE_LIMIT] [\-e ENCODING] [\-S] [\-H]
[\-K SKIP_LINES] [\-v] [\-l] [\-\-zero] [\-V] [\-n] [\-c COLUMNS]
[\-m PATTERN] [\-r REGEX] [\-f MATCHFILE] [\-i] [\-a]
[FILE]
Search CSV files. Like the Unix \(dqgrep\(dq command, but for tabular data.
positional arguments:
FILE The CSV file to operate on. If omitted, will accept
input as piped data via STDIN.
optional arguments:
\-h, \-\-help show this help message and exit
\-n, \-\-names Display column names and indices from the input CSV
and exit.
\-c COLUMNS, \-\-columns COLUMNS
A comma\-separated list of column indices, names or
ranges to be searched, e.g. \(dq1,id,3\-5\(dq.
\-m PATTERN, \-\-match PATTERN
A string to search for.
\-r REGEX, \-\-regex REGEX
A regular expression to match.
\-f MATCHFILE, \-\-file MATCHFILE
A path to a file. For each row, if any line in the
file (stripped of line separators) is an exact match
of the cell value, the row matches.
\-i, \-\-invert\-match Select non\-matching rows, instead of matching rows.
\-a, \-\-any\-match Select rows in which any column matches, instead of
all columns.
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
See also: \fI\%Arguments common to all tools\fP\&.
.sp
NOTE: Even though \(aq\-m\(aq, \(aq\-r\(aq, and \(aq\-f\(aq are listed as \(dqoptional\(dq arguments, you must specify one of them.
.SH EXAMPLES
.sp
Search for the row relating to Illinois:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
csvgrep \-c 1 \-m ILLINOIS examples/realdata/FY09_EDU_Recipients_by_State.csv
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
Search for rows relating to states with names beginning with the letter \(dqI\(dq:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
csvgrep \-c 1 \-r \(dq^I\(dq examples/realdata/FY09_EDU_Recipients_by_State.csv
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
Search for rows that do not contain an empty state cell:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
csvgrep \-c 1 \-r \(dq^$\(dq \-i examples/realdata/FY09_EDU_Recipients_by_State.csv
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
Perform a case\-insensitive search:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
csvgrep \-c 1 \-r \(dq(?i)illinois\(dq examples/realdata/FY09_EDU_Recipients_by_State.csv
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
Remove comment rows:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
printf \(dqa,b\en1,2\en# a comment\en3,4\(dq | csvgrep \-\-invert\-match \-c1 \-r \(aq^#\(aq
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
Get the indices of the columns that contain matching text (\fB\ex1e\fP is the \fI\%Record Separator (RS) character\fP):
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
csvgrep \-m 22 \-a \-c 1\- examples/realdata/FY09_EDU_Recipients_by_State.csv | csvformat \-M $\(aq\ex1e\(aq | xargs \-d $\(aq\ex1e\(aq \-n1 sh \-c \(aqecho $0 | csvcut \-n\(aq | grep 22
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
\fBNOTE:\fP
.INDENT 0.0
.INDENT 3.5
This last example is not performant.
.UNINDENT
.UNINDENT
.SH AUTHOR
Christopher Groskopf and contributors
.SH COPYRIGHT
2016, Christopher Groskopf and James McKinney
.\" Generated by docutils manpage writer.
.
|