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

  • boburnham

    boburnham

    11 Temmuz 2006
  • MagicofRahat

    MagicofRahat

    13 Temmuz 2007
  • Showtime

    Showtime

    21 HAZİRAN 2006