Написать скрипт для Windows Power Shell с этой логикойРуководство для написания сценария Powershell со следующей логикой
- Получить текущую дату и убедиться в том, что это первый день месяца
- Если да, то вычислить предыдущий день (для расчета предыдущего 2 года значения/месяца)
- поиск XMLA файла заменить предыдущий год комбинацию/месяц с новыми значениями
Привет всем,
Мне поручено написать сценарий powershell с вышеуказанной логикой. Этот скрипт должен запускаться ежедневно в системе, которую я поддерживаю на работе. Я новичок в программировании, поэтому мне сложно начать работу. Если у кого-то есть информация, которая может подтолкнуть меня в правильном направлении, я бы очень признателен. Заранее спасибо.
Кроме того, я буду проверять это часто, поэтому, если у кого-то есть вопросы, тогда спросите. Благодаря
EDIT:
Ниже приведен код в файле, который мне нужно редактировать:
<Process xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Type>ProcessFull</Type>
<Object>
<DatabaseID>OLAPQA</DatabaseID>
<CubeID>Model</CubeID>
<MeasureGroupID>TRANSACTIONS</MeasureGroupID>
<PartitionID>TRANSACTIONS 201410</PartitionID>
</Object>
</Process>
<Process xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Type>ProcessFull</Type>
<Object>
<DatabaseID>OLAPQA</DatabaseID>
<CubeID>Model</CubeID>
<MeasureGroupID>TRANSACTIONS</MeasureGroupID>
<PartitionID>TRANSACTIONS 201411</PartitionID>
</Object>
</Process>
<Process xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Type>ProcessFull</Type>
<Object>
<DatabaseID>OLAPQA</DatabaseID>
<CubeID>Model</CubeID>
<MeasureGroupID>TRANSACTIONS</MeasureGroupID>
<PartitionID>TRANSACTIONS 201412</PartitionID>
</Object>
</Process>
Так что, когда это первый день месяца, мне нужно идти в этот файл и врезаться каждое значение даты в один раз. Просто хотел добавить это, если это поможет ответить на любые вопросы. Все еще работая через всю логику, но я буду задавать вопросы, когда сталкиваюсь с ними. Всем спасибо.
EDIT 2:
Есть выход мне нужно:
(Get-Date).AddMonths(-2) | Get-Date -Format "yyyyMM"
(Get-Date).AddMonths(-1) | Get-Date -Format "yyyyMM"
(Get-Date) | Get-Date -Format "yyyyMM"
Теперь нужно смотреть в Get-ChildItem для редактирования файла. Это может быть сложнее, чем я думал, поскольку теги одинаковы. Надеюсь, у этого командлета есть несколько вариантов.
Get-Date является конечно, где вы хотите начать. С его помощью вы можете рассчитать предыдущий день, месяц, что угодно. Затем вы можете посмотреть в Get-ChildItem для просмотра файлов и получения их свойств. –
Ницца. Большое спасибо. Сейчас я начну работать в Google. – powershelluser