Un * x için iyi bilinen ve iyi kullanılan bir kabuk komut dosyası IDE var mı?


23

Kabuk komut dosyalarında, özellikle de bash ve zsh komut dosyalarında hedeflenen IDE var mı? Bu, kabuk komut dosyaları için sözdizimi vurgulaması ve daha da önemlisi Python, Java ve C gibi normal programlama dilleri için mevcut olanlar gibi kesme noktaları, değişken inceleme ve değiştirme, vb. Özelliklerle hata ayıklama ortamları olması anlamına gelir.

Örneğin, Microsft Windows Powershell , Powershell Plus ve PowerGui gibi IDE'lere sahiptir .

Bir arada yetişmiş Googling Shelled , kabuk komut düzenlemek için bir Eclipse eklentisi ve BashEclipse kabuklu ile çalışır bir Bash hata ayıklayıcı; Henüz denemedim.

Bu combo'ya benzer Un * x için başka kabuk komut dosyası IDE'leri var mı? Onlarla biraz tecrübesi olan var mı?


10
Oy vermedim ama kim yaptıysa bunu yapmadınız, çünkü bir soru sormuyorsunuz. Gönderinizdeki tek soru Evet / Hayır ile cevaplanabilir. Gerçekten ne soruyorsun? Bu programlar nasıl çalışır? Ne yaparlar? Tam olarak ne yapmaya çalışıyorsun?
terdon

10
Bir bash IDE? Çay için su kaynatmak için Nükleer fisyon ...
jasonwryan

5
Aslında, bir bash hata ayıklayıcısına sahip olmak çok iyi bir fikir - tıpkı herhangi bir programlama dilinde olduğu gibi, hata ayıklayıcısındaki her satırdan yavaşça geçtiğinizde, değişkenleri incelediğinizde, kodun ne yaptığını vb. Düşündüğünüzde kodunuz daha iyi olacaktır. Bir hata ayıklayıcı, programınızın veya komut dosyanızın hataları olmasa bile, bunu yapmanın en iyi yoludur. Çoğu dağıtımda bashdb komutunu alabilirsiniz; bu, bunu metin modunda yapmanıza izin verir. Ayrıca, yaşlanan DDD grafik hata ayıklayıcısı bashdb ile çalışmak üzere yapılabilir, böylece daha "görsel" bir deneyime sahip olursunuz.
Stabledog

1
Evet, kesinlikle biri bunu yapabilir. Ve birçoğu öyle ve yıllarca böyle geçiyorlar. Bu size uygunsa, sizi başka türlü ikna etmeye çalışmam. Benim düşünceme göre, beyni düşük değerli görevlerle (zihinsel olarak değişkenlerin değerlerini takip etmek gibi) vergilendiren aşağılık bir yaklaşım. İyi bir hata ayıklayıcı kullanıcı arayüzü fikri, programı düşünmek için bu döngüleri serbest bırakıyor. Tecrübelerime göre, bu önemli - eğer daha azını bu tür şeylere harcıyorsanız, programın ne yaptığını düşünmeye odaklanmakta daha fazla özgürsünüz.
Stabledog

1
ABD'de veya Avrupa'da elektrikli su ısıtıcısı veya menzili bulunanlar için, temel elektrik üretimimizin iyi bir kısmı nükleer santraller tarafından sağlanmaktadır, bu nedenle çay için su kaynattığımızda, en azından kısmen nükleer fisyon kullanıyoruz.
Andrew Janke

Yanıtlar:


14

Biliyorum ya iyi biliniyor ya da iyi kullanılıyor ama basheclipse'a bir bakabilirsiniz :

görüntü tanımını buraya girin

Basheclipse konusunda hiçbir deneyimim olmadığını ve hatta eclipse sürüm uyuşmazlığı nedeniyle yüklenemediğini itiraf etmeliyim.

Öte yandan, ben Bash ve ksh93 özgü ayıklama özellikleri, özellikle kullanıyorum trap ERRve trap DEBUGolanları değil, bunlara dayalı debugger'lar kshdb ve bashdb


Ekran resminizin Windows tarzı bir pencerede olması oldukça ironik buluyorum.
Agi Hammerthief

@ NigelNquande Dürüst olmak gerekirse, ben bir basheclipse (veya bu konuda tutulması) kullanıcı değilim. Kesinlikle ksh93 ve bash tarafından sağlanan hata ayıklama özelliklerini kullanıyorum, ancak GUI kullanmıyorum. Bu ekran görüntüsü basheclipse sitesinden alınmıştır. OS = "cygwin" satırı verilen bazı gnome tema veya sadece gerçek bir Windows 7 ekran görüntüsü olabilir.
jlliagre

IMO, eğer bir şeyler yapacaksanız, yarım boybash değil, çizme ile yapın (ama bu ne burada ne de başkasının orada değil). Bana göre, Windows’ta GNU / Linux’ta mükemmel bir şekilde çalıştığı zaman çok zor görünüyor .
Agi Hammerthief,

@ NigelNquande Yazdığım gibi, bu benim ekranım değil. Her durumda, yalnızca bas seçeneğim olmadığında ve cygwintemel işletim sistemini gizlemek için oldukça verimli olduğumda bash kullanıyorum .
jlliagre

1
@ user7000 Bir eclipse sürüm uyuşmazlığı nedeniyle yazdım ve hatta yükleyemedik, ancak hangi eclipse sürümünün olduğunu hatırlamıyorum. Yine de Eclipse 4.5.2 ile çalışmak üzere belgelenmiştir: sourceforge.net/projects/basheclipse/files/?source=navbar
jlliagre

8

Amaca yönelik bir IDE, kabuk komut dosyası yazmanın amacını ortadan kaldırır, neredeyse yapmak imkansız olduğunu söylemez, çünkü hangi kabuğun yaptığı dış komutları çağırıyor? Kontrol noktaları ile hata ayıklama, kabuk kabuğu komut dosyaları genellikle dosyalar üzerinde yoğun şekilde çalışır ve bu nedenle her aramada yıkıcı yan etkilere neden olur. TASARIM İLE komut dosyası satır satır çalışır, bu nedenle "ortamınız" aslında terminalin kendisidir - değişkenleri her zaman eko edebilirsiniz, ortamınız her zaman yanınızdadır, kesmeniz gereken "öngörülen akış" yoktur. İstediğiniz şeyi aşamalı olarak yapın, ne istediğinizi elde ederseniz her seferinde test yapın ve sonra tekrar kullanmak için bu satırları bir komut dosyasına yapıştırın.

Tamamen nitelikli komut dosyası dilleri (Python, Perl vb.) İçin tüm bunlara sahipsiniz, ancak bash / zsh / ksh / ... diğer komutlar için etkileşimli "yapıştırıcı" dır ve kendi hata ayıklayıcılarıdır.

Ancak, çoğu metin editörü sizin için kodu vurgulayacak ve emacs(doğru paketleri bulmanız şartıyla, kabuk komut dosyaları için bunu yapmakla hiç uğraşmadım) programlanabilir anahtar kelime tamamlama sağlayacaktır. Bunu vida yapabileceğime inanıyorum (lütfen burada bir flamewar başlatmayın).


2
"Tam nitelikli bir komut dosyası dili nasıl" tanımlarsınız?
Trevor Sullivan

1
@TrevorSullivan kendi yolunda. Lütfen, nefreti içine verme.
Det

1
@Det: Bu meşru bir soruydu - hepimiz ifadenin ortak, somut bir tanımı üzerinde hemfikir değilsek, o zaman bunun hakkında bir tartışmamız olmayabilir. Sadece bu ifadenin ne anlama geldiğini merak ediyorum.
Trevor Sullivan,

3
IDE'lerin kabuk betiğinin amacını yendiğini kabul etmiyorum. Kabuk komut dosyalarınızı temizlemek isteyebilirsiniz (örneğin, satır içi yabancı değişkenler, kullanılmayan değişkenleri algılamak - bu, özellikle varolan örneklerden çoğaltıldığında gereksiz yere uzun süren System V Init komut dosyalarımı temizlerken ne yapmaya çalıştığımı).
Sridhar Sarnobat

2
Ayrıca şunu eklerdim ve IDE intellisense veya başka araçlar sağlar, böylece bazı şeyleri hatırlamak için googling veya man sayfalarına bakmak zorunda kalmam. Ayrıca tüm senaryolarımı bir projede bir arada
tutmama

2

Ayrıca bash betiği için IDE kullanma fikrini de onaylıyorum.

Biri jupyter notebook'u kullanarak bash scriptleri yazabilir.

Jupyter notebook anaconda aracılığıyla yüklenebilir , jupyter notebook (ya da jupyterlab) için bir bash çekirdeği aşağıdaki komutlarla ( kaynak ) yüklenebilir :

pip install bash_kernel ve

python -m bash_kernel.install

Bundan sonra, seçebileceğiniz bash aşağıda gösterildiği gibi, anakonda gezginin yeni başlatıcısı örneğinde.

Tek şey (bildiğim kadarıyla), komut istemini readçağırdıktan sonra ilettiğiniz herhangi bir argüman gibi komut istemine girmeniz gereken komutlarla çalışmadığıdır . Ancak bunun dışında oldukça iyi çalışıyor.

görüntü tanımını buraya girin


1

bu sorunla karşılaştığımda kendim, demek ki bash betiği IDE'yi aradım, popüler IDE'de eclipse ve diğerleri gibi birçok eklenti var. ancak IDE'lerle sadece küçük bash scriptleri oluşturmak için uğraşan çok fazla iş bulabilirsiniz. Öte yandan, editörlerle çalışmak çok eğlenceli sözdizimi hatalarına ve zaman kaybına neden oluyor.

bu yüzden komut dosyaları oluşturmak için çevrimiçi bir bash betiği aracı buldum, bunun adı http://bashops.net , çevrimiçi, herhangi bir kurulumda meşgul olmadan hemen bash betiği üzerinde çalışmaya başlayabilir.


1

Rogalmic, bashdb ve zshdb için VSCode eklentilerini yazdı .

Onlar bash ve zsh için hata ayıklayıcılarıma dayanıyorlar , bu yüzden eksik olan birçok uç olayı ele alıyorlar.


0

BashCupport eklentisi ile PyCharm Topluluğu sürümü önermek istiyorum . Bu intellij intellisense ile mükemmel IDE işlevselliklerine sahiptir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.