Microsoft Windows Ailesi İşletim Sistemleri
Dosya İsimlerine Göre Otomatik Klasörlere Dosya Atma [Aklınıza Kuvvet]
Dosya İsimlerine Göre Otomatik Klasörlere Dosya Atma [Aklınıza Kuvvet]
-
Yaklaşık 1300 adet pdf dosyam var.
07BHE737.pdf
06HAT25.pdfgibi..
klasör isimlerim ise direkt dosya isimleriyle aynı07BHE737
06HAT25 şeklinde...
Ben bu dosyaları bu klasörlere otomatik nasıl atarım?
bunun için bir program var mıdır? -
Daha önce şöyle çözmüştüm hocam
Klasörün içindeki bütün dosyaları seçip sağ tıklıyosun.
Winrar seçeneğinin üzerine gelip arşive ekle seçeneğini seçiyosun.
Önüne çıkan winrar penceresinde dosyalar sekmesine tıklayıp, alttaki seçeneklerde "her dosyayı ayrı arşive yerleştir" seçeneğini işaretliyosun.
Sonra seçtiğin 1300 dosya ayrı ayrı winrar dosyası oluyor.
O winrar dosyalarını seçip sağ tıklayıp winrar seçeneğinin altından "her arşivi ayrı klasöre ayıkla" seçeneğini seçiyosun.
veeee magic happenss 1300 tane ayrı klasörün olmuş oluyor :)
Hatta bak deneme için ekran kaydıda aldım
-
Piratebay bunu yazdı
Daha önce şöyle çözmüştüm hocam
Klasörün içindeki bütün dosyaları seçip sağ tıklıyosun.
Winrar seçeneğinin üzerine gelip arşive ekle seçeneğini seçiyosun.
Önüne çıkan winrar penceresinde dosyalar sekmesine tıklayıp, alttaki seçeneklerde "her dosyayı ayrı arşive yerleştir" seçeneğini işaretliyosun.
Sonra seçtiğin 1300 dosya ayrı ayrı winrar dosyası oluyor.
O winrar dosyalarını seçip sağ tıklayıp winrar seçeneğinin altından "her arşivi ayrı klasöre ayıkla" seçeneğini seçiyosun.
veeee magic happenss 1300 tane ayrı klasörün olmuş oluyor :)
Hatta bak deneme için ekran kaydıda aldım
ağmına aynısını yaptım girdim atmaya yükleyecegim site bile aynıydı puh, eline sağlık :D
-
dcpromo bunu yazdı
ağmına aynısını yaptım girdim atmaya yükleyecegim site bile aynıydı puh, eline sağlık :D
ekran kaydınıda obs üzerinden aldım dersen kahkaha atarım hocam :D
-
Piratebay bunu yazdıdcpromo bunu yazdı
ağmına aynısını yaptım girdim atmaya yükleyecegim site bile aynıydı puh, eline sağlık :D
ekran kaydınıda obs üzerinden aldım dersen kahkaha atarım hocam :D
:D:D yeni format attıydım 2 dk camtasia kurdum onun için
-
Pratik zekaların hayranıyız :)
hali hazırda varolan klasörlere de atar diye umuyorum yarın deneyeceğim :)
-
Basit bir script ile;
Python da ;
import os import shutil def PDF_TASI(pdf_klasor_yol): # Tüm PDF dosyalarını al pdf_files = [file for file in os.listdir(pdf_klasor_yol) if file.endswith(".pdf")] for pdf_file in pdf_files: # Dosya adını al, .pdf uzantısını kaldır ve klasör adı olarak kullan folder_name = os.path.splitext(pdf_file)[0] # Klasörü oluştur folder_path = os.path.join(pdf_klasor_yol, folder_name) os.makedirs(folder_path, exist_ok=True) # Dosyayı klasöre taşı pdf_file_path = os.path.join(pdf_klasor_yol, pdf_file) shutil.move(pdf_file_path, os.path.join(folder_path, pdf_file)) if __name__ == "__main__": # PDF dosyalarının bulunduğu dizin pdf_klasor_yol = "c:\pdfler" PDF_TASI(pdf_klasor_yol) print("Dosyalar klasörlere taşındı.")
__________________________________________________________________________________________________________
VB Script ile;
Option Explicit Sub PDF_TASI(pdf_klasor_yol) Dim fso, folder, file, pdfFiles, folderName, folderPath, pdfFilePath Set fso = CreateObject("Scripting.FileSystemObject") Set folder = fso.GetFolder(pdf_klasor_yol) Set pdfFiles = folder.Files For Each file in pdfFiles If LCase(fso.GetExtensionName(file.Path)) = "pdf" Then ' Dosya adını al, .pdf uzantısını kaldır ve klasör adı olarak kullan folderName = fso.GetBaseName(file.Name) ' Klasörü oluştur folderPath = fso.BuildPath(pdf_klasor_yol, folderName) fso.CreateFolder(folderPath) ' Dosyayı klasöre taşı pdfFilePath = fso.BuildPath(pdf_klasor_yol, file.Name) fso.MoveFile pdfFilePath, fso.BuildPath(folderPath, file.Name) End If Next Set fso = Nothing End Sub ' PDF dosyalarının bulunduğu dizini belirtin Dim pdf_klasor_yol pdf_klasor_yol = "C:\pdfler" Call PDF_TASI(pdf_klasor_yol) MsgBox "Dosyalar klasörlere taşındı.", vbInformation
_________________________________________________________________________________________________
C# da;
using System; using System.IO; class Program { static void PDF_TASI(string pdf_klasor_yol) { string[] pdfFiles = Directory.GetFiles(pdf_klasor_yol, "*.pdf"); foreach (string pdfFile in pdfFiles) { // Dosya adını al, .pdf uzantısını kaldır ve klasör adı olarak kullan string folderName = Path.GetFileNameWithoutExtension(pdfFile); // Klasörü oluştur string folderPath = Path.Combine(pdf_klasor_yol, folderName); Directory.CreateDirectory(folderPath); // Dosyayı klasöre taşı string pdfFilePath = Path.Combine(pdf_klasor_yol, pdfFile); string newFilePath = Path.Combine(folderPath, Path.GetFileName(pdfFile)); File.Move(pdfFilePath, newFilePath); } } static void Main() { // PDF dosyalarının bulunduğu dizini belirtin string pdf_klasor_yol = @"C:\pdfler"; PDF_TASI(pdf_klasor_yol); Console.WriteLine("Dosyalar klasörlere taşındı."); } }
-
Piratebay bunu yazdı
Daha önce şöyle çözmüştüm hocam
Klasörün içindeki bütün dosyaları seçip sağ tıklıyosun.
Winrar seçeneğinin üzerine gelip arşive ekle seçeneğini seçiyosun.
Önüne çıkan winrar penceresinde dosyalar sekmesine tıklayıp, alttaki seçeneklerde "her dosyayı ayrı arşive yerleştir" seçeneğini işaretliyosun.
Sonra seçtiğin 1300 dosya ayrı ayrı winrar dosyası oluyor.
O winrar dosyalarını seçip sağ tıklayıp winrar seçeneğinin altından "her arşivi ayrı klasöre ayıkla" seçeneğini seçiyosun.
veeee magic happenss 1300 tane ayrı klasörün olmuş oluyor :)
Hatta bak deneme için ekran kaydıda aldım
peki hocam, dosya isimlerinde belli bir kelime veya kelime grubuna göre klasörlemek istesek nasıl yapabiliriz?
örneğin;
brad pitt - oceans eleven
george clooney brad pitt - oceans twelve
brad pitt - oceans thirteen
johhny depp - pirates of caribbean 1
orlando bloom johhny depp - pirates of caribbean 2
johhny depp - pirates of caribbean 3
şeklinde dosyalar var.
bu dosyaları "brad pitt" ve "johhny depp" olarak klasörlere atmak istesem nasıl bir yol izleyebilirim?
windows veya macOS üzerinde nasıl yapabilirim?
-
LynXMaSTeR bunu yazdı
peki hocam, dosya isimlerinde belli bir kelime veya kelime grubuna göre klasörlemek istesek nasıl yapabiliriz?
örneğin;
brad pitt - oceans eleven
george clooney brad pitt - oceans twelve
brad pitt - oceans thirteen
johhny depp - pirates of caribbean 1
orlando bloom johhny depp - pirates of caribbean 2
johhny depp - pirates of caribbean 3
şeklinde dosyalar var.
bu dosyaları "brad pitt" ve "johhny depp" olarak klasörlere atmak istesem nasıl bir yol izleyebilirim?
windows veya macOS üzerinde nasıl yapabilirim?
Yine script ile;
python ekleme;
dosya_adi="george clooney brad pitt - oceans twelve".lower()
if "george clooney" in dosya_adi and "brad pitt" in dosya_adi:
print("ikiside var")
elif "george clooney" in dosya_adi:
print("george clooney klasörüne")
elif "brad pitt" in dosya_adi:
print("brad pitt klasörüne")
else:
print("hiçbiri yok")vbscript de; "If InStr(dosya_adi, "george clooney") > 0 Then" dögüsü işe yarar
C#'da da zaten String.Contains methodu var.
cukurova tarafından 31/Tem/23 02:39 tarihinde düzenlenmiştir -
En kolayı excelde batch komutu üretmek.
piton plugini patlamış bu arada error ondan
-
cukurova bunu yazdı
Basit bir script ile;
bu tarz işler için en iyi dilin groovy olduğuna karar verdim. bir süredir groovy kullanıyorum. bütün java kütüpleri elimin altında ve syntaxı çok şeker. sadece stream().parallel() yazarak tüm işi multi threaded yapabiliyorsun.
import java.nio.file.Files import java.nio.file.Paths def currentDir = Paths.get(".") Files.list(Paths.get(".")) .filter { it.endsWith(".pdf") } .collect { it.toString() } .stream().parallel() .forEach { def folderName = it.getFileName().toString().replace(".pdf", "") def newDir = currentDir.resolve(folderName) if (!Files.exists(newDir)) { Files.createDirectory(newDir) } Files.move(file, newDir.resolve(file.getFileName())) }
yolbulucu tarafından 31/Tem/23 11:29 tarihinde düzenlenmiştir