about_Path_Syntax

Kısa açıklama

PowerShell'deki tam ve göreli yol biçimlerini açıklar.

Uzun açıklama

PowerShell sağlayıcısı aracılığıyla erişilebilen bir veri deposundaki tüm öğeler, yol adlarıyla benzersiz olarak tanımlanabilir. Yol, öğe adı, öğenin bulunduğu kapsayıcı ve alt kapsayıcılar ile kapsayıcıların erişildiği PowerShell sürücüsünün birleşimidir.

PowerShell'de yol adları iki türden biri olabilir: tam vegöreli. Tam yol, yolu oluşturan tüm öğelerden oluşur. Aşağıdaki söz dizimi, tam yol adındaki öğeleri gösterir:

[<provider>::]<drive>:[\<container>[\<subcontainer>...]]\<item>

Yer tutucusu <provider> , veri deposuna erişebileceğiniz PowerShell sağlayıcısına başvurur. Örneğin, FileSystem sağlayıcısı bilgisayarınızdaki dosyalara ve dizinlere erişmenizi sağlar. Söz diziminin bu öğesi isteğe bağlıdır ve sürücü adları tüm sağlayıcılarda benzersiz olduğundan hiçbir zaman gerekli değildir.

Yer tutucu, <drive> belirli bir PowerShell sağlayıcısı tarafından desteklenen PowerShell sürücüsüne başvurur. FileSystem sağlayıcısı söz konusu olduğunda, PowerShell sürücüleri sisteminizde yapılandırılan Windows sürücüleriyle eşlenir. Örneğin, sisteminiz bir A: sürücü ve C: bir sürücü içeriyorsa, Dosya Sistemi sağlayıcısı PowerShell'de aynı sürücüleri oluşturur.

Sürücüyü belirttikten sonra, öğeyi içeren kapsayıcıları ve alt kapsayıcıları belirtmeniz gerekir. Kapsayıcılar, veri deposunda bulundukları hiyerarşik sırada belirtilmelidir. Başka bir deyişle, her alt kapsayıcı için deseni yineleyerek üst kapsayıcıyla, sonra da bu üst kapsayıcıdaki alt kapsayıcıyla başlamanız gerekir. Ayrıca, her kapsayıcının önünde ters eğik çizgi bulunmalıdır.

Not

PowerShell, diğer platformlarda PowerShell ile uyumluluk için ters eğik çizgi veya eğik çizgi kullanmanıza olanak tanır. Bu, PowerShell komutlarında çalışır, ancak yalnızca yerel dizin ayırıcısını bekleyen yerel uygulamalarla kullanıldığında çalışmayabilir. Platformunuz için kullanılan karakteri bulmak için kullanın [System.IO.Path]::DirectorySeparatorChar .

Kapsayıcı ve alt kapsayıcılar belirtildikten sonra, önce ters eğik çizgi olan öğe adını sağlamanız gerekir. Örneğin, dizindeki C:\Windows\System32 dosyanın tam yol adı Shell.dll aşağıdaki gibidir:

C:\Windows\System32\Shell.dll

Bu durumda, kapsayıcılara erişilen sürücü sürücüdür C: , en üst düzey kapsayıcı ise Windowsalt kapsayıcıdır System32ve öğe olur Shell.dll.

Bazı durumlarda, tam yol belirtmeniz gerekmez ve bunun yerine göreli yol kullanabilirsiniz. PowerShell, bir öğeyi geçerli çalışma konumuna göre konumunu temel alarak tanımlamanızı sağlar.

PowerShell, göreli yolları belirtmek için aşağıdaki karakter dizilerini kullanır.

  • (.) - Geçerli konum
  • (..) - Geçerli konumun üst öğesi
  • (\) - Geçerli konumun kökü

Aşağıdaki örnekler, olarak ayarlanan geçerli çalışma dizinini C:\Windowstemel alır.

  • Göreli yol .\System şu şekilde çözülür: C:\Windows\System
  • Göreli yol ..\Program Files şu şekilde çözülür: C:\Program Files
  • Göreli yol \Program Files şu şekilde çözülür: C:\Program Files
  • Göreli yol System şu şekilde çözülür: C:\Windows\System

Komutta yol kullanırken, tam yol veya göreli yol kullanabilirsiniz. Örneğin, geçerli çalışma dizininizin olduğunu C:\Windowsvarsayalım. Aşağıdaki Get-ChildItem komut dizindeki C:\TechDocs tüm öğeleri alır:

Get-ChildItem \TechDocs

Ters eğik çizgi, geçerli çalışma konumunun sürücü kökünün kullanılması gerektiğini belirtir. Çalışma dizini olduğundan C:\Windows, sürücü kökü sürücüdür C: . TechDocs Dizin kökten uzak olduğundan yalnızca ters eğik çizgi belirtmeniz gerekir.

Tam yolu kullanarak aynı sonuçları elde edersiniz:

Get-ChildItem C:\TechDocs

Tam yol veya göreli yol adı kullanmanızdan bağımsız olarak, yol yalnızca bir öğeyi bulacağından değil, aynı zamanda öğe farklı bir kapsayıcıdaki başka bir öğeyle aynı adı paylaşsa bile öğeyi benzersiz olarak tanımladığından da önemlidir.

Örneğin, her birinde adlı Results.txtiki dosyanız olduğunu varsayalım. İlk dosya adlı C:\TechDocs\Janbir dizinde, ikinci dosya ise adlı C:\TechDocs\Febbir dizindedir. İlk dosyanın yolu (C:\TechDocs\Jan\Results.txt) ve ikinci dosyanın yolu (C:\TechDocs\Feb\Results.txt) iki dosyayı net bir şekilde ayırt etmenizi sağlar.

Ayrıca bkz.