"." ve bir dir listesindeki “..” girişleri hep aynı mı?


13

Ne zaman "." ve ".." dizin listesindeki girişler farklı mı? (İki farklı dizini temsil ettiklerini anlıyorum, ancak her zaman varsayılan bir dir komutunda aynı tarih ve saatle aynı şekilde listeliyorlar.


1
Bir örnek verebilir misiniz (belki bir ekran görüntüsü ile)
ChrisF

Yanıtlar:


26

Gerçek listeye gelince:

27/08/2011  11:23    <DIR>          .
27/08/2011  11:23    <DIR>          ..

Her ikisi için de geçerli dizinin tarihini kullanıyorlar. Eğer başlarsanız C:\Users\Chris(söyleyin) yukarıdakileri alabilirsiniz. Ama yukarı çıktığınızda C:\Usersşunları elde edersiniz:

26/07/2011  21:20    <DIR>          .
26/07/2011  21:20    <DIR>          ..

Dolayısıyla, ..ilk durumda tarih ., ikincideki tarih ile aynı değildir . Aynı dizin olduğu için (veya olması gerektiği gibi) yanlıştır. Bununla birlikte, .ve ..geçerli ve üst dizine yapılan başvurulardır ve her ikisi de aynı anda - dizin oluşturulduğunda - oluşturulur, bu yüzden doğrudur (bunu belirtmek için Synetech inc'e teşekkürler)

Zaman damgalarının farklı olacağı tek zaman, biri veya diğerinin yeniden oluşturulması .veya ..yeniden oluşturulmasıdır.


Orijinal cevap:

. geçerli dizin anlamına gelir.

.. ana dizin anlamına gelir.

Yani normal şartlar altında her zaman farklıdırlar.

Aynı sonucu verdikleri tek zaman diskin kökündedir. En yüzden C:\> dir .ve dir ..aynı çıktıyı üretirler.


konuya cevap, harika.
ppuschmann

Soruyu dir listesindeki görünümleriyle ilgili olarak vurgulamak için düzenlenmiştir.
Tanık Koruma Kimliği 44583292

@mike - oyları haklı çıkarmak için gözden geçirilmiş soruya cevap vermeye çalıştı;)
ChrisF

4
Bu yanlıştır, çünkü ..üst dizinin zaman damgası verilmezse, geçerli dizinin zaman damgası verilir. Bunun nedeni, .ve ..dizin oluşturulduğunda her ikisinin de oluşturulmasıdır.
Synetech

@Synetech - Ah! Kuruş damla
ChrisF

14

Hayır, her zaman aynı olacaklar. Bunlar dosyalar değil, dizinler olduğu için (bunlar normal dizinler bile değildir, eL01'in söylediği gibi işaretçilerdir , bu nedenle normal dizinlerden daha farklı şekilde ele alınırlar).

Bir dizin oluşturduğunuzda, otomatik olarak iki giriş oluşturulur:

  • . yeni oluşturulan dizini gösterir
  • .. yeni dizinin ebeveynini gösteriyor

Açıkçası ., dizinin oluşturulduğu geçerli tarih ve saate sahip olacak ve kopyalanacak üst dizinin zaman damgası için mantıklı görünse de .., bu şekilde çalışmaz. Yeni bir dizin oluşturduğunuzda, her iki işaretçi de geçerli tarih ve saati alır. Bu FAT * ve NTFS üzerinde DOS'tan Windows 7'ye durumdur.


1
+1, ChrisF'in şu anda sunduğu cevapla gelen sizsiniz gibi görünüyor ;-)
Jonas Heidelberg

@Jonas, aslında, ChrisF'in yanıtı çoğu insanın yaptığı yanlış varsayımı yapar: bu ..ebeveynin zaman damgasına sahip olacaktır. (Bir gün, yeni bir dosya sistemi olan WinFS? Nihayet bu şekilde yapsaydı şaşırmazdım).
Synetech

4. revizyonundan başlayarak artık bu varsayımı yapmadığını söyleyebilirim.
Jonas Heidelberg

@Jonas, ah tamam. Düzenlemeleri görmedim. Ah, yine de yeni oylar alıyor; Sanırım düzenleme fonksiyonunun anlamı bu.
Synetech

En son revizyonda sana güvenmeliydim - şimdi yapacağım.
ChrisF

4

Aslında size kanıt veremem, ama bence: Her dizinin içerdiği dizin ve dosyaların bir listesi vardır. Göreli yolları kullanmayı mümkün kılmak için her dizinin bu iki işaretçiye ihtiyacı vardır - biri kendisine .ve diğeri bir düzey yukarıda ..- bu iki işaretçi dizinin kendisinin yaratıldığı anda oluşturulur.

Yani zaman damgası ..aslında yukarıdaki dizinin zaman damgası değil, işaretçinin yukarıdaki dizine olan zaman damgasıdır .


Bu doğru. ..Geçerli dizin oluşturulduğunda giriş geçerli tarih ve zaman damgası verilir.
Synetech
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.