如何使用AzureCLI按日期删除Azure Blob存储中的文件?

如何使用AzureCLI按日期删除Azure Blob存储中的文件?,azure,Azure,我正试图使用——如果未修改,因为删除批处理命令上的标志来删除文件,但是Azure在我的内联脚本上抛出了一个错误 我在Azure DevOps中使用Azure-pipelines.yml文件在Ubuntu虚拟机上执行此操作 此命令: - task: AzureCLI@2 displayName: Delete old files inputs: azureSubscription: 'Main subscription (xxx-xxx-xxx)' scriptType:

我正试图使用
——如果未修改,因为
删除批处理
命令上的
标志来删除文件,但是Azure在我的内联脚本上抛出了一个错误

我在Azure DevOps中使用Azure-pipelines.yml文件在Ubuntu虚拟机上执行此操作

此命令:

- task: AzureCLI@2
  displayName: Delete old files
  inputs:
    azureSubscription: 'Main subscription (xxx-xxx-xxx)'
    scriptType: pscore
    scriptLocation: inlineScript
    inlineScript: |
        az storage blob delete-batch -s $web --account-name mystorage --if-unmodified-since `date -d "1 days ago" '+%Y-%m-%dT%H:%MZ'`
返回一个
不完整的字符串标记
错误,指向内联脚本的末尾

Backtick(`)用于在powershell中转义字符,因此我认为使用$(command)执行嵌套命令更容易[date-d“1天前”'+%Y-%m-%dT%H:%MZ'是一个linux命令]

这是我的任务,对我来说很有效

- task: AzureCLI@2
  inputs:
    azureSubscription: 'Visual Studio Professional Subscription(xxxxxx)'
    scriptType: 'pscore'
    scriptLocation: 'inlineScript'
    inlineScript: 'az storage blob delete-batch -s images --account-name mystorage --if-unmodified-since $(date -d `"5 days ago`" ''+%Y-%m-%dT%H:%MZ'')'
Backtick(`)用于对powershell中的字符进行转义,因此我认为使用$(command)执行嵌套命令更容易[date-d“1天前”'+%Y-%m-%dT%H:%MZ'是一个linux命令]

这是我的任务,对我来说很有效

- task: AzureCLI@2
  inputs:
    azureSubscription: 'Visual Studio Professional Subscription(xxxxxx)'
    scriptType: 'pscore'
    scriptLocation: 'inlineScript'
    inlineScript: 'az storage blob delete-batch -s images --account-name mystorage --if-unmodified-since $(date -d `"5 days ago`" ''+%Y-%m-%dT%H:%MZ'')'

就这样!非常感谢。就这样!非常感谢。