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

  • eyes4beautee

    eyes4beautee

    17 HAZİRAN 2011
  • Murray Winiata

    Murray Winia

    2 ŞUBAT 2009
  • whiteboy7thst

    whiteboy7ths

    1 Temmuz 2009