“Dir / s / b” Windows komut satırının Unix (QNX) eşdeğeri nedir?


9

Soru “dir / s / b filename” DOS Linux eşdeğerdir nedir? Yaklaşıyor, ancak adlandırılan tüm dosya adları için bir dosya bulma işlemi oynatıyor.

Ancak ben bir Windows makinede bir dizin ile bir dizin içeriği fark karşılaştırma yapmak ve ne bir QNX kutusunda benzer şekilde inşa edilmiş bir dizin olması gerektiğini karşılaştırmak arıyorum . Her iki makinede dizin numaralandırma komutunu çalıştırmak, yolu sınırlayan karakterleri ve kök sürücüleri dönüştürmek için bazı metin dosyası manipülasyonu yapmak ve bunları anlayışlı bir fark için uyumlu bir biçime almamak istiyorum.

Tüm alt dizinleri ve içindeki dosyaları içeren bir klasör oluşturabilir dir /b /sve çıktıları bir grup yol olarak biçimlendirebilirim ...

c:\Temp>dir /b /s
c:\Temp\Subfolder1
C:\Temp\Subfolder1\File1.txt
C:\Temp\Subfolder1\File2.txt
...

Görebildiğim dir /solur ls -Rama bunu nasıl alabilirim /Bbiçimlendirme yolu çıkışının eşdeğer?


6
Cevap, diğer sorudakiyle aynıdır, ancak -nameseçeneği bırakmanız dışında , isme göre filtrelenmez.
Barmar

Yanıtlar:


14

findsize ihtiyacınız olan her şeyi verebilir. Yalnızdan daha fazla test gerçekleştirdiğinden biraz daha fazla yüke sahiptir ls, ancak çıktıdaki yol bilgisini istiyorsanız, bunu başarmanın en basit yolu olabilir.

Eğer iki sistem karşılaştırmak için gidiyoruz, o zaman muhtemelen ilk ve takas düzenlerken bazı metinleri yapmalıdır \ile /ve kaldırmak C:önek. Sonra listeleri sıralayın diffve değişiklikleri belirlemek için kullanın . sedburada arkadaşın olacak. Bunu da isterseniz bir yorum ile takip edin.


18

lsİstediğinizi yapacak bir bayrak yoktur, ancak bunu en kolay olan (muhtemelen) diğer birkaç araçla başarabilirsiniz find:

find .

2
ya da sadece find Varsayılan ifade.
user4556274

3
Doğru. Her neyse, Q / A yayınlarına varsayılanları dahil etmenin iyi bir uygulama olduğunu düşünüyorum, çünkü herkes için açık olmayabilir.
Bruno9779

19
@ user4556274 GNU için olabilir find, ancak diğer uygulamalar POSIX standardını izler ve bir dizin işlenen gerektirir.
Kusalananda

5

ağaç -if

-i girintili değil -f yazdırılacak yol


İlginç, cevabınıza bazı konsol çıktıları gösterin; Bu komutu QNX -bash: tree: command not found
kutumdan bulamıyorum

Telefonumdayım, bu yüzden test edemem, ancak linux.die.net/man/1/tree
Stephen C

1
Bu geliyor mama.indstate.edu/users/ice/tree ve olarak paketlenmiş treeLinux dağıtımlarının bir dizi.
deltab

treedizin yapısını incelemek için tercih ettiğim araç, ancak çoğu sistemde varsayılan olarak yüklü değil.
Bruno9779

5

Gerçek yolun önekini almak için (bunun önemli olduğunu varsayarak),

find "$(pwd)"

Eğer bash benzeri bir kabuk kullanıyorsanız, harici bir komut çağırmanıza gerek yoktur; find "${PWD}"yeterli olmalı. QNX üzerinde çalışıp çalışmadığından emin değilim.
CVn

@ MichaelKjörling: Eğer gerçek yol yerine sembolik yol istiyorsanız ...
Joshua

Doğru, her birinin kesin semantiğine bağlı olabilir. En azından GNU bash'ın yerleşik pwd/ harici / bin / pwd'ye de sahip olduğunu ve bunun da sembolik bağlantıların eriştiği dizinleri nasıl işlediklerinde farklı olduğunu unutmayın.
CVn
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.