ashang / unar

unar mirror for maintenance to build on some distros
https://unarchiver.c3.cx/commandline
Other
40 stars 6 forks source link

Missing ability to specify custom destination path when extracting file by file. #5

Open mafiosso opened 4 years ago

mafiosso commented 4 years ago

Hi, thank you for this great project! Currently I am writing custom module for node.js. I would like to use you library to make a stream of extracted files - currently I do this via lsar & unar. However files in my .zip (or in other archives) files may have very long names (longer than OS limits) sometimes or broken/mixed encoding. In these cases I would like to extract the "broken-name" files to my custom destinations (e.g. custom ID, hash etc.). I can not find a way how to do this via unar but when looking to your codes it should be possible to change destination relatively easily - but I am not very skilled in Objective-C.

I suppose it would be a good functionality for others as well.

ashang commented 2 years ago

Seems this worked fine.

$ unar -o new-dir /path/to/archive

Do you have example archives with very long names?

mafiosso commented 2 years ago

The main problem was no possibility to extract items one by one specified by ID to a custom path - this solves problems with too long paths and gives possibility to extract in parallel and fix path encoding problems in right place.

I forked XADMaster and added this functionality - which is crucial for us.