Basit. Dosya adlandırmada insanlar boşluk kullandığında dayanamıyorum. Bazen konsol komutlarını mahveder ve ls çıktısını çirkin yapar.
Buradaki zorluk bir program yazmaktır (sadece ascii karakterler).
- Geçerli dizindeki tüm dosyaları (dizinler dahil), '_' ile kaldırılmış veya değiştirilmiş boşluklarla değiştirir
- Çarpışmada, benzersiz bir tanımlayıcı eklemeniz gerekir (size kalmış)
- yinelenerek tüm alt dizinlere iner
UNIX tarzı yol adlarını kabul edebilirsiniz. Zaten bir Windows makinesinde bu programa kim ihtiyaç duyacak?
Bu kod golf, en kısa program kazanıyor (#ascii karakterleri). Uzaylardan çok nefret ettiğimden, her alanın iki kez sayılması gerekir.
Lütfen dilinizi, puanınızı, programınızı ve nasıl çalıştırılacağınızla ilgili kısa bir açıklama girin.
Program, Linux makinemde makul bir çaba ile derlenmeli ve yürütülmelidir.
EDIT: Etan test için bir dosya yapısı istediğinden, şu anda uygun bir dosya ağacı oluşturmak için kullandığım komut dosyası:
#!/bin/bash
rm -r TestDir
touchfiles()
{
touch my_file
touch my__file
touch "my file"
touch "my file"
touch " my_file "
}
mkdir TestDir
cd TestDir
touchfiles
for dir in "Test Sub" Test_Sub "Te stSub" Te_stSub
do
mkdir "$dir"
cd "$dir"
touchfiles
cd ..
done