Python’un çeşitli komut satırı araçları
(pythonmorsels.com)- Python modülleri komut satırı aracı olarak kullanılabilir
- Örneğin
webbrowsermodülü komut satırından çalıştırıldığında, verilen URL’yi varsayılan web tarayıcısında açabilir - Python standart kütüphanesi bu tür modül-betik hibritlerinden birçok tane içerir
- Örneğin
- Python
-mseçeneğiyle çalıştırıldığında, verilen Python modülünü bir betik gibi yürütür- Bazı modüller
importedildiği anda belirli bir davranış sergiler; örneğinantigravitymodülü XKCD çizgi romanını web tarayıcısında açar. Bunu komut satırında çalıştırmak, modülüimportetmekle aynı etkiyi verir - Buna "import side effect" denir ve çoğu modül bundan kaçınır.
antigravitygibi easter egg modülleri istisnadır - Import side effect’ten kaçınan modüller, modül olarak
importedildiklerinde ve betik olarak çalıştırıldıklarında farklı davranmak için__name__değişkenini kullanır
- Bazı modüller
Yararlı genel amaçlı komut satırı araçları
python -m http.server: basit bir web sunucusu başlatırpython -m webbrowser: web tarayıcısını çalıştırırpython -m json.tool: JSON verisini güzel biçimde formatlarpython -m calendar: komut satırında takvim gösterir
Özellikle Windows’ta yararlı araçlar
python3.12 -m uuid:uuidgenCLI yardımcı programına benzerpython3.12 -m sqlite3:sqlite3CLI yardımcı programına benzerpython -m zipfile:zipveunzipCLI yardımcı programlarına benzerpython -m gzip:gzipvegunzipCLI yardımcı programlarına benzerpython -m tarfile:tarCLI yardımcı programına benzer
Python koduyla çalışırken yararlı araçlar
python -m pip: üçüncü taraf Python paketlerini kurarpython -m venv: sanal ortam oluştururpython -m pdb: Python hata ayıklayıcısını çalıştırırpython -m unittest:unittesttestlerini çalıştırırpython -m pydoc: dokümantasyonu gösterirpython -m doctest: verilen dosyanın doctest’lerini çalıştırırpython -m ensurepip:pipkurarpython -m idlelib: IDLE grafik REPL’ini çalıştırırpython -m zipapp: Python modülünü çalıştırılabilir ZIP’e dönüştürürpython -m compileall: Python dosyalarını önceden bytecode’a derler
Python kod analizi araçları
python -m tokenize: Python modülünü token’lara ayırırpython -m ast: kodun soyut sözdizimi ağacını gösterirpython -m dis: Python kodunu bytecode’a disassemble ederpython -m inspect: Python nesnelerinin kaynak kodunu incelerpython -m pyclbr: modüldeki nesnelerin genel görünümünü gösterir
Python easter egg’i olarak çalışan eğlenceli betikler
python -m __hello__: "Hello world!" yazdırırpython -m this: Python’un Zen’ini (The Zen of Python, PEP 20) yazdırırpython -m antigravity: web tarayıcısında Python’la ilgili XKCD 353 numaralı çizgi romanı açarpython -m turtledemo:turtlemodülüyle çizilebilecek çeşitli görsellerin demosunu gösterir
Diğer Python araçları
python -m asyncio:asynciodestekli Python REPL’ini çalıştırırpython -m cProfile: Python programını profillerpython -m pstats:cProfileile oluşturulan profil istatistiklerini gösterirpython -m pickle: pickle dosyasının içeriğini gösterir (high-level)python -m pickletools: pickle dosyasını ayrıştırır (low-level)
Daha az yararlı araçlar
python -m timeit: Python ifadelerinin çalışma süresini ölçerpython -m site: Python’un "site" bilgilerini gösterirpython -m sysconfig: Python yapılandırma ayrıntılarını gösterirpython -m platform: mevcut platform bilgisini gösterirpython -m mimetypes: dosya mimetype/uzantı bilgisini gösterirpython -m quopri: ham e-posta verisini kodlar/kod çözerpython -m filecmp: iki dizinin içeriğini karşılaştırırpython -m tabnanny: Python dosyalarında tab ve boşluk karışımını kontrol eder
2 yorum
Vay, düşündüğümden daha fazla iyi özellik varmış, harika.
Kapalı ağ ortamındaki bir Linux sunucusuna zip dosyasını içeri alıp girmiştim ama
unzipkomutu yoktu, bu yüzdenpython -m zipfilemodülüyle arşivi açıp devam ettiğimi hatırlıyorum