| CSVGREP(1) | csvkit | CSVGREP(1) |
نام (NAME)
csvgrep - فیلتر کردن و جستجوی دادههای جدولی در فایلهای CSV
توضیحات (DESCRIPTION)
فیلتر کردن دادههای جدولی تنها به ردیفهایی که ستونهای مشخصی از آنها حاوی یک مقدار معین بوده یا با یک عبارت باقاعده مطابقت دارند:
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]
جستجوی فایلهای CSV. مانند دستور "grep" در یونیکس، اما برای دادههای جدولی.
positional arguments:
FILE فایل CSV برای پردازش روی آن. در صورت حذف، ورودی را
به عنوان داده هدایتشده از طریق STDIN میپذیرد.
optional arguments:
-h, --help نمایش این پیام راهنما و خروج
-n, --names نمایش نامها و نمایههای ستونها از CSV ورودی
و خروج.
-c COLUMNS, --columns COLUMNS
فهرستی از نمایهها، نامها یا محدودههای ستون جداشده با
کاما برای جستجو، مانند "1,id,3-5".
-m PATTERN, --match PATTERN
رشتهای برای جستجو.
-r REGEX, --regex REGEX
یک عبارت باقاعده برای تطبیق.
-f MATCHFILE, --file MATCHFILE
مسیری به یک فایل. برای هر ردیف، اگر هر خط در فایل
(پیراسته از جداکنندههای خط) تطابق دقیقی با مقدار سلول
باشد، ردیف مطابقت داده میشود.
-i, --invert-match انتخاب ردیفهای غیرمنطبق، به جای ردیفهای منطبق.
-a, --any-match انتخاب ردیفهایی که در آنها هر ستونی مطابقت دارد، به جای
همه ستونها.
همچنین ببینید: آرگومانهای مشترک میان همه ابزارها.
نکته: با وجود اینکه '-m'، '-r' و '-f' به عنوان آرگومانهای "اختیاری" فهرست شدهاند، اما باید یکی از آنها را مشخص کنید.
مثالها (EXAMPLES)
جستجو برای ردیف مربوط به Illinois:
csvgrep -c 1 -m ILLINOIS examples/realdata/FY09_EDU_Recipients_by_State.csv
جستجو برای ردیفهای مربوط به ایالتهایی که نامشان با حرف "I" آغاز میشود:
csvgrep -c 1 -r "^I" examples/realdata/FY09_EDU_Recipients_by_State.csv
جستجو برای ردیفهایی که حاوی سلول خالی در ستون ایالت نیستند:
csvgrep -c 1 -r "^$" -i examples/realdata/FY09_EDU_Recipients_by_State.csv
انجام یک جستجوی غیرحساس به حروف بزرگ و کوچک:
csvgrep -c 1 -r "(?i)illinois" examples/realdata/FY09_EDU_Recipients_by_State.csv
حذف ردیفهای توضیحات (comment):
printf "a,b\n1,2\n# a comment\n3,4" | csvgrep --invert-match -c1 -r '^#'
دریافت نمایههای ستونهایی که شامل متن منطبق هستند (\x1e نویسهٔ Record Separator (RS) است):
csvgrep -m 22 -a -c 1- examples/realdata/FY09_EDU_Recipients_by_State.csv | csvformat -M $'\x1e' | xargs -d $'\x1e' -n1 sh -c 'echo $0 | csvcut -n' | grep 22
نکته:
نویسندگان (AUTHORS)
Christopher Groskopf و مشارکتکنندگان
کپیرایت و تکثیر (COPYRIGHT)
2016, Christopher Groskopf and James McKinney
| August 16, 2024 | 2.2.0 |