dos2unix
Komutu bir klasördeki tüm dosyalara ve alt klasörlerine karşı çalışacak şekilde uygulamanın bir yolu var mı ?
bunu kolaylaştıracak man dos2unix
herhangi bir -r
veya benzer seçenek göstermiyor mu?
dos2unix
Komutu bir klasördeki tüm dosyalara ve alt klasörlerine karşı çalışacak şekilde uygulamanın bir yolu var mı ?
bunu kolaylaştıracak man dos2unix
herhangi bir -r
veya benzer seçenek göstermiyor mu?
Yanıtlar:
İkili dosyaları ve gizli dosyaları atlamak benim için önemliydi:
Bu benim için iyi çalıştı:
find . -type f -not -path '*/\.*' -exec grep -Il '.' {} \; | xargs -d '\n' -L 1 dos2unix -k
Bunun anlamı şudur: gizli olmayan tüm dosyaları geçerli dizinde özyinelemeli olarak bulun, ardından grep'i kullanarak, tüm ikili olmayan (-I) boş olmayan dosyaları listeleyin, ardından her seferinde bir dosyaya xargs (yeni satırlarla ayrılmış) olarak ekleyin dos2unix ve orijinal zaman damgasını saklayın.
Ayrıca bakınız:
Dos2unix komutunuz aracılığıyla çalıştırmak istediğiniz bir dizin yapısındaki tüm dosyaları bulmak için find komutunu kullanabilirsiniz
find /path/to/the/files -type f -exec dos2unix {} \;
Bulmak için man sayfalarına bir göz atın, neyin değerlendirildiğini belirtmek için kullanabileceğiniz birçok seçenek var
Kullanma bash
:
shopt -s globstar
dos2unix **
globstar
Shell seçeneği bash
kullanımını sağlayan **
topak. Bu aynı şekilde çalışır *
ancak /
yol adlarında eşleşir (bu nedenle alt dizinlerdeki adlarla da eşleşir ). Bu, alt dizinlerinde (binlerce değil) az sayıda dosya içeren bir dizinde çalışır.
İçinde zsh
ve içinde yash
( set -o extended-glob
içinde yash
), yapardın
dos2unix **/*
dos2unix
varsayılan olarak ikili dosyaları atlar.