Skip to content

pythonda dosya içeriği karşılaştırma

iki text dosya içeriği arasındaki farkları bulmak için temel olarak dosyaları satır satır olarak okuyup satıları karşılaştırmak gerekmektedir. bu işlemi kod olarak basitleştirme adına python kullanabilieceğiniz bir çok kütüphane bulunmaktadır. bunlardan en kullanışlarıdan bir tanesi difflib dir.

aşagıdaki örnekte importlardan sonra dosyaların içeriğindeki satırları bir diziye atadıktan sonra difflib de dizi girişlerini ve istediğimiz çıktıyı tanımlarıyoruz..

import difflib
from pathlib import Path

first_file_lines = Path('fileA.txt').read_text().splitlines()
second_file_lines = Path('fileB.txt').read_text().splitlines()

html_out = difflib.HtmlDiff().make_file(first_file_lines, second_file_lines)
Path('diff_output.html').write_text(html_out)
fileA.txtfileB.txt
first_file_lines = Path(‘fileA.txt’)
second_file_lines = Path(‘fileB.txt’)
first_file_lines = Path(‘fileA.txt’)
second_file_lines = Path(‘file2.txt’).read_text()

diff_output.html aşagıdaki şekilde görülecektir.

ngrok – statik ip ye sahip olmayan natlanmış kullanıcılar için

snap destekli bir linux dağıtım kullanıyorsanız

 snap install ngrok 

ile kurulumu yapalım. üyelik gerektiren

https://dashboard.ngrok.com/get-started/setup

adresine girerek tunel oluşumu için kullanılacak authtoken bilgisini ögrenelim ve

ngrok config add-authtoken <token>

ile bağlantıyı gerçekleştirelim. sonrasında bilgisayarımızdaki protokol ve portu tunelliyelim.

ngrok http 80

ekran çıktısında Forwarding satırında dış dünyadan bilgisayarımıza erişebileceğiniz bir ngrok.io adresi yer alacaktır.

Forwarding                    https://xxxx-xx-xxx-xx-xx.eu.ngrok.io -> http://localhost:80      

bundan sonra olası tüm riskler tabiki sizeaittir 🙂

google haritalarda gariplikler

google haritalarda yer alan garip görüntüler bir ara çok popülerdi. istanbulda bir noktaya bakarken aşagıdali google-maps model bir minbüsle karşılaştım.

huawei network ekipmanları kart bilgisi

huawei network ekipmanlarında yazılım güncellemeri sonrası “display elabel” komutu çok daha kullanışlı duruma geldi.

herhangi bir router üzerinde kart hakkında temel bilgileri edinmek istersek aşagıdaki komut işimize yaracakır.

<router_fcicek>display  elabel brief 
Slot      BoardType            BarCode                         Description
================================================================================
LPU 2      CR57L2XEFGB23       211235505210M8123117            LPUI-51-E-2x10GBase LAN/WAN-SFP+ 
                                                               + 24xGE-SFP                       
  PIC 0    CR57L2XFC2          123PMJCNM8123036                2*10GBase LAN/WAN-SFP+           
  PIC 1    CR57EFGFB2          123PMHW0M7123064                24*100/1123Base-X-SFP            
LPU 3      CR57L2XEFGB23       211235505210M7123046            LPUI-51-E-2x10GBase LAN/WAN-SFP+ 
                                                               + 24xGE-SFP                       
  PIC 0    CR57L2XFC2          123PMJCNM1234001                2*10GBase LAN/WAN-SFP+           
  PIC 1    CR57EFGFB2          123PMHW0M1234417                24*100/1123Base-X-SFP            
MPU 4      CR52MPUD0           123KKR10A1234036                                                 
MPU 5      CR52MPUD0           123KKR10A1234010                                                 
PWR 8      
  PEM 0                                                                                         
PWR 9      
  PEM 0                                                                                         
FAN 10                                                                                          
<router_fcicek>

eğer belirli bir slot veya sub slot hakkında daha detaylı bilgi almak istersek brief parametresi yerine slot numarasnı yazmak yeterli olacaktır.

<router_fcicek>display  elabel 2

python örnekleri : hafıza kullanım bilgileri

Python’da kullanılabilir hafıza bilgisini öğrenmek için psutil adlı bir modül kullanabilirsiniz. Bu modül, sistem hafıza bilgisi gibi çeşitli sistem verilerine erişmenize izin verir. Örnek olarak, aşağıdaki kod parçacığı hafıza kullanım bilgisini gösterir:

import psutil

memory = psutil.virtual_memory()

print(f"Hafıza kullanım oranı: {memory.percent}%")

print(f"Kullanılabilir hafıza: {memory.available // (1024 ** 2)} MB")

Bu kod, hafıza kullanım oranını yüzdesini ve kullanabilir hafızayı MB cinsinden ekrana yazdıracaktır. psutil modülünü kullanmadan önce sisteminize yüklemeniz gerekebilir. Bunun için aşağıdaki komutu kullanabilirsiniz:

pip install psutil

python örnekleri : cpu sayısı

Python’da bir sistemdeki CPU sayısını öğrenmek için multiprocessing modülünü kullanabilirsiniz. Örnek kod aşağıdaki gibidir:

import multiprocessing

# Sistemdeki CPU sayısını alın
cpu_count = multiprocessing.cpu_count()

print(f"CPU sayısı: {cpu_count}")

pip 3 de kurulum sırasında –no-warn-script-location uyarısı

linuxde pip ile paket yüklemek istediğinizde aşagıdaki hatayı alırsanız

  WARNING: The script flask is installed in '/home/<username>/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

kabuk yorumlayıcı olarak bash kullandığınızı düşünerek

vi ~/.bashrc

ile bash konfigürasyon dosyasını açarak dosya içerisine

export PATH=$PATH:/home/$USER/.local/bin

satırını eklemek çözüm olacaktır.

windows 11 güncellemelerinde alınan 0x80248007 hatası

windows güncellemeleri sırasında alınan 0x80248007 hatası için kendi pc imde uyguladığım çözüm yöntemi

-administrator olarak cmd veya power shelli çalıştırdıktan sonra

dism.exe /online /cleanup-image /restorehealth

komut dizilimi çalıştırdıktan sonra pc yi yeniden başlatmaktır.

huawei network ekipmanlarında farklı hızdaki arayüzlerin eth-trunk altında kullanımı

huawei router ve switchlerde donanım ve yazılıma bağlı olarak eth-trunk altında farklı hızlardaki aayüzleri kullanım desteği bulunmaktadır..

komut yapısında , kullanımında ufak farklılıklar mevcut. bazı network ekipmanlarında öncelikle globalda mixed-rate ile desteğin aktif edilmesi gerekirken bazı modellerde sadece eth-trunk altında aktif edilmesi yeterli olabilmektedir.

test ettiğimiz switch bilgisi

Huawei Versatile Routing Platform Software
VRP (R) software, Version 5.170 (S5335 V200R021C00SPC100)
Copyright (C) 2000-2021 HUAWEI TECH Co., Ltd.
HUAWEI S5335-L32ST4X-D Routing Switch uptime is 0 week, 0 day, 0 hour, 28 minutes

şeklinde olup eth-trunk altında aktif etmek yeterli olmaktadır.

[test_switch-Eth-Trunk1]mixed-rate link enable 

excel formülleri içinde çift tırnak ” kullanımı

excel formulleri kullanıyorsanız ve elde etmek istediğiniz textler içierinde çift tırnak olması gerekiyorsa en sağlam ve sorunsuz sonuç için ihtiyaç olan yerlerde

UNICODEKARAKTERİ(34)
CHAR(34)

kullanımı faydalı olacaktır. örnek bir formul yazalım

="/configure service epipe" &a1& "description "&UNICODEKARAKTERİ(34)&b1&UNICODEKARAKTERİ(34)

çıktımız ise

/configure service epipe 1 description "epipe-1"

şeklinde olacaktır.

Back To Top