使用 Visual Studio Code 比较两个字符串?

ca9*_*3d9 3 powershell visual-studio-code

Visual Studio Code 可用于比较文件。

"%LOCALAPPDATA%\Programs\Microsoft VS Code\code.exe" --diff file1.cs file2.cs
Run Code Online (Sandbox Code Playgroud)

但是,是否可以使用它来比较存储在 PowerShell 变量中的两个文本?

$s1 = "abc
cde"
$s2 = "abc
xyz"
& "%LOCALAPPDATA%\Programs\Microsoft VS Code\code.exe" --diff ....?
Run Code Online (Sandbox Code Playgroud)

Compare-Object如果两条文本不同,该cmdlet 仅显示它们。当文本很大时,它真的没什么用。

Kor*_*ill 5

VSCode 只会比较文件,因此请将缓冲区保存到文件中。

$s1 = "abc
cde"
$s2 = "abc
xyz"

$f1 = New-TemporaryFile
$f2 = New-TemporaryFile

$s1 | Out-File $f1.FullName
$s2 | Out-File $f2.FullName

& "C:\Program Files\Microsoft VS Code\Code.exe" --diff $f1.FullName $f2.FullName

Read-Host -Prompt "Hit ENTER after you have compared temp files, and they will be deleted"

Write-Host "Removing $($f1.FullName) and $($f2.FullName)"

Remove-Item $f1.FullName
Remove-Item $f2.FullName
Run Code Online (Sandbox Code Playgroud)