Dosya

Bu nesne, yürütme aşamasında okunacak veya yazılacak bir dosyayı ya da dizini temsil etmek için analiz aşamasında oluşturulur. Açık bir dosya imleci değildir ve dosya içeriğini doğrudan okumak veya yazmak için kullanılamaz. Bunun yerine, işlem oluşturma işlevlerine ileterek kural uygulama işlevinde işlem grafiğini oluşturmak için kullanırsınız. Daha fazla bilgi için Kurallar sayfasına bakın.

Bir File, map_each işlevi kullanılmadan bir Args nesnesine iletildiğinde path alanının değeri alınarak dizeye dönüştürülür.

Üyeler

basename

string File.basename

Bu dosyanın temel adı. Bu, dizin içindeki dosyanın adıdır.

dirname

string File.dirname

Bu dosyayı içeren dizinin adı. yol parametresinden alınır ve her zaman yürütme dizine görelidir.

uzantı

string File.extension

En sağdaki noktanın ardından (dahil değil) gelen bu dosyanın dosya uzantısı. Dosyanın temel adı nokta içermiyorsa boş dize.

is_directory

bool File.is_directory

Dizine aitse doğru değerini döndürür.

is_source

bool File.is_source

Kaynak dosyaysa (yani oluşturulmamışsa) doğru değerini döndürür.

sahibi

Label File.owner

Bu dosyayı oluşturan bir hedefin etiketi. None değerini döndürebilir.

yol

string File.path

Bu dosyanın, çalışma alanının yürütme dizine göre yürütme yolu. İki bölümden oluşur: root adlı isteğe bağlı bir ilk bölüm (root modülüne de bakın) ve short_path olan ikinci bölüm. Kök boş olabilir. Bu durum, genellikle oluşturulmamış dosyalar için geçerlidir. Oluşturulan dosyalar için genellikle, söz konusu dosya oluşturulurken kullanılan hedef CPU mimarisi gibi öğeleri kodlayan, yapılandırmaya özel bir yol parçası içerir. Bir ikili dosyanın çalıştırma dosyalarındaysa dosyanın eşlendiği yol için short_path kullanın.

kök

root File.root

Bu dosyanın bulunduğu kök.

short_path

string File.short_path

Bu dosyanın köküne göre yolu. Yukarıda belirtilen root (yani yolun yapılandırmaya özgü parçaları) bu kapsamda değildir. Bu, bir ikili programın çalışma dosyalarında yer alan dosyanın eşlendiği yoldur.

tree_relative_path

string File.tree_relative_path

Üst öğenin is_directory alanı doğruysa bu dosyanın, üst öğenin ağacının köküne göre yolu. tree_relative_path yalnızca bir işlem komutundaki (ör. Args.add_all()) bir dizinin genişletilmiş dosyaları için kullanılabilir. Diğer dosya türlerinde bu alana erişmek hata verir.