Un * x 용으로 잘 알려져 있고 잘 사용 된 쉘 스크립팅 IDE가 있습니까?


23

쉘 스크립팅, 특히 bash 및 zsh 스크립트를 대상으로하는 IDE가 있습니까? 이는 셸 스크립트에 구문 강조 표시를 제공하고 Python, Java 및 C와 같은 일반 프로그래밍 언어에서 사용할 수있는 것과 마찬가지로 중단 점, 변수 검사 및 수정 등의 기능이있는 환경을 디버깅하는 것이 중요합니다.

예를 들어 Microsft Windows Powershell 에는 Powershell PlusPowerGui 와 같은 IDE가 있습니다.

의 조합 제기 인터넷 검색 껍질 , 쉘 스크립트를 편집하기위한 이클립스 플러그인 및 BashEclipse , 껍질과 함께 작동하는 배쉬 디버거를; 아직 시도하지 않았습니다.

이 콤보와 비슷한 다른 Un * x 용 쉘 스크립팅 IDE가 있습니까? 누구든지 그들과 경험이 있습니까?


10
당신은 질문을하지 않기 때문에 나는 공감하지 않았지만 누구든 그렇게했습니다. 게시물의 유일한 질문은 예 / 아니요로 답변 할 수 있습니다. 실제로 무엇을 묻고 있습니까? 이 프로그램들은 어떻게 작동합니까? 그들이 무엇을 할? 정확히 무엇을하려고합니까?
terdon

10
bash IDE? 차를 위해 물을 끓이는 핵분열
jasonwryan

5
실제로, bash 디버거를 갖는 것은 매우 좋은 생각입니다. 프로그래밍 언어와 마찬가지로 디버거의 각 줄을 천천히 밟고 변수를 검사하고 코드가 수행하는 작업에 대해 생각하면 코드가 더 좋습니다. 프로그램이나 스크립트에 버그가없는 경우에도 디버거를 사용하는 것이 가장 좋습니다. 대부분의 배포판에서 bashdb를 얻을 수 있으며 텍스트 모드에서 bashdb를 사용할 수 있습니다. 또한 노화 된 DDD 그래픽 디버거를 bashdb와 함께 사용할 수 있으므로보다 "시각적 인"경험을 얻을 수 있습니다.
Stabledog

1
예, 확실히 할 수 있습니다. 그리고 많은 사람들이 그렇게합니다. 그것이 당신에게 적합하다면, 나는 당신을 다르게 설득하려고하지 않을 것입니다. 제 생각에는 저비용 작업으로 두뇌에 세금을 부과하는 열등한 접근법입니다 (정신적으로 변수 값을 추적하는 등). 좋은 디버거 UI의 아이디어는 프로그램에 대해 생각할 수있는주기를 자유롭게합니다. 내 경험상, 이것은 중요하다-당신은 그러한 것들에 적은 비용을들이는 경우 프로그램이 무엇을하고 있는지 생각하는 것에 더 집중할 수있다.
Stabledog

1
미국이나 유럽에 전기 주전자 또는 전기 레인지를 보유한 우리에게는 기저부 전력 발전의 상당 부분이 원자력 발전소에서 공급되므로 차를 끓일 때 적어도 부분적으로 핵분열을 사용하고 있습니다.
Andrew Janke

답변:


14

나는 그것이 잘 알려져 있거나 잘 사용되었다고 말하지는 않지만 basheclipse를 살펴볼 수도 있습니다 .

여기에 이미지 설명을 입력하십시오

basheclipse에 대한 경험이 없으며 일식 버전 불일치로 인해 설치하지 못했습니다.

반면에, 나는 bash 및 ksh93 특정 디버깅 기능, 특히 trap ERRand 및 trap DEBUG것들을 사용하고 있지만 kshdbbashdb를 기반으로 한 디버거는 사용하지 않습니다.


스크린 샷이 Windows 스타일의 창이라는 것이 오히려 아이러니합니다.
Agi Hammerthief

@NigelNquande 솔직히 말하면, 나는 basheclipse (또는 그 일에 대한 일식) 사용자가 아닙니다. ksh93 및 bash에서 제공하는 디버깅 기능을 사용하지만 GUI는 없습니다. 이 스크린 샷은 basheclipse 사이트에서 가져온 것입니다. 그놈 테마 일 수도 있고 OS = "cygwin"줄이있는 실제 Windows 7 스크린 샷일 수도 있습니다.
jlliagre

글쎄, IMO, 만약 당신이 무언가를하려고한다면, 반쯤하지 말고 부츠 를 신 어라. 나에게있어 bashWindows 에서는 GNU / Linux에서 완벽하게 작동 할 때 절반 만 보인다 .
Agi Hammerthief

@NigelNquande 내가 쓴 것처럼, 이것은 내 스크린 샷이 아닙니다. 어쨌든, 나는 선택의 여지가 없으며 cygwin기본 OS를 숨기는 것이 매우 효율적일 때 Windows에서만 bash를 사용 합니다.
jlliagre

