Esistono IDE di shell scripting ben noti e ben utilizzati per Un * x?

Esistono IDE mirati allo scripting di shell, in particolare gli script bash e zsh? Ciò significa avere levidenziazione della sintassi per gli script della shell e, cosa più importante, gli ambienti di debug con funzionalità come punti di interruzione, ispezione e modifica di variabili, ecc., Proprio come quelli disponibili per i normali linguaggi di programmazione come Python, Java e C.

Ad esempio, Microsft Windows Powershell ha IDE come Powershell Plus e PowerGui .

Google ha mostrato una combinazione di ShellEd , un plug-in Eclipse per la modifica degli script della shell, e BashEclipse , un debugger di Bash che funziona con ShellEd; Non lho ancora provato.

Esistono altri IDE di shell scripting per Un * x simili a questa combinazione? Qualcuno ha qualche esperienza con loro?

Commenti

  • Non ho votato negativamente, ma chiunque labbia fatto lo ha fatto perché non stai facendo una domanda. Lunica domanda nel tuo post può essere risolta con un Sì / No. Cosa stai chiedendo in realtà ? Come funzionano questi programmi? Cosa fanno? Cosa stai cercando di fare esattamente?
  • Un IDE bash? Fissione nucleare per far bollire lacqua per il tè …
  • In realtà, avendo un debugger bash è unottima idea – proprio come con qualsiasi linguaggio di programmazione, il tuo codice sarà migliore se passi lentamente attraverso ogni riga del debugger, esamini le variabili, pensi a cosa sta facendo il codice, ecc. Un debugger è il modo migliore per farlo, anche se il tuo programma o script non ‘ ha bug. Puoi ottenere bashdb nella maggior parte delle distribuzioni, che ti permetterà di farlo in modalità testo. Inoltre , il debugger grafico DDD obsoleto può farlo essere fatto per funzionare con bashdb in modo da avere più ” visual ” esperienza.
  • Sì, certamente si può Fai quello. E molti lo fanno, e questo ‘ è il modo in cui se la cavano per anni. Se ti va bene, non ‘ tenterei di convincerti del contrario. A mio parere, è un approccio inferiore che mette alla prova il cervello con compiti di basso valore (come tenere traccia mentalmente dei valori delle variabili, ecc.). Lidea di una buona interfaccia utente del debugger è liberare quei cicli per pensare al programma. Nella mia esperienza, questo è importante: hai più attenzione libera di concentrarti sul pensare a cosa sta facendo il programma se ‘ spendi meno per queste cose.
  • Per quelli di noi con bollitori o fornelli elettrici negli Stati Uniti o in Europa, una buona parte della nostra generazione elettrica di carico di base è fornita da centrali nucleari, quindi quando facciamo bollire lacqua per il tè, stiamo usando la fissione nucleare, almeno in parte .

Risposta

Non direi che sia ben noto o utilizzato, ma potresti avere un guarda basheclipse :

inserisci qui la descrizione dellimmagine

Devo ammettere che non ho esperienza con basheclipse e non sono riuscito a installarlo a causa di una mancata corrispondenza della versione di eclipse.

Daltra parte, sto usando le funzionalità di debug specifiche di bash e ksh93, in particolare trap ERR e trap DEBUG ma non i debugger basati su di essi kshdb e bashdb

Commenti

  • Trovo piuttosto ironico che la tua schermata sia una finestra in stile Windows.
  • @NigelNquande Ad essere onesti, ‘ m non è un utente basheclipse (o eclipse se è per questo). Uso sicuramente le funzionalità di debug fornite da ksh93 e bash, ma nessuna GUI. Questo screenshot è tratto dal sito basheclipse. Potrebbe essere un tema di gnome o solo un vero screenshot di Windows 7 data la riga OS = ” cygwin “.
  • Bene, IMO, se ‘ hai intenzione di fare qualcosa, fallo con gli stivali, non un mezzo ed (ma ‘ non è né qui né là per nessun altro). A me, bash su Windows sembra mezzo sedotto quando funziona perfettamente in GNU / Linux.
  • @NigelNquande Come ho scritto, questo non è ‘ uno screenshot mio. In ogni caso, utilizzo bash su Windows solo quando non ho scelta e cygwin è abbastanza efficiente per nascondere il sistema operativo sottostante.
  • @ user7000 ho scritto e persino non è riuscito a installarlo a causa di una mancata corrispondenza della versione di eclipse ma ‘ non ricordo quale versione di eclipse fosse. È documentato che funzioni con Eclipse 4.5.2: sourceforge.net/projects/basheclipse/files/?source = navbar

Answer

Un IDE appositamente costruito vanificherebbe lo scopo di script di shell, per non parlare del fatto che è quasi impossibile da fare, perché la maggior parte di ciò che fa la shell è chiamare comandi esterni – come si esegue il debug? Il debug con i checkpoint è controintuitivo per una shell – gli script di shell di solito operano pesantemente sui file e quindi hanno effetti collaterali distruttivi su ogni chiamata. Scripting BY DESIGN funziona riga per riga, quindi il tuo “ambiente” è in realtà il terminale stesso – puoi sempre echeggiare le variabili, il tuo ambiente è sempre lì per te, non esiste un “flusso prescritto” che dovresti interrompere. Fai progressivamente quello che vuoi, riga per riga, testando ogni volta se hai ottenuto ciò che volevi e poi incolla queste righe in uno script per usarle di nuovo. Qualsiasi IDE in realtà disabiliterebbe la maggior parte di ciò che puoi farlo nella shell stessa.

Per linguaggi di scripting pienamente qualificati (Python, Perl ecc.) hai un Tutto questo, ma bash / zsh / ksh / … sono “collante” interattivo per altri comandi e sono i propri debugger.

Tuttavia, la maggior parte degli editor di testo evidenzierà il codice per te e emacs (a patto di trovare i pacchetti giusti, non mi sono mai preoccupato di farlo per gli script di shell) fornirà il completamento programmabile delle parole chiave. Credo che vi possa farlo anche tu (non avviare una guerra con le fiamme qui per favore).

Commenti

  • Come si definisce un ” linguaggio di scripting completamente qualificato? ”
  • @TrevorSullivan a modo suo . Non ‘ t, per favore, cedi allodio.
  • @Det: Era una domanda legittima, se possiamo ‘ Se tutti sono daccordo su una definizione comune e concreta della frase, allora tanto vale non discuterne. ‘ Sono solo curioso di sapere cosa si intende per quella frase.
  • Non ‘ daccordo che gli IDE vanificano lo scopo dello script di shell. Potresti voler ripulire i tuoi script di shell (ad esempio variabili estranee inline, rilevare variabili inutilizzate – che è ciò che ‘ sto cercando di fare per ripulire i miei script System V Init che diventano inutilmente lunghi soprattutto se duplicati da quelli esistenti esempi).
  • Vorrei anche aggiungere questo e IDE fornisce intellisense o altri strumenti, quindi non ‘ devo continuare a cercare su Google o guardare le pagine man per ricordarne alcuni cose. Mi consente anche di tenere insieme tutti i miei script in un progetto, scavalcare le righe, ispezionare gli argomenti in arrivo, testare cicli e interruttori, rompere un tubo per lispezione, ecc. > Risposta

    Appoggio anche lidea di usare un IDE per gli script bash.

    Si possono scrivere script bash usando il notebook jupyter.

    Il notebook jupyter può essere installato tramite anaconda mentre un kernel bash per jupyter notebook (o jupyterlab) può essere installato con i seguenti comandi ( source ):

    pip install bash_kernel e

    python -m bash_kernel.install

    Dopodiché, puoi selezionare bash su un nuovo launcher istanza di anaconda navigator, come mostrato di seguito.

    Lunica cosa è che (per quanto ne so) non funziona con i comandi che devi inserire nel prompt, come read o qualsiasi altro argomento passato dopo aver chiamato lo script. Ma a parte questo, funziona abbastanza bene.

    inserisci qui la descrizione dellimmagine

    Answer

    ho riscontrato questo problema da solo, significa che ho cercato bash script IDE, ci sono molti plugin sullIDE popolare proprio come Eclipse e molti altri. ma trovare un sacco di lavoro con gli IDE solo per costruire piccoli script bash. daltra parte lavorare con gli editor causa molti errori di sintassi e perdita di tempo, per non parlare del fatto che non è affatto divertente.

    così ho trovato uno strumento di script bash online per la creazione di script, si chiama http://bashops.net , it ” in linea, immediatamente può iniziare a lavorare sulla creazione di script bash, senza essere impegnato in alcuna installazione.

    Risposta

    Vorrei suggerisci ledizione PyCharm Community con il plug-in BashSupport . Ha eccellenti funzionalità IDE con intellij intellisense.

    Answer

    Rogalmic ha scritto plug-in VSCode per bashdb e zshdb .

    Si basano sui miei debugger per bash e zsh , quindi gestiscono molti dei casi limite che mancano, ad esempio, nel debugger di eclipse per bash.

    Risposta

    Prova questo sito. Sto anche cercando la stessa cosa e voglio essere in grado di testare prima lo script e non influire sul mio sistema. Questo è un editor online per bash.

    https://repl.it/languages/bash

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *