ใช้มินต์เป็นเทอร์มินัลเริ่มต้นบน Cygwin และเชลล์เริ่มต้นเป็น bash


10

มีอยู่แล้วใครตอบคำถามที่วิธีที่ดีที่สุดที่จะใช้เปลือก Cygwin ใน Windows 7 นั่นคือการเริ่มต้น Cygwin ด้วยC:\cygwin\bin\mintty.exe -

ด้วยความที่ $SHELL = /bin/sh

ฉันจะเปิดตัว mintty ด้วย/usr/bin/bashเปลือกเริ่มต้นได้อย่างไร

คำตอบ:


14

มีหลายวิธีที่จะทำ:

  1. ระบุbashว่าเป็นอาร์กิวเมนต์บรรทัดคำสั่งเป็นมินต์ตี้ตามที่ Salton กล่าวถึง
  2. ตั้งค่าSHELLตัวแปรสภาวะแวดล้อมWindows เป็น / usr / bin / bash
  3. ตรวจสอบให้แน่ใจว่าคุณมี / etc / passwd (ดู mkpasswd (1)) ในสภาพแวดล้อม Cygwin ของคุณและตั้งค่าเชลล์สำหรับ UID ของคุณเป็น / usr / bin / bash Cygwin ไม่ได้ให้คำสั่ง chsh หรือ usermod ดังนั้นคุณอาจต้องแก้ไขไฟล์ด้วยตัวเองหากคุณต้องการใช้วิธีนี้

จาก manty mintty (1):

INVOCATION
   If a program name is supplied on the command line, this is executed
   with any additional arguments given.  Otherwise, mintty looks for a
   shell to execute in the SHELL environment variable.  If that is not
   set, it reads the user's default shell setting from /etc/passwd.  As a
   last resort, it falls back to /bin/sh.  If a single dash is specified
   instead of a program name, the shell is invoked as a login shell.

สำหรับฉันวิธีที่ 3 การตั้งค่าเชลล์ใน / etc / passwd เป็นวิธีที่ดีที่สุดเพื่อให้สามารถเรียกใช้ mintty ได้/path/to/mintty.exe [-i icon-file] -ด้วยการติดตาม-เราจะได้รับเชลล์การเข้าสู่ระบบซึ่งโดยปกติฉันจะเริ่มเซสชันหน้าจอ
ryenus

/etc/passwdถูกเขียนทับ (บางครั้ง?) เมื่ออัปเกรดด้วยการตั้งค่า Cygwin
Dominykas Mostauskis

@ryenus สาเหตุของการติดตามนั้น-คืออะไร พูดคุยเกี่ยวกับ google ที่ยากลำบาก ..
Roy Truelove

@RoyTruelove เพื่อให้มันเป็นเปลือกเข้าสู่ระบบ? อาจเป็นไปได้โปรดตรวจสอบคู่มือทุบตี
ryenus

5

คุณสามารถเปิดใช้mintty bashสำหรับการทุบตีเป็นค่าเริ่มต้น


4

สมมติว่าชื่อไฟล์นี้คือ mintty.bat คลิกสองครั้งที่ไฟล์นี้จะเปิดเทอร์มินัลมินต์และด้วย bash, path & pwd


@echo off

C:\cygwin64\bin\mintty.exe /bin/bash --login -i
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.