Linux 용 Windows 서브 시스템 (WSL)의 터미널은 매우 작습니다. Windows에서 터미널을 많이 사용하지 않았습니다. 일반적으로 Ubuntu 또는 OSX를 사용하지만 기본 터미널이 너무 노출되어 있다는 사실에 놀랐습니다.
다음 중 하나가 가능합니까?
Windows 터미널 프로그램을 WSL 또는
WSL에서 Ubuntu 터미널 프로그램을 X 창으로 시작 하시겠습니까?
Linux 용 Windows 서브 시스템 (WSL)의 터미널은 매우 작습니다. Windows에서 터미널을 많이 사용하지 않았습니다. 일반적으로 Ubuntu 또는 OSX를 사용하지만 기본 터미널이 너무 노출되어 있다는 사실에 놀랐습니다.
다음 중 하나가 가능합니까?
Windows 터미널 프로그램을 WSL 또는
WSL에서 Ubuntu 터미널 프로그램을 X 창으로 시작 하시겠습니까?
답변:
나는 개인적으로 후자를한다 : 다중 윈도우 모드에서 VcXsrv를 X 서버로 사용하고 xfce4 터미널을 시작하십시오 (그놈 터미널에는 시각적 인 문제가있어서 수정하는 방법을 배우려고하지 않았기 때문에). 폰트와 컬러를 지원하는 유능한 터미널.
나는 이것을 bashrc에 추가해야한다는 것을 알았다 ...
export DISPLAY="localhost:0"
export TERM=xterm-256color
할 일 이 레딧에서 수정 DBUS를 들어 :
sudo sed -i 's$<listen>.*</listen>$<listen>tcp:host=localhost,port=0</listen>$' /etc/dbus-1/session.conf
또한 compiz를 설치하고 cbwin 프로젝트를 사용하여 xfce4 터미널 쉘에서 Windows 프로그램을 실행합니다.
이 "작업"시스템이 Windows 여야하더라도이 설정에 매우 만족하고 NeoVim + 많은 기본 Linux 플러그인을 사용합니다. :)
Bash-on-Linux-on-Windows에서 SSH 서버를 시작한 다음 Cygwin과 같은 MinTTY에서 연결하는 것도 가능합니다.
추신 : xfce4 터미널을 고통스럽지 않고 추가 bash cmd 창없이 시작하기 위해 콘솔 창없이 xfce4 터미널을 시작하는 인수로 bash 프로세스를 시작하는 것 외에는 아무것도하지 않는 프로그램을 작성했습니다. C #에서이 작업을 수행했습니다. 기본적으로 인수 "UseShellExecute"false 및 "CreateNoWindow"true를 사용합니다. 그런 다음 작업 표시 줄에 고정했는데 거의 보이지 않습니다.
편집 : VBScript의 대답은 훌륭합니다. 동일한 스크립트이지만 JScript 버전은 다음과 같습니다.
WScript.CreateObject("WScript.Shell").run('bash.exe -l -c "DISPLAY=:0.0 xfce4-terminal"', 0, false);
the "fix from reddit" for dbus
해제되었다.
다른 답변에서 모든 암시 적 단계를 파악하는 데 약간의 시간이 소요되었으므로 단계별 요약은 다음과 같습니다.
sudo apt-get install xfce4-terminal
.export DISPLAY=:0
하십시오 .bashrc
. (추가 .profile
또는 .bash_profile
작동하지 않음 ). 이렇게하면 xfce4-terminal
bash에서 올바르게 시작할 수 있지만 아래 명령과 직교합니다.주석에서 제안한대로 @OhJeez와 같이 바로 가기 또는 실행 프롬프트에서 다음을 실행하십시오.
powershell -windowstyle hidden -Command "iex \"bash ~ -c 'DISPLAY=:0 xfce4-terminal'\" "
기타 참고 사항 :
~
시작 bash
홈 디렉토리에, 당신은 그것이 어떤 디렉토리에 시작 제거 할 수 있습니다 .vbs
대신 파일에 있습니다. C:\Users\foo
예를 들어 에 넣는 것이 편리합니다 .xfce4-terminal
하면 정상적으로 작동합니다. 또한 bash -l -c xfce4-terminal
Windows cmd에서 실행 하면 경고가 표시 Gtk-WARNING **: cannot open display:
되고 아무 일도 일어나지 않습니다. 이 명령이 동일하게 작동해야한다고 생각했을 때 혼란 스럽습니다.
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -windowstyle hidden -Command "iex \"bash.exe ~ -c 'DISPLAY=:0 xfce4-terminal'\" "
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -windowstyle hidden -Command "iex '& \"C:\Program Files (x86)\Xming\Xming.exe\" -multiwindow'; iex \"bash.exe ~ -c 'DISPLAY=:0 xfce4-terminal'\" "
내가 생성 (사용)라는 리눅스 (WSL) 용 Windows 하위 시스템에 대한 오픈 소스 단자 WSL-단자 , 그것을 기반으로 mintty
하고 wslbridge
.
wsl-terminal
더 나은 터미널 환경을 제공하는 이유에 대한 세부 정보를 추가하십시오 .
새로운 우분투 설치에서는 방금 XMing (Windows)을 설치 한 다음 (Ubuntu) xfce4 터미널 export DISPLAY=:0
을 설치했습니다.
Windows의 기본 콘솔을 제거하기 위해이 VBS 스크립트는 다음 작업을 수행합니다.
WScript.CreateObject("WScript.Shell").run "bash -l -c xfce4-terminal", 0, True
(에 $ DISPLAY가 설정되어 있습니다 .profile
.)
편집 : 스크립트를 고정 가능하게 만들려면 target을 사용하여 바로 가기를 만드십시오 wscript "C:\path\to\thescript.vbs"
.
Windows에서 :
이게 도움이 되길 바란다.
htop
Extraterm 은 단순한 터미널 에뮬레이터 그 이상입니다. 터미널 및 명령 줄 응용 프로그램 작업을위한 도구 상자를 제공합니다.
Windows 10 (및 WSL)에 대한 최신 업데이트 이후 모든 것이 "기본"Windows bash 콘솔을 사용하여 작동하는 것 같습니다. (그리고 나는 유명한 1809 Windows 업데이트에 대해 이야기하고 있지 않습니다). 이것은 적어도 1803 17134.345 빌드에서는 Enterprise 버전에서도 작동합니다).
https://www.hanselman.com/blog/SettingUpAShinyDevelopmentEnvironmentWithinLinuxOnWindows10.aspx 의 기사를 참조하십시오.
약간의 경고-Windows에서 bash 콘솔을 실제로 사용하려면 tmux를 시작해야하며 Scott의 블로그에서 모든 것이 작동합니다.
보다 현대적인 시대를위한 터미널 https://eugeny.github.io/terminus/
터미널은 하이퍼에서 크게 영감을받은 터미널입니다. 그러나 작업이 필요한 사람들을 위해 설계되었습니다.
백엔드 쉘 bash, cmd, PowerShell을 선택할 수 있습니다.
the shell to run when spawning a new session (i.e. /usr/local/bin/fish)
if left empty, your system's login shell will be used by default
Windows
- Make sure to use a full path if the binary name doesn't work
- Remove `--login` in shellArgs
Bash on Windows
- Example: `C:\\Windows\\System32\\bash.exe`
PowerShell on Windows
- Example: `C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`
shell: 'C:\\Windows\\System32\\bash.exe',enter code here
plugins: [
//"hyper-dracula"
//"hyper-solarized-dark"
"hyper-material-theme"
],
이 안내서를 사용하여 WLS를 얻을 수 있었고 bash는 매우 잘 작동했습니다.
현재 는 Microsoft에서 제공하는 "Windows 터미널" 을 사용하는 것이 좋습니다 .
공식 빌드는 올해 6 월 중순 Windows 스토어에서 구할 수 있습니다.
그러나 아래 미리보기 버전을 사용하여 경험할 수도 있습니다. https://github.com/yanglr/WindowsDevTools/blob/master/awosomeTerminal/WindowsTerminal_SelfSigned_x86_x64_arm64.7z
설치 후 실행 결과는 다음과 같습니다.
VBScript / JScript 솔루션 중 어느 것도 바로 작동하지 않았 으므로 aikeru 및 n.caillou의 답변을 확장 했습니다.
Call WScript.CreateObject("WScript.Shell").Run("bash.exe -l -c 'DISPLAY=:0.0 xfce4-terminal --working-directory $HOME'", 0, True).
Call
run 명령에서 괄호를 사용할 때는 스크립트를 앞에 추가해야합니다 ( 여기 참조) . 또한 진드기는 다른 방향으로 돌아와야했습니다. 또한 xfce4 터미널에 대한 추가 인수 는 사용자의 홈 폴더에서 터미널 을 시작합니다. 이것이 실제로 JScript 코드를 사용하고 있다면 죄송합니다.이 스크립트 언어에 대해서는 전혀 모릅니다.
이것을 vbscript.vbs 파일로 저장하고 다음과 같이 cmd 프롬프트 에서 실행하십시오.
wscript vbscript.vbs
그런 다음 2 초 지연된 후 xfce4 터미널 창을 엽니 다 (XMing 등이 실행 됨). n.caillou의 작품에서 제안한대로 이것을 바로 가기로 바꾸고 바로 가기를 클릭하면 약간의 지연과 함께 새로운 xfce 터미널 창이 자동으로 생성됩니다.