For direct Excel-to-CSV conversion on Linux, use csvkit’s in2csv or Gnumeric’s ssconvert. Miller’s mlr is for processing the CSV or other supported text-format records after conversion; its documented formats do not include Excel workbooks. The examples below create a separate output for each workbook and show how to handle multiple sheets deliberately.
Choose the right tool
| Need | Use | What it does |
|---|---|---|
| Convert an XLS or XLSX workbook to CSV and select worksheets | in2csv from csvkit |
Its current reference documents XLS/XLSX input and worksheet options. |
| Script conversions across spreadsheet formats supported by Gnumeric | ssconvert |
Gnumeric documents scripted file conversion and options for listing importers and exporters. |
| Filter, reshape, sort, or transform tabular records after conversion | mlr from Miller |
Miller handles documented delimited and JSON-style formats, not Excel workbook input. |
For separate CSV files, run a conversion once per workbook. Miller can instead read multiple CSV files as a single record stream, which is useful for aggregation but does not preserve a one-workbook-to-one-output result.
Install and check the commands
csvkit
csvkit documents installation with pip install csvkit and recommends using a virtual environment. Package names and versions can vary by Linux distribution, so confirm that in2csv is available in your environment. The current csvkit documentation is version 2.2.0: csvkit documentation.
Gnumeric
Install Gnumeric through your distribution’s package manager, then confirm ssconvert is installed. The Gnumeric homepage reports version 1.12.62, released in September 2026: Gnumeric. Availability and command options depend on the installed package.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problems#1 Best Overall
- Powerful Linux Laptop: This IdeaPad Slim 3 Laptop comes pre-installed with Ubuntu Linux, offering fast performance, robust security, and a clean, user-friendly experience. Enjoy full customization, seamless hardware compatibility, and access to thousands of open-source apps. Whether you're working, creating, or coding, it's built to keep up with everything you do.
- A Multitasking Master: The latest AMD Ryzen 7 5825U processor (up to 4.5 GHz) delivers powerful performance with 8 cores and 16 threads for smooth multitasking. Integrated AMD Radeon Graphics provide crisp visuals for streaming, browsing, photo editing, and casual gaming. With smart machine intelligence, it adapts to your needs for a fast, responsive experience.
- 15.6" Full HD Display: The IdeaPad Slim 3 boasts an 88% screen-to-body ratio for a floating, edge-to-edge visual experience. TÜV Low Blue Light certification reduces eye strain, making it perfect for long work or study sessions.
- Military-Grade Durability: The smart IdeaPad Slim 3 combines portability and durability, letting you work, study, and play on the go. With a profile 10% slimmer than the previous generation, it's lightweight yet military-grade rugged, ready for anything, anywhere.
- Versatile Connectivity: Enjoy the security of a built-in webcam with a privacy shutter. Connect effortlessly with multiple ports: 2x USB A, 1x USB C, 1x HDMI, 1x SD Card Reader, 1x Headphone/Microphone combo. Bundle comes with Stylus Pen, 256GB Portable SSD and 5-in-1 Docking Station.
Miller
Miller 6.22.0 documents CSV, TSV, JSON, JSON Lines, PPRINT, XTAB, NIDX, and DKVP formats. Check the installed command’s help or manual if its options differ from the examples: Miller documentation.
Batch-convert one workbook per CSV
These shell loops assume the input files are in the current directory. Quoted variable expansions preserve spaces in filenames, and the existence check makes an unmatched glob skip cleanly instead of creating a file from the literal pattern.
With csvkit
for f in ./*.xlsx; do
[ -e "$f" ] || continue
in2csv "$f" > "${f%.xlsx}.csv"
done
For legacy .xls files, use a separate loop and change the suffix:
Rank #2
- Intel Core i5-10210U (up to 4.2GHz) - 1TB PCIe NVMe + 1TB HDD - 32GB DDR4 SDRAM
- 17.3" HD+ (1600x900) Display, Intel UHD Graphics 620
- Built in HD 720p Webcam with Microphone - Bluetooth Version4.2
- I/O Ports: 2x USB 3.1 (Data Only), 1x USB 2.0, 1x HDMI, 1x Headphone/Microphone Combo Jack
- Linux Mint Cinnamon 64-Bit - 6-Row Keyboard w/ Full Numberpad
for f in ./*.xls; do
[ -e "$f" ] || continue
in2csv "$f" > "${f%.xls}.csv"
done
The redirection writes each command’s output to a CSV with the matching basename. For reruns, consider writing outputs to a dedicated directory so later input globs cannot include previous results.
With Gnumeric
for f in ./*.xlsx; do
[ -e "$f" ] || continue
ssconvert "$f" "${f%.xlsx}.csv"
done
Use the equivalent ./*.xls glob and ${f%.xls}.csv suffix for legacy files. Gnumeric documents the ssconvert input output form and scripted conversion, but the opened manual is an archive copy for version 1.12.57 from May 2020. Check the installed options when behavior matters: run ssconvert --list-importers, ssconvert --list-exporters, and consult man ssconvert. The project’s conversion guidance is at Gnumeric: Converting Files.
Handle worksheets deliberately
A workbook may contain several sheets. With csvkit, list sheet names before choosing one:
Rank #3
- Intel Core i5-1335U Processor (12M Cache, 12 Threads, up to 4.6 GHz) - 256GB Solid State Drive - 16GB DDR4 SDRAM
- 15.6" FHD (1920x1080) Non-Touch Anti-Glare Display - Intel UHD 620 Integrated Graphics - Stereo Speakers
- 720p HD Webcam with Privacy Shutter. Integrated Microphone - Intel Dual Band Wireless-AC (2x2) 8265, Bluetooth Version 4.2
- I/O Ports: 2x USB 3.0, 1x USB 3.1 Type-C 3.1, Headphone/Mic Combo Port, 4-in-1 Card Reader, HDMI, Kensington Mini-Lock Slot
- Linux Mint (Cinnamon) 64-Bit - Keyboard with Full NumberPad - Fast Charging
in2csv --names "workbook.xlsx"
Convert a named worksheet with:
in2csv --sheet 'Sheet Name' "workbook.xlsx" > "workbook.csv"
To write all sheets, csvkit documents --write-sheets -; --use-sheet-names lets output filenames use worksheet names. Check the generated filenames and destination directory with a sample workbook before running this across a folder. See the in2csv reference for the available options.
If you use Gnumeric, inspect the installed importer and exporter list and its manual for worksheet-related options. Do not assume that a simple workbook-to-CSV command exports every sheet: test the specific workbook and command behavior.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchUse Miller after conversion
Miller is useful once the spreadsheet data is in a supported record format. For example, convert a CSV to TSV with:
Rank #4
mlr --icsv --otsv cat input.csv > output.tsv
To process several same-schema CSV files as one stream and count records:
mlr --csv stats1 -a count input-*.csv
Miller treats the input files as one stream and avoids repeating CSV header lines. That behavior suits a combined analysis or transformation; use the per-file loops above when you need one output for each workbook. Miller’s formats and stream behavior are described in its documentation.
Check the output before converting a whole directory
- Pilot representative files. Convert at least one XLS and one XLSX if both types are present, then inspect the resulting CSV before processing the full batch.
- Verify the worksheet. List sheet names or choose a sheet explicitly; if exporting all sheets, confirm which files the command created.
- Compare important values. Check dates, identifiers with leading zeros, decimals, formulas, blank cells, and non-ASCII text against the workbook. The documentation does not claim that any converter preserves every spreadsheet feature or display choice.
- Inspect CSV quoting and delimiters. Fields containing commas, quotation marks, or newlines need to be represented correctly for the CSV consumer. Miller’s documentation distinguishes RFC-4180-style CSV from CSV-lite and describes their handling of embedded delimiters and line endings: Miller documentation.
- Keep inputs and outputs distinct. A separate output directory helps prevent reruns or broad globs from treating earlier CSVs as new inputs.
- Make failures visible. Check command exit statuses and record which input failed; do not treat a completed loop as proof that every file converted correctly.
Why Excel files that look alike can produce different CSVs
CSV contains tabular values, not the full workbook experience. A conversion can differ in numeric representation or formatting even when two workbooks appear identical in Excel. csvkit warns: “If an XLS looks identical to an XLSX when viewed in Excel, they may not be identical as CSV.” Its example notes that an integer in an XLSX may be emitted without decimals while a visually similar XLS value may be emitted with decimals. See the in2csv reference.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Best Value
- 12th Intel Alder Lake N95 Processor – The GMKtec G3 S Mini PC is powered by the 12th Gen Intel N95 processor with 4 cores, 4 threads, 6MB cache and a burst frequency up to 3.4GHz. Compared with N100/N5105/N5100/N5095, the N95 delivers up to 36% overall performance improvement. Perfect for routine tasks, office work, and home entertainment, this compact mini desktop is more convenient than traditional bulky PCs.
- 8GB RAM & 256GB SSD Storage – Pre-installed with 8GB DDR4 memory and a fast 256GB M.2 2242 SSD, the G3 S mini desktop offers quicker startup, smoother multitasking, and faster file transfers. Enjoy seamless performance whether you’re working on multiple applications, browsing, or streaming content.
- Rich Interfaces & Connectivity – The G3 S mini computer comes equipped with USB 3.2 (up to 10Gbps), dual HDMI 2.0 (4K@60Hz), and a 3.5mm audio jack. With support for WiFi 5, Bluetooth 5.0, and Gigabit Ethernet (RJ45 1000MbE), it connects easily with monitors, projectors, printers, office equipment, and other peripherals, making it versatile for both home and business use.
- Dual 4K Display Support – Featuring upgraded Intel UHD Graphics (up to 1000MHz), the G3 S supports 4K video playback and AV1 decoding for a smooth viewing experience. With dual HDMI outputs, you can connect two 4K@60Hz displays simultaneously, enabling efficient multitasking for work and entertainment.
- GMKtec WARRANTY - GMKtec offers a 1-year limited GMKtec's warranty for each mini PC, starting from the date of the purchase. All defects due to design and workmanship are covered. With a professional after sales team always ready to attend to your needs, you can simply relax and enjoy your mini PC.
csvkit also documents CSV dialect sniffing and type inference, with occasional inference errors. If you do not need those features for csvkit’s CSV handling, its documentation recommends --snifflimit 0 and --no-inference. These settings concern csvkit’s CSV handling; they do not make Excel conversion semantics identical.
Gnumeric’s archived manual describes exporter formatting choices including format=raw and format=preserve. Their outcome can affect dates and number formatting, so check your installed version’s exporter options before relying on either. The manual copy is for Gnumeric 1.12.57 from May 2020; use the installed man ssconvert and exporter list for current behavior.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