1
@ user7000 나는 일식 버전 불일치로 인해 작성 하고 설치하지 못했습니다. 하지만 일식 버전이 무엇인지 기억하지 못합니다. :하지만 이클립스 4.5.2에서 작동하도록 문서화되어 sourceforge.net/projects/basheclipse/files/?source=navbar
jlliagre

8

특수하게 빌드 된 IDE는 쉘 스크립팅의 목적을 무너 뜨릴 것입니다. 쉘이하는 대부분의 작업이 외부 명령을 호출하기 때문에 수행하는 것이 거의 불가능하다는 것은 말할 것도 없습니다. 어떻게 디버깅합니까? 체크 포인트로 디버깅하는 것은 쉘에있어 직관적이지 않습니다. 쉘 스크립트는 일반적으로 파일에서 크게 작동하므로 모든 호출에서 부작용이 있습니다. BY DESIGN 스크립팅은 한 줄씩 작동하므로 "환경"은 실제로 터미널 자체입니다. 항상 변수를 반향 할 수 있고 환경은 항상 당신을 위해 있습니다. 원하는 것을 얻었을 때마다 매번 테스트하여 원하는 작업을 한 줄씩 점진적으로 수행 한 다음이 행을 스크립트에 붙여 다시 사용할 수 있습니다.

정규화 된 스크립팅 언어 (Python, Perl 등)의 경우이 모든 것이 있지만 bash / zsh / ksh / ...는 다른 명령의 대화식 "접착제"이며 자체 디버거입니다.

그러나 대부분의 텍스트 편집기는 코드를 강조 표시하며 emacs(패키지를 올바르게 제공하면 쉘 스크립트를 위해 신경 쓰지 않아도됩니다) 프로그래밍 가능한 키워드 완성 기능을 제공합니다. 나는 또한 vi그렇게 할 수 있다고 믿는다 (여기에 화염 전쟁을 시작하지 마십시오).


2
"정규화 된 스크립팅 언어"를 어떻게 정의합니까?
Trevor Sullivan

1
자신의 방식으로 @TrevorSullivan. 제발, 증오에 빠지지 마십시오.
Det

1
@Det : 그것은 합법적 인 질문이었습니다 – 만약 우리가 그 구절에 대한 공통적이고 구체적인 정의에 동의 할 수 없다면, 그에 대한 논의가 없을 수도 있습니다. 나는 그 문구가 무엇을 의미하는지 궁금합니다.
Trevor Sullivan

3
IDE가 쉘 스크립팅의 목적을 무너 뜨리는 데 동의하지 않습니다. 쉘 스크립트를 정리하고 싶을 수도 있습니다 (예 : 인라인 외부 변수, 사용하지 않는 변수 감지-기존 예제와 중복 될 때 불필요하게 오래 걸리는 System V Init 스크립트를 정리할 때 수행하려고하는 작업).
Sridhar Sarnobat와

2
또한 IDE를 추가하여 인텔리전스 또는 기타 도구를 제공하므로 몇 가지 사항을 기억하기 위해 인터넷 검색을 계속하거나 매뉴얼 페이지를 볼 필요가 없습니다. 또한 프로젝트에서 모든 스크립트를 함께 유지하고, 라인을
넘어서고

2

또한 bash 스크립트에 IDE를 사용한다는 아이디어를 보증합니다.

jupyter 노트북을 사용하여 bash 스크립트를 작성할 수 있습니다.

Jupyter 노트북은 아나콘다 를 통해 설치할 수 있으며 Jupyter 노트북 (또는 jupyterlab) 용 bash 커널은 다음 명령 ( source ) 으로 설치할 수 있습니다 .

pip install bash_kernel

python -m bash_kernel.install

그런 다음 아래 그림과 같이 아나콘다 네비게이터의 새 시작 관리자 인스턴스 에서 bash 를 선택할 수 있습니다.

유일한 것은 (내가 아는 한) 프롬프트를 입력 해야하는 명령 (예 : read스크립트를 호출 한 후 전달하는 다른 인수 )에서는 작동하지 않는다는 것입니다 . 그러나 그 외에는 꽤 잘 작동합니다.

여기에 이미지 설명을 입력하십시오


1

이 문제가 내 자체에 발생하면 bash 스크립트 IDE를 검색 했으므로 일식 및 기타와 같이 널리 사용되는 IDE에 많은 플러그인이 있습니다. 그러나 작은 bash 스크립트를 작성하는 IDE의 많은 작업을 찾으십시오. 반면에 에디터 작업은 많은 구문 오류와 시간 낭비를 유발하지만 전혀 재미 있지는 않습니다.

그래서 스크립트 작성을위한 온라인 bash 스크립트 도구를 찾았습니다. http://bashops.net 이며 온라인 상태이므로 즉시 설치하지 않아도 bash 스크립트 작성을 시작할 수 있습니다.


1

Rogalmic은 bashdb 및 zshdb 용 VSCode 플러그인을 작성 했습니다 .

그것들은 bashzsh 용 디버거를 기반으로 하므로 bash 용 이클립스 디버거와 같은 부족한 많은 경우를 처리합니다.


0

BashSupport 플러그인 과 함께 PyCharm Community 에디션을 제안하고 싶습니다 . 이것은 intellij intellisense와 함께 뛰어난 IDE 기능을 가지고 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.