IGR*_*ACH 15 powershell powershell-4.0
有没有办法从去除新行out-clipboard或clip使用PowerShell?
我正在使用此代码将当前路径复制到剪贴板:
function cl() {
(Get-Location).ToString() | clip
}
Run Code Online (Sandbox Code Playgroud)
每次我使用它时,都会在复制的文本中添加一个新行.这很令人沮丧,因为我无法将其粘贴到CLI中,就像我从其他地方复制的文本一样.因为新行会在CLI上自动执行命令.
示例:我进入C:\Users并键入cl,然后我使用Alt+ SPACE+ E+ P传递文本,执行命令,我不能再输入.但是当没有新行传递文本时,没有执行任何操作,我可以继续输入.
BdN*_*504 16
使用Set-Clipboard功能:
(get-location).ToString()|Set-Clipboard
Run Code Online (Sandbox Code Playgroud)
小智 7
Add-Type -Assembly PresentationCore
$clipText = (get-location).ToString() | Out-String -Stream
[Windows.Clipboard]::SetText($clipText)
Run Code Online (Sandbox Code Playgroud)
正如@PetSerAl 在评论中指出的那样,当字符串对象通过管道发送时,PowerShell 添加了换行符。的字符串化输出Get-Location没有尾随换行符:
PS C:\> $v = (Get-Location).ToString()
PS C:\> "-$v-"
-C:\-Run Code Online (Sandbox Code Playgroud)
你可以尝试像这样:
PS C:\> $v = (Get-Location).ToString()
PS C:\> "-$v-"
-C:\-Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4490 次 |
| 最近记录: |