CSV2ODS(1)
πΈ CSV2ODS(1) β csv2ods πΈ
okay bestie, welcome to the csv2ods page, it's a User commands moment and honestly? it eats. it lives in section 1 of the manual, aka the "girlies who run things in the shell" section. let's get into it π
β¨ NAME β¨
csv2ods β creates an OpenDocument spreadsheet out of comma separated values. like, it takes your sad lil CSV and gives it a whole glow-up into a real spreadsheet. iconic behavior fr π
π¦ SYNOPSIS π¦
csv2ods -i file.csv -o file.ods
that's the whole vibe. in goes a csv, out comes an ods. no cap.
π DESCRIPTION π
so here's the tea π΅ β this program reads a file in CSV format, which is just a table of columns delimited by commas, tabs, or literally any other character you want (you're the main character, you choose). then it creates a spreadsheet out of it. πβ¨
and the lil detail that's lowkey so smart: if a value looks like a number, the cell gets formatted as a number too. it just knows. π
π OPTIONS π
--versionβ shows the program's version number and then dips. bye bestie π-h,--helpβ shows the help message and exits. your safety net, always there for you π«Ά-i INPUT,--input=INPUTβ the input file, in csv. π₯-o OUTPUT,--output=OUTPUTβ the output file, in ods. π€-d DELIMITER,--delimiter=DELIMITERβ picks a one-character string to use as the field separator. defaults to","btw, because commas are the moment π-c ENCODING,--encoding=ENCODINGβ says what encoding the csv file is in. defaults toutf-8. periodt β¨-t TABLENAME,--table=TABLENAMEβ the table name in the output file. name her something cute π-s SKIPINITIALSPACE,--skipinitialspace=SKIPINITIALSPACEβ tells it how to read whitespace that comes right after a delimiter. defaults toFalse, which means whitespace right after a delimiter is part of the following field. so like, no stripping, she's keeping everything π-l LINETERMINATOR,--lineterminator=LINETERMINATORβ picks the character sequence that should terminate rows. that's the thing that says "ok this row is done, next" β‘οΈ-q QUOTING,--quoting=QUOTINGβ this one can be any of these module constants, okay? here's the breakdown bestie:0=QUOTE_MINIMALβ quotes only when required, like when a field contains either the quotechar or the delimiter. lowkey the chill option.1=QUOTE_ALLβ quotes are always placed around fields. every single one. no exceptions, extra af π2=QUOTE_NONNUMERICβ quotes always go around fields which don't parse as integers or floating point numbers. numbers get the naked treatment.3=QUOTE_NONEβ quotes are never placed around fields. absolutely none. feral.
the default is QUOTE_MINIMAL, so that's the starting vibe β¨
-e ESCAPECHAR,--escapechar=ESCAPECHARβ a one-character string used to escape the delimiter when quoting is set toQUOTE_NONE. so when quotes are off, this is your escape hatch π³οΈβ¨-r QUOTECHAR,--quotechar=QUOTECHARβ a one-character string to use as the quoting character. defaults to". cute, classic, never not slaying π
π EXAMPLE π
csv2ods -i /etc/passwd -o accounts.odt -d:
yeah she's converting /etc/passwd with : as the delimiter and dropping accounts.odt. obsessed ππ₯
π AUTHOR π
- Agustin Henze
<agustinhenze at gmail.com>β the original author ofcsv-ods.py. thank you king, we owe you everything π«Άβ¨
bestie, if this ever looks wrong, remember: <italic>csv2ods</italic> don't play. run the example, check your delimiters, and hydrate π§
and that's the page!! source is odfpy, dated 02/11/2025 β mwah, take care of her, she's iconic πππ¦βπ·
π¦ where this page comes from
- debian trixie: python-odf-tools 1.4.2-4 Β· GPL-2.0-or-later AND Apache-2
- ubuntu resolute: python-odf-tools 1.4.2-4 Β· GPL-2.0-or-later AND Apache-2
- ubuntu stonking: python-odf-tools 1.4.2-4 Β· GPL-2.0-or-later AND Apache-2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms