Nếu tôi muốn kết hợp hai chuỗi thành một đường dẫn tệp, tôi sử dụng Join-Path
như sau:
$path = Join-Path C: "Program Files"
Write-Host $path
Bản in đó "C:\Program Files"
. Nếu tôi muốn thực hiện việc này với nhiều hơn hai chuỗi:
$path = Join-Path C: "Program Files" "Microsoft Office"
Write-Host $path
PowerShell thông báo lỗi:
Tham số đường dẫn: Không thể tìm thấy tham số vị trí chấp nhận đối số 'Microsoft Office'.
Tại D: \ users \ ma \ my_script.ps1: 1 char: 18
+ $ path = join-path <<<< C: "Program Files" "Microsoft Office"
+ CategoryInfo: InvalidArgument: (:) [Tham gia đường dẫn] , ParameterBindingException
+ CompleteQualifiedErrorId: PositionalParameterNotFound, Microsoft.PowerShell
.Commands.JoinPathCommand
Tôi đã thử sử dụng một mảng chuỗi:
[string[]] $pieces = "C:", "Program Files", "Microsoft Office"
$path = Join-Path $pieces
Write-Host $path
Nhưng PowerShell nhắc tôi nhập đường dẫn con (vì tôi không chỉ định -childpath
đối số), ví dụ: "somepath", rồi tạo ba đường dẫn tệp,
C:\somepath
Program Files\somepath
Microsoft Office\somepath
mà cũng không đúng.