numbers2csv/numbers2csv.fish

40 lines
1021 B
Fish
Raw Normal View History

2023-09-18 16:44:26 +02:00
function numbers2csv
set argn (count $argv)
if test $argn -gt 2 -o $argn -eq 0
echo "*** Usage: numbers2csv <file> [<output-file>]"
return -1
end
set inputPath (path resolve $argv[1])
#set exportPath (path change-extension csv $inputPath)
if test $argn -eq 2
set exportPath (path resolve $argv[2])
else
set exportPath (mktemp)
#trap "rm -f $exportPath" 0 2 3 15 #doesn't seem to work
end
set applescript "
set inputPath to \"$inputPath\"
set exportPath to \"$exportPath\"
set inputFile to POSIX file inputPath
set exportFile to POSIX file exportPath
tell application \"Numbers\"
set theDocument to open inputFile
delay 1
export theDocument to exportFile as CSV
close theDocument
end tell
"
osascript -e $applescript
if test $argn -eq 1
cat $exportPath
rm -f $exportPath
end
end