A little Gist to keep terminal commands I have used, and will likely re-use, for batch processing files (semi-everyday use). Let me know if I am missing out on some.
Ps. I'm on MacOS
Required: lame
cd /folder/containing/.wav/files
for f in *.wav; do lame --preset insane "$f" "${f%.wav}.mp3"; done
Required: csv2docx
poetry run convert -t template.docx -c data.csv -n csv_column_name_for_output_naming
Required: docx2pdf
docx2pdf input_dir/ output_dir/
Required: optimize-images
Note: destructive operation (overwrites files)
cd /folder/containing/the/images
optimize-images ./
Note: suppresses errors
cd /folder/containing/the/new_and'_old.csv'_files
for f in *.csv; do print "$f"; diff "$f" "${f%.csv}_old.csv"; done 2> /dev/null
cd /folder/containing/the/individual/folders
find . -type d -d 1 -exec zip -r {} {} \;
cd /folder/containing/files
print -rl -- *.extension(:r)
Stored as function in
~/.zshrc
Required: jq
Note: considers all values to be string
json2csv() {jq -r '(first | keys_unsorted) as $keys | map([to_entries[] | .value]) as $rows | $keys,$rows[] | @csv' $1.json > $1.csv;}
json2csv filename_stem