PowerShell中乙個分號引發的問題

2022-02-22 12:58:55 字數 1398 閱讀 6571

今天在用start-process這個cmdlet去新開乙個視窗執行powershell的時候遇到的乙個問題

看一下測試**:

以下這個ps**命名為profile.ps1,並且儲存在%userprofile%\my documents\windowspowershell這個目錄下

它就相當於是執行powershell時自動載入的指令碼,**如下

function

print

然後再有一段執行的**

function test-print 

test-print "

test1;ok""

test2

"

最後輸出的結果是這樣的

我本意是想輸出

test1;ok

test2

我們可以在d:\t.log檔案中看到這樣的錯誤資訊

the term 'ok' is not recognized as the name of a cmdlet, function, script file,

or operable program. check the spelling of the name, or if a path was included

, verify that the path is correct and try again.

at line:1 char:15

+ print test1;ok <<<

+ categoryinfo          : objectnotfound: (ok:string) , commandnotfounde

xception

+ fullyqualifiederrorid : commandnotfoundexception

就是說引數中的分號將它們分開為兩個語句了,所以在上下文中並沒有定義ok這個東西,所以報這個錯。

我嘗試以為可以將分號轉義,所以這樣執行

test-print "

test1`;ok""

test2

"

一樣的錯誤

我再使用雙引號試試?

test-print "

`"test1;ok`"""

test2

"

依然是一樣的錯誤

好吧!咱就只能傳陣列,在函式中自己解決這個問題了!?求高人指點

還有乙個問題,就是想上面這樣,雙引號也是無法傳給print這個函式的

就是說我想列印出的結果想是這樣的

「test1」

test2

但實際列印的確是

test1

test2

乙個分號引發的「血案」

再多的表情也無法詮釋我現在的心情!a b for matrices 這是很水的一道題,然而卻整整折騰了我2個多小時。從晚上6點多開始,花了沒幾分鐘就把 敲好了,可是資料一測,竟然不對,然後就開始找問題,找了很久,我竟然都還沒看出問題在哪,越找心裡越不爽,這麼做明明對的呀,一執行怎麼就錯了呢?一直到了...

居中乙個元素

1.行內元素水平居中 利用 text align center 可以實現在塊級元素內部的行內元素水平居中。此方法對inline inline block inline table和inline flex元素水平居中都有效。parent此外,如果塊級元素內部包著也是乙個塊級元素,我們可以先將其由塊級元...

如何居中乙個div?如何居中乙個浮動元素?

居中乙個div 給div設定乙個寬度,margin 0px auto。position absolute top 50 left 50 transform translate 50 50 彈性盒居中 justify content center align items center 居中乙個浮動元素...