Thanks very much for the wonderful application. It is definitely one of my most favorite programs -- it brings absolute ease to file management, in my opinion.
Anyway, my goal is to use the command-line to first rebuild the index, and then to get the results of a query. I would prefer for the query to be issued right when the index has finished being rebuilt.
Towards trying to accomplish this, I compromised and I have been using the below command (the ES call is an example):
Code: Select all
Everything.exe -startup -reindex && timeout /t 1 && ES -sort size folder: size:^>1gb
- Sometimes the ES call will wait until the index is rebuilt, and then return the expected results. (This is the desired behavior.)
- Other times the ES call will return with results right away.
- And other times it seems that the ES call will hang, requiring an interrupt to end the command.
Thanks very much.
More Information / Thoughts
I have noticed that the -reindex Everything.exe call only initiates the index rebuild, and then it returns. However, I have also noticed that the ES CLI seems to be designed to wait for the index to be completed being built when an index rebuild is occurring.
I don't know for sure, but what seems to be going on when there is no timeout is that the ES call can significantly progress before the Everything.exe rebuild call has already indicated that a rebuild is intended, or perhaps progress. Thus, this should explain the unpredictable three different behaviors.
(Just my 2 cents, but it seems that the proper way to fix this would be for there to exist a cmd line command that initiates a "blocking index rebuild", meaning a command that initiates an index rebuild AND it doesn't return until the rebuild is complete. This would allow for a consistently-behaved, quick succession of an errorlevel conditional sequence of an index rebuild followed by an ES CLI query against that new index.)