..... (Bu biraz kaba ve hazır olabilir yolunda derin dizini baskı ve biraz hacky ancak bir giriş dosyası okur ve bir dizin ağacı oluşturmak için giriş çizgilerinin her birinde 'ağaç' işlevini kullanır. Bu ağaç daha sonra bir çıktı dosyasına (klasörün boyutuyla birlikte) yazdırılır. BASH - Sadece ÇOK yararlı bir işleve sahip benim Bashrc dosyasında <p></p> biraz yardıma ihtiyacım
multitree()
{
while read cheese
do
pushd . > /dev/null
pushd $cheese > /dev/null
echo -e "$cheese \n\n" >> ~/Desktop/$2.txt
tree -idf . >> ~/Desktop/$2.txt
echo -e "\n\n\n" >> ~/Desktop/$2.txt
du -sh --si >> ~/Desktop/$2.txt
echo -e "\n\n\n\n\n\n\n" >> ~/Desktop/$2.txt
popd > /dev/null
done < $1
cat ~/done
}
Bu
sonu gibi bir zaman tasarrufu ve aşağıdaki gibi bir parçacığını verir:./foo
./foo/bar
./foo/bar/1
./foo/bar/1/2
vs vs ....
Ancak, ilk (ve en çok sıkıcı) Yapmam gereken şey, yalnızca en derin klasör yolunu bırakan tüm girişleri kaldırmaktır (Yukarıdaki örneği kullanarak sadece indirgenir ./foo/bar/1/2)Dosyayı daha önce işleme koymanın bir yolu var mı? ağaçtan sonra Sadece en derin seviyeleri basmak için işlev?
Python'un daha iyi bir iş çıkarması gibi bir şey biliyorum, ama benim sorunum hiç python kullanmıyorum Ve iş sistemlerinin python'u çalıştırmama izin verdiğinden emin değilim ... kendimizi değiştirmemize izin verdiler. bu yüzden çok endişelenmiyorum!
Şimdiden teşekkürler çocuklar !!
Owen.
sadece her satırında "/" karakter sayısını saymak gerekir:
Bunu bana açıklamak zorunda kalabilirsiniz ....... Adam bul sayfasına baktım ama ne demek istediğimi anlamama yardımcı olmadı ... –
Biraz düzenledim. Gerçi açıklamak için pek bir şey yok. – Wintermute
'Bul. - 2'ler yeterli olmaz. Dokunmadan sonra dene./Abcd; ln./abcd./pqrs' Not: '' ln' değil 'ln -s'… Ama +1 bu bilgi için :-) – anishsane