mono + pash : 在linux中運行PowerShell的解決方案

 

項目開發須要,須要調查在linux平臺上面運行PowerShell的方法。linux

我再微軟的官方博客中找到了PowerShell的linux平臺解決方案(http://blogs.msdn.com/b/powershell/archive/2008/04/08/powershell-on-linux-solaris-mac-etc.aspxgit

主要實現技術是:mono + pash ,其中 github

mono:開源的跨平臺.NET運行環境(http://www.mono-project.com/)shell

pash: 運行在mono環境的PowerShell開源實現方案(https://github.com/Pash-Project/Pash)session

 

一: 安裝.NET運行環境 mono測試

下載地址見官網 (http://www.mono-project.com/) blog

1) 進入mono-4.2.1 的目錄, 執行命令開發

   # ./autogenget

 

2) 獲取並安裝 monolite(包含運行mcs編譯器的相關文件),執行下面命令須要當前linux系統可以用wget命令聯網。編譯器

# make get-monolite-latest

(注:若是沒法聯網,能夠手動下載相應monolite-138-latest.tar.gz包   http://storage.bos.xamarin.com/mono-dist-master/latest/monolite-138-latest.tar.gz )


3 ) 執行make命令

# make

 

4

 

二: 安裝pash

下載地址見官網 (https://github.com/Pash-Project/Pash)
1) 解壓安裝包,進行到 Pash-master 目錄

  #cd Pash-master

2 ) 執行命令

 

可是,通過在SUSE Linux Enterprise Server 11環境上安裝mono+pash進行測試發現。雖然能夠執行大部分PowerShell命令,確並無徹底移植實現Windows平臺上PowerShell的全部命令。

(見PowerShell的命令庫 https://msdn.microsoft.com/en-us/library/powershell_mref_reference_home%28v=vs.85%29.aspx 和 Pash移植實現的命令庫  https://github.com/Pash-Project/Pash/tree/master/Source)

諸如命令 new-pssession 、New-PSsessionOption和Invoke-command 命令等不在pash的命令庫中。

相關文章
相關標籤/搜索