SORU
18 Ocak 2011, Salı


PowerShell: komut Çalıştır komut'in dizin

Bu muhtemelen oldukça basit bir soru, ama çözümü.. şimdi bulamıyorum

Bazı şeyler betiğin geçerli dizini kullanarak yaptığı PowerShell komut dosyası var. Bu dizin içinde, .\script.ps1 çalışan düzgün çalışır.

Şimdi script kaynak dizini değiştirmeden farklı bir dizinden komut dosyası aramak istiyorum. ..\..\dir\script.ps1 Ara ve hala o senaryoyu kendi dizini içinden denildiği gibi davranmanı istiyorum.

Bunu nasıl yapacağım veya nasıl herhangi bir dizinden çalıştırmak böylece komut dosyası değiştirmek?

CEVAP
18 Ocak 2011, Salı


Bir dosya komut dosyası için bir sonraki başvurmak senaryoyu kendi yolunu mu demek oluyor bu? Bunu deneyin:

$scriptpath = $MyInvocation.MyCommand.Path
$dir = Split-Path $scriptpath
Write-host "My directory is $dir"

$Myİnvocation ve özellikleri bir sürü bilgi alabilirsiniz.

Eğer geçerli çalışma dizini içinde bir dosya başvurmak istiyorsanız, Gidermek-Yol ya-Childİtem Elde etmek için de kullanabilirsiniz:

$filepath = Resolve-Path "somefile.txt"

DÜZENLE (OP yoruma dayanan):

# temporarily change to the correct folder
Push-Location $folder

# do stuff, call ant, etc

# now back to previous directory
Pop-Location

Muhtemelen buna benzer bir şey de Çağırmak-Komutunu kullanarak ulaşmanın başka yolları da var.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ChrisCrossMedia

    ChrisCrossMe

    17 EYLÜL 2009
  • circuschina

    circuschina

    16 Mart 2007
  • New Scientist

    New Scientis

    27 Kasım 2006