kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Cancan.1234 1
Cancan.1234
farkmt2official 1
farkmt2official
Hikaye Ekle

Hızlı Source Temizleme (Otomatik Define Silme)

  • Konuyu başlatan Konuyu başlatan Mehmetcan Y.k
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 43
  • Görüntüleme Görüntüleme 13K
3.00 yıldız(lar) 1 Değerlendirme Değerlendirenler

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

1708891559656.png


link py dosyası zaten vtye gerek yok isteyen taratsın



otomatik olarak istediğiniz defineyi silecektir

Python dosyasını çalıştırmak için aşağıdaki adımları izleyebilirsiniz:

  1. Python yüklü değilse, öncelikle bilgisayarınıza Python'u indirip kurmanız gerekmektedir. Python'un en son sürümünü Python resmi web sitesinden indirebilirsiniz:
  2. Ardından, terminal veya komut istemcisini açın. Dosya olduğu dizine gitmek için cd komutunu kullanın. Örneğin:
    cd path/to/the/directory
  3. Son olarak, Python dosyasını çalıştırmak için terminalde aşağıdaki komutu kullanın:
    python define_sil.py
  4. Program sizi klasör yolunu ve silinecek defineyi girmeniz için yönlendirecek. İstenilen bilgileri girdikten sonra işlem başlayacak ve sonuçlar ekrana yazdırılacaktır.


veya py dosyasına sağ tıkla birlikle çalıştır oradan pythonu seçip açabilirsiniz



update 0.1

Kodumuzu biraz daha eğittim mesela

##ifdeftest1
##ifdeftest2
##endif
##endifşeklindeyse yani silinmesini istediğimiz ifdefin içinde eğer başka bir endif varsa onda durmuyor devam ediyor ve bir sonraki endifde siliyor

[CODE lang="python" title="kodumuz"]import os

def ara_ve_sil(klasor_yolu, aranan_define):
for klasor, alt_klasorler, dosyalar in os.walk(klasor_yolu):
for dosya in dosyalar:
dosya_yolu = os.path.join(klasor, dosya)
try:
with open(dosya_yolu, 'r') as f:
satirlar = f.readlines()

yeni_icerik = []
silme_modu = False # İç içe geçmiş ifdef bloklarını takip etmek için
ifdef_sayaci = 0 # İç içe geçmiş ifdef bloklarını saymak için

for satir in satirlar:
if aranan_define in satir: # Aranan define'i bulduk
silme_modu = True

if silme_modu and satir.strip().startswith("#ifdef"): # İç içe geçmiş ifdef bloklarını kontrol et
ifdef_sayaci += 1

if silme_modu and ifdef_sayaci > 0: # İç içe geçmiş ifdef bloğunun içindeyiz
if satir.strip().startswith("#endif"): # İç içe geçmiş ifdef'in son endif'ine ulaştık
ifdef_sayaci -= 1
if ifdef_sayaci == 0: # İç içe geçmiş ifdef'in son endif'ini bulduk
silme_modu = False
continue

if not silme_modu or aranan_define in satir: # Silme modunda değilken veya aranan define'i içeren bir satırsa
yeni_icerik.append(satir)

with open(dosya_yolu, 'w') as f:
f.writelines(yeni_icerik)

except Exception as e:
print(f"Hata: {dosya_yolu} dosyası işlenirken bir hata oluştu: {e}")

klasor_yolu = input("Lütfen klasör yolunu girin: ")
aranan_define = input("Lütfen silinecek defineyi girin: ")

ara_ve_sil(klasor_yolu, aranan_define)
[/CODE]
 
Son düzenleme:

En Çok Reaksiyon Alan Mesajlar

Merhaba,
Genel olarak yazıyorum.
Konu Sahibi, İyi gelen yorumlara eyvallah diyip kötü gelen yoruma karşı koruma düzenine geçmesin. burası tartışma forumu herkes fikirlerini söyler.
yorum yapan arkadaşlar ise, daha iyisini yapabiliyorsa ek bir konu ile paylaşabilirler... fikriniz / düşünceniz beğenilmedi diye üstü üste olayı tartışmaya çevirmesinler.

İyi Forumlar.

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst