【Azure 应用服务】在Azure Funciton中使用Powershell脚本函数,需要存储一些变量值如何解决?
问题描述
使用Azure Function创建Powershell脚本来执行函数,在使用中需要存储一些不重要的参数。一般情况,存储的问题都是交给DB,Storage等来解决。但是有没有一种简单的办法呢?就用Powershell命令把参数的内容输出到txt文件中,然后每次需要使用的时候就直接使用get-content呢?
由于Azure Funciton是被触发运行或者是定时运行,这表示代码在执行完一次后将释放资源,所以不能通过变量的方式来存储数据。
解决办法
在不使用数据库的情况下,就通过在Azure Funciton的Home目录中生成文件并在文件中保存参数值。 这里Home目录的路径和Azure App Service一样,即可以是D:\Home\,也可以是%home%\
在Powershell funciton中的代码为:
# Write to the Azure Functions log stream.
Write-Host "PowerShell HTTP trigger function processed a request." $date = Get-Date -Format yyyy-mm-dd-hh-mm-ss Write-Host "the new data is: $date " $date | out-file -filepath d:\home\namelist.txt -Encoding utf8 -append -width 200
$sdata = Get-Content -Path d:\home\namelist.txt
#$sdata = (Get-Content -Path d:\home\namelist.txt)[-1] Write-Host "File content is: $sdata "
首先通过Powershell的 out-file方法把 $data中的内容保存到文件d:\home\namelist.txt中。注意需要使用utf8编码。以避免乱码的情况。
然后通过Get-Connect从文件中读取内容赋值到新参数中。这样即实现了通过文件内容读取历史保留的任何参数。
测试结果如下图:

参考资料
在 Azure 中使用 Visual Studio Code 创建 PowerShell 函数: https://docs.azure.cn/zh-cn/azure-functions/create-first-function-vs-code-powershell
Out-File: https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Out-File?view=powershell-7.1
Get-Content: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-content?view=powershell-7.1
【Azure 应用服务】在Azure Funciton中使用Powershell脚本函数,需要存储一些变量值如何解决?的更多相关文章
- 在 Snoop 中使用 PowerShell 脚本进行更高级的 UI 调试
原文:在 Snoop 中使用 PowerShell 脚本进行更高级的 UI 调试 版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可.欢迎转载.使用.重新发布, ...
- 【Azure 应用服务】Azure Function 启用 Managed Identity后, Powershell Funciton出现 ERROR: ManagedIdentityCredential authentication failed
问题描述 编写Powershell Function,登录到China Azure并获取Azure AD User信息,但是发现遇见了 [Error] ERROR: ManagedIdentityCr ...
- 【Azure 应用服务】Azure Function App 执行PowerShell指令[Get-Azsubscription -TenantId $tenantID -DefaultProfile $cxt]错误
问题描述 使用PowerShell脚本执行获取Azure订阅列表的指令(Get-Azsubscription -TenantId $tenantID -DefaultProfile $cxt).在本地 ...
- 【Azure 应用服务】App Service中,为Java应用配置自定义错误页面,禁用DELETE, PUT方法
问题定义 使用Azure应用服务(App Service),部署Java应用,使用Tomcat容器,如何自定义错误页面呢?同时禁用DELETE, PUT方法 解决办法 如何自定义错误页面呢?需要在 J ...
- 【Azure Developer】调用SDK的runPowerShellScript方法,在Azure VM中执行PowerShell脚本示例
当需要通过代码的方式执行PowerShell脚本时,可以参考以下的示例. Azure SDK中提供了两个方法来执行PowerShell脚本 (SDK Source Code: https://gith ...
- 【Azure 应用服务】Azure Function集成虚拟网络,设置被同在虚拟网络中的Storage Account触发,遇见Function无法触发的问题
一切为了安全,所有的云上资源如支持内网资源访问,则都可以加入虚拟网络 问题描述 使用Azure Function处理Storage Account中Blob 新增,更新,删除等情况.Storage A ...
- 【Azure Redis 缓存】使用Python代码获取Azure Redis的监控指标值 (含Powershell脚本方式)
问题描述 通过Metrics监控页面,我们能得知当前资源(如Redis)的运行情况与各种指标.如果我们需要把指标下载到本地或者生成JSON数据导入到第三方的监控平台呢?Azure是否可以通过Pytho ...
- 【Azure 应用服务】Azure App Service 自带 FTP服务
问题描述 Azure PaaS服务是否有FTP/S服务呢? 回答问题 应用服务(Web App/App Service)在创建时候,默认创建了FTP服务并自动开启,用于应用部署.但它不是适合作为FTP ...
- 【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
问题描述 在上篇博文"[Azure 应用服务]App Service for Linux 中实现 WebSocket 功能 (Python SocketIO)"中,实现了通过 HT ...
- 在Bat批处理中调用Powershell脚本
##如何在BAT中调用powershell,把下面代码另存为bat格式pushd %~dp0powershell.exe -command ^ "& {set-executionp ...
随机推荐
- 一文带你搞懂如何优化慢SQL
作者:京东科技 宋慧超 一.前言 最近通过SGM监控发现有两个SQL的执行时间占该任务总执行时间的90%,通过对该SQL进行分析和优化的过程中,又重新对SQL语句的执行顺序和SQL语句的执行计划进行了 ...
- hadoop实践01---hdfs分布式集群搭建与启动
一.hdfs集群组成结构
- 2.7 CE修改器:多级指针查找
在本步骤中,你需要使用多级指针的概念来查找健康值真正的地址并修改它.多级指针就是一个指针的指针,也就是第一个指针指向第二个指针,第二个指针指向第三个指针,以此类推,最终指向你想要访问的地址. 首先,你 ...
- C/C++ Qt 使用JSON解析库 [修改篇]
JSON是一种轻量级的数据交换格式,它是基于ECMAScript的一个子集,使用完全独立于编程语言的文本格式来存储和表示数据,简洁清晰的的层次结构使得JSON成为理想的数据交换语言,Qt库为JSON的 ...
- 月薪10K码农,跳槽到40K架构师,技术学习路线图汇总
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.介绍 Hey there! Roadmap to becoming a web devel ...
- ElasticSearch-聚合、自动补全、集群、数据同步
数据聚合 1.数据聚合 聚合(aggregations)可以让我们极其方便的实现对数据的统计.分析.运算.例如: 什么品牌的手机最受欢迎? 这些手机的平均价格.最高价格.最低价格? 这些手机每月的销售 ...
- 绝对凶器!NVIDIA Titan Z细节全曝光
AMD Radeon R9 295X2已经拉开了新一代双芯卡皇大战的序幕,接下来就等NVIDIA GeForce GTX Titan Z的登场了.最新消息显示,它比原计划推迟了一个星期,将在5月8日正 ...
- XD刷机报错bad CRC
测试需要,给一台1/4 rack的X8M HC刷机,使用oeda配置好的xml文件,执行命令列出本次刷机的所有步骤: [root@dbm11dbadm01 linux-x64]# ./install. ...
- Oracle-报错信息显示问号或者乱码(Oracle 19c)
问题描述: 通过sqlplus登录Oracle19c时,执行SQL出现报错时,显示错误码出现问号: 解决方法: su - oracle vi .bash_profile 添加如下一行内容: ex ...
- nginx 配置mp4文件播放
nginx 配置mp4文件播放 由于工作需要一个离线的视频播放地址,就想简单一点直接把视频文件放到nginx里面实现视频播放,但是把mp4文件放上去之后地址栏输入地址直接就是下载文件,这跟我想象的 ...