Estou procurando uma maneira de salvar uma pesquisa que inclua uma data relativa. Especificamente, estou procurando uma maneira de salvar uma pesquisa que corresponda a arquivos que tenham uma data de modificação há 7 dias .
Eu li o documento da sintaxe de consulta avançada do Windows Search e não vejo uma maneira de dizer isso há 7 dias.
A seção de números e intervalos menciona que datas relativas são possíveis. O problema é que as datas relativas descritas lá não se enquadram nos critérios de que preciso. A última semana quase se parece com o que eu quero, exceto se eu executar uma consulta como after:lastweek
na segunda-feira, ela mostrará apenas meu arquivo que foi modificado desde domingo às 12:00. A última semana / último mês parece relativa ao início da semana / mês, o que não é o que eu preciso.
Datas relativas de várias palavras: semana, próximo mês, última semana, mês passado ou ano seguinte. Os valores também podem ser inseridos contratados, da seguinte forma: thisweek, nextmonth, lastweek, pastmonth, comingyear.
Uma coisa legal das pesquisas salvas é que elas são armazenadas como um documento XML e o formato do arquivo é documentado . Não estou vendo como formar um valor correto para um datetime. Se eu conseguia entender esse formato, suspeito que poderia usar um editor de texto e criei uma pesquisa salva que faça o que eu quero.
Fragmento dos exemplos :
<conditions>
<condition type="leafCondition" valuetype="System.StructuredQueryType.DateTime"
property="System.DateModified" operator="imp"
value="R00UUUUUUUUZZXD-30NU" propertyType="wstr" />
</conditions>
Para resumir, estou procurando uma resposta para uma ou ambas as perguntas
- Como faço uma consulta por '7 dias atrás' usando a sintaxe padrão?
- Como o DateTime é armazenado em uma pesquisa salva?
fonte
Basta escrever um script (PowerShell ou Lote) que leve a data de hoje, subtraia 7 dias e execute uma pesquisa com base no resultado. Dessa forma, você não precisará salvar a pesquisa, basta executar o script.
fonte
Criei um arquivo de pesquisa de amostra para recriar programaticamente. Pesquisei arquivos de vídeo em uma pasta especificada, modificada nas últimas 2 semanas ("desatodificado: 17/03/2017 .. 04/01/2017").
Isso me deu um arquivo .search-ms cheio de coisas como:
A chave aqui sendo
Você pode observar que as datas estão claramente escritas, anexadas pela letra K. N00, depois K, depois o ano e assim por diante.
Eu escrevi um aplicativo de console simples para gerar um arquivo de pesquisa com as datas específicas das últimas 2 semanas e configurei o Windows Task Scheduler para executá-lo todos os dias à meia-noite para meus próprios fins. Tenho certeza que você poderia fazer o mesmo.
Concordo que o método de solução alternativa não substitui a capacidade de gerar o arquivo de pesquisa. Uma coisa que as pessoas talvez não saibam é que você pode tratar os arquivos .search-ms como pastas, chegando a incluí-los como uma pasta da barra de ferramentas na barra de tarefas.
fonte