Xlsx2csv for multiple files

Hello,
I have hundreds of .xlsx files in a directory. I need to convert them all to .csv files by one of the following approaches:

  1. Each with their own output file (which I can then concatenate), or
  2. All into one .csv

Is there a Unix one line command to do this?

Thanks!

why does it have to be a "one line command"? Any particular reason?
What is your OS (you didn't mention)?
If on Windows, do you have cygwin installed? If not installed, is installing it an option?

Mac OS - El Capitan, XQuartz

It doesn't necessarily have to be one line, though simplicity would be preferred... thanks!

there're many ways to "skin that cat" if you Google.
My favorite are:

  1. under Windows with cygwin

  2. perl with addition Excel module

I personally prefer option 1 as I'm under Windows (no pun) with the already installed cygwin. See if any of these serves your purpose.

The second link doesn't seem to work.

I really want to use xlsx2csv, since this is absolutely straightforward. If I have the following Excel files:

file1.xlsx
file2.xlsx
file3.xlsx

The command I am looking for would be along the lines of:

xlsx2csv file*.xlsx > outfile.csv

but that does not work as written. Is there a similar command with correct syntax?

Thanks!

I've edited your reply using markdown tags to make it more readable. Please make you use markdown tags when posting data/code sample.
As far as the "The second link doesn't seem to work", it work for me and I'm reposting the exact link to the mentioned thread will the perl suggestion.

As the path forward, I'd recommend deciding which of the 2 mentioned approaches (and if there're others) most suite you given the requirements each one states first.
Then after you you're able to fulfill the requirements and are able to convert ONE xls file to cvs(s), implement a script (if the chosen implementation doesln't allow for multiple xls file conversion) that iterates through ALL the xls file, converts them to 1/many csv files (if there're multiple tabs in the xls) and then concatenates all the csv-s into 1 csv (if possible).

But "first thing first" - learn to crawl before trying to run.