droid
droid copied to clipboard
No-Profile mode with Filelist xml
Hi,
This is not an issue. But i wanted to ask about this as i think this feature is missing in higher versions.
Verison 3.0 that we use has a feature to give an xml file as input to droid.jar which will have the list of resources to be identified. But this feature is not found in higher versions.
May i know if there is an alternate way (other than using GUI) for achieving the same purpose. Please note that we generally have 1000s of files to be identified at one time and from multiple folders. Even in one folder, there could be only subset of files to be identified by DROID. So using -a may not be seem viable. Also, we would like to hide any GUIs to the end users.
Would you please let me know if No-profile mode helps achieve some or all my needs? If no, may i recommend that feature to be added in next releases?
Thank you,
The “no profile” mode should indeed help with this scenario. There are examples in the DROID help as a minumum, you need to specify the folder location and a full path to a binary signature file (container signature is optional).
E.g. the following will identify all files under the directory specified after –Nr. The –R is to enable recursive scanning of subdirectories, if this is not included then only files immediately under the specified directory are included:
./droid -Nr "C:\folders\folder1" -Ns "C:\Users\Username.droid6\signature_files\DROID_SignatureFile_V82.xml" –R
The results are sent to standard output – i.e. the cmd or Powershell console by default on a Windows PC. However you can use standard output redirection if, for example, you wanted to save the output to file.
This doesn't satisfy the requirement to specify multiple folders in different parts of the hierarchy at the same time.
On 18/06/2015, at 03:12, snail1966 [email protected] wrote:
The “no profile” mode should indeed help with this scenario. There are examples in the DROID help as a minumum, you need to specify the folder location and a full path to a binary signature file (container signature is optional).
E.g. the following will identify all files under the directory specified after –Nr. The –R is to enable recursive scanning of subdirectories, if this is not included then only files immediately under the specified directory are included:
./droid -Nr "C:\folders\folder1" -Ns "C:\Users\Username.droid6\signature_files\DROID_SignatureFile_V82.xml" –R
The results are sent to standard output – i.e. the cmd or Powershell console by default on a Windows PC. However you can use standard output redirection if, for example, you wanted to save the output to file.
— Reply to this email directly or view it on GitHub.
Thanks @snail1966 . As @ross-spencer mentioned, if I have multiples files or folders that are in a different hierarchy, the -Nr mode would not help. Say, I have folders, D:\Folder1\Folder11 and D:\Folder2\Folder21, I think I cant use -Nr to achieve this. Is there a way I can do this? Option -a(resource list) allows me to provide multiple folders but that needs a profile and I cant use -e (export) and I don't want that method because it takes some time to write to local db.
Hi AnanthNagarajanInfosys, Firstly, apologies - I didn't mean to mark this as closed this when I commented earlier - but I realised I clicked the wrong button! Yes, unfortunately you can't currently specify multiple folders or files in this way using the "no profile" mode (any after the first one are ignored and (from Version 6.1.5) a message is output to this effect along with the results). A possible work around is to make use of reparse points or directory junctions to allow multiple locations to be aliased under a single parent directory - and then supply this as the location. Another possibility is to call the command line DROID programmatically in a loop for each location e.g. from a script or Java or .NET progamme. Although this will mean starting a new instance for each iteration. We could look at including muliple entry processing in a future release. I hope this helps. Regards, Brian
Hi @snail1966 . No problem and Thank you for suggestion. I tried creating "shortcuts" with no luck but reparse points is something new to me and I shall try those.
@snail1966 , thanks for your suggestion, it works!!. And FYI and for others, the output of the DROID will show the file path "as seen in" reparse point and NOT the original path. i.e. if directory junctions are created for D:\Folder1\Folder11 and D:\Folder2\Folder21 in C:\Users\ananth, the output of DROID will show the full path of files identified under Folder11 and Folder21 as C:\Users\ananth
Thanks again for this wonderful suggestion.
Great to know this solution worked for you - I've found this approach useful on other occasions in the past, though I agree that the presentation of the aliased path in place of the original might be a limitation for some users. This is a behaviour of the operating system and DROID has no way of knowing whether it is dealing with an original path or a reparse - so yes some kind of additional processing would be needed to restore the original paths. You may want to have a look at http://www.codeproject.com/Articles/15633/Manipulating-NTFS-Junction-Points-in-NET - this proved useful for me in another context.
This issue has been added to the DROID backlog, it will be assigned an appropriate priority but is unlikely to be included in the next release.