1
我幾乎沒有使用PowerShell的經驗,因此我試圖在輸入二進制文件時進行一些按位操作(純粹爲了便於閱讀)。我使用以下函數來轉換和從二進制,他們似乎工作。作爲PowerShell函數參數的表達式
function bin($a){
return [convert]::ToString($a,2)
}
function unbin($a){
return [convert]::ToInt64($a,2)
}
然後我試圖運行以下命令:
bin(unbin('11001101') -bxor unbin('10110110'))
期待輸出1111011
。
令我驚訝的是我得到結果11001101
(bin(unbin('11001101'))
的結果)。
爲了讓我的代碼工作,我需要包裝在進一步括號中的unbin
電話,我不明白爲什麼:
bin((unbin('11001101')) -bxor (unbin('10110110')))
爲什麼這些額外的括號需要的?
好了,這是偉大的,那麼爲什麼對象的方法需要括號例如''test「.Split」e「''在'test'時不起作用.Split(」e「)'會做什麼? –
注意我幾乎沒有使用PowerShell的經驗,所以在這一點上,我的cmdlet,方法等之間的區別就會消失。 –
.NET方法的調用方式與它們在C#中的工作方式類似。 Cmdlet和函數的設計 - 畢竟它是一個shell,更像shell命令,其參數只是用空格分隔。 – Joey