Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PowerShell在Azure函数中加载文件_Powershell_Azure_Azure Functions - Fatal编程技术网

如何使用PowerShell在Azure函数中加载文件

如何使用PowerShell在Azure函数中加载文件,powershell,azure,azure-functions,Powershell,Azure,Azure Functions,我有一个小函数,它接受一个美国电话区号数组,并返回一个与所在州配对的区号数组 各州区号的“主列表”在我的函数中是一个很长的变量。我想把它放在CSV文件中 我是Azure函数的初学者,但即使文件位于根文件夹中,获取内容。\filename.csv也不起作用。Azure函数目录的路径是 D:\home\site\wwwroot\<YourFunctionName> D:\home\site\wwwroot\ 要加载CSV文件,请在PowerShell脚本中使用以下命令: Get-Co

我有一个小函数,它接受一个美国电话区号数组,并返回一个与所在州配对的区号数组

各州区号的“主列表”在我的函数中是一个很长的变量。我想把它放在CSV文件中


我是Azure函数的初学者,但即使文件位于根文件夹中,
获取内容。\filename.csv
也不起作用。

Azure函数目录的路径是

D:\home\site\wwwroot\<YourFunctionName>
D:\home\site\wwwroot\
要加载CSV文件,请在PowerShell脚本中使用以下命令:

Get-Content D:\home\site\wwwroot\<YourFunctionName>\filename.csv
获取内容D:\home\site\wwwroot\\filename.csv
下面是一个示例输出,用于将区号加载到状态映射文件

2017-03-11T09:21:57.185 Function started (Id=9c93e8cf-4cf0-487e-b86e-02e57b41b8de)
2017-03-11T09:21:58.357 Area code,State,State code
2017-03-11T09:21:58.357 201,New Jersey,NJ
2017-03-11T09:21:58.357 202,"Washington,DC",DC
2017-03-11T09:21:58.357 203,Connecticut,CT
2017-03-11T09:21:58.357 205,Alabama,AL
....<more logging>....
2017-03-11T09:21:57.185功能启动(Id=9c93e8cf-4cf0-487e-b86e-02e57b41b8de)
2017-03-11T09:21:58.357区号,州,州代码
2017-03-11T09:21:58.357201,新泽西州新泽西州
2017-03-11T09:21:58.357202,“华盛顿特区”
2017-03-11T09:21:58.357 203,康涅狄格州,康涅狄格州
2017-03-11T09:21:58.357205,阿拉巴马州
........

其他工具和资源:

i。Kudu控制台-您可以使用Kudu控制台浏览功能应用程序的目录结构。我有时使用Kudu控制台在Azure函数运行时之外测试
run.ps1
脚本

要使用Kudu控制台,请执行以下步骤:

  • 访问Azure功能门户以获取您的功能应用程序
  • 单击功能应用程序设置->转到Kudu->调试控制台->PowerShell
  • 导航到函数目录并运行脚本,如下面的快照所示。



  • ii。带上您自己的模块-您也可以加载您自己的自定义模块,并在
    run.ps1
    脚本中使用它们。提供了如何实现这一点的详细信息。

    当情况可能发生变化时,引用绝对路径从来都不是一个好主意。要使用始终指向正确路径的变量,请执行以下操作:

    $EXECUTION\u CONTEXT\u FUNCTIONDIRECTORY
    ,该目录将返回Azure函数运行时所在的当前文件夹

    要在手头的问题中使用此选项:

    Get-Content -Path "$EXECUTION_CONTEXT_FUNCTIONDIRECTORY\filename.csv"
    
    关于这方面的文件:

    我在应用程序服务控制台中运行了此搜索:

    D:\home\site\wwwroot>set | findstr /c:wwwroot
    AZURE_JETTY93_CMDLINE=-Djava.net.preferIPv4Stack=true -Djetty.port=%HTTP_PLATFORM_PORT% -Djetty.base="D:\Program Files (x86)\jetty-distribution-9.3.25.v20180904" -Djetty.webapps="d:\home\site\wwwroot\webapps"  -jar "D:\Program Files (x86)\jetty-distribution-9.3.25.v20180904\start.jar" etc\jetty-logging.xml
    
    AZURE_JETTY9_CMDLINE=-Djava.net.preferIPv4Stack=true -Djetty.port=%HTTP_PLATFORM_PORT% -Djetty.base="D:\Program Files (x86)\jetty-distribution-9.1.0.v20131115" -Djetty.webapps="d:\home\site\wwwroot\webapps"  -jar "D:\Program Files (x86)\jetty-distribution-9.1.0.v20131115\start.jar" etc\jetty-logging.xml
    
    DEPLOYMENT_TARGET=D:\home\site\wwwroot
    
    WEBROOT_PATH=D:\home\site\wwwroot
    

    您似乎也可以使用DEPLOYMENT\u TARGET或WEBROOT\u PATH环境变量作为资源文件的基本路径。

    非常有效。这就是我一直在寻找的,非常感谢。在azure funciton中使用powershell为我工作