DOS Komut Satırından Git Bash Nasıl Başlatılır?


106

Basit bir soru olmasını umduğum şeyi aldım, ancak henüz cevabı bulamadım. Git Bash'i bir DOS toplu iş dosyasından başlatmak istiyorum. İşte şimdiye kadar denediğim şey:

  1. Win 7 Başlat düğmesinden Git Bash başlatıldı
  2. İşlemi "sh.exe" olarak tanımlamak için CTRL + ALT + DEL kullanıldı
  3. Başlat komutunu kullanarak toplu iş dosyasından sh.exe başlatıldı

    start sh.exe
    

Ancak, bu tam Git Bash ortamını başlatmaz. Git Bash'in başlık çubuğunda genellikle "MINGW32" bulunur, ancak sh.exe'nin ... için tam yolu vardır Git\bin\sh.exe. Muhtemelen farkında olmadığım, aynı zamanda yüklenmesi gereken (içeri çekilmesi? İçe aktarılması?) Bazı kaplamalar veya bağımlılıklar var gibi geliyor bana.

Bu, web'de arama yaparken bulduğum en iyi sonuçlardan biriydi, ancak benim için tam anlamıyla bir anlam ifade etmiyor ve tam olarak benim durumum için geçerli olup olmadığından emin değilim:

Git Windows Cmd satırından çalıştırılıyor: Anahtar dosyalar nerede?

DOS toplu komut dosyası yazma dünyasında bir acemiyim.


1
Eh, o değil aslında O anomalinin zaman çeşit karşılaştığınız ve Windows 9x / ME kullanıyorsanız, (a): sürece DOS komut satırı command.comsadece OS (b) bir 32- konum ile birlikte kabuk bit NT sistemi ve ya command.comkendiniz çağırdı , ya da eski bir program sizin için yaptı. Bkz pencerelerde istemi CMD ve Komuta arasındaki fark nedir? daha fazla bilgi için.
SamB

Yanıtlar:


126

Bir toplu iş dosyasından başlatmak istiyorsanız:

  • x86 için

    start "" "%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login
    
  • x64 için

    start "" "%PROGRAMFILES%\Git\bin\sh.exe" --login
    

Teşekkürler @Endoro! @Klas Mellbourn'un yanıtı Powershell için doğru olsa da, DOS toplu iş dosyasından çalıştırdığım için sizinki daha doğru. "Başlat" yönergesinin eklenmesi, programın eşzamansız olarak çalışmasına neden olur, bu da tam olarak ihtiyacım olan şey! Başparmak havaya!
Eric Hepperle - CodeSlayer2010

14
Toplu iş dosyası içinden açıldıktan sonra Git toplu iş penceresine bir komut yazmanın ve bu komutu yürütmenin bir yolu var mı?
Nick

1
@OviC Düzenlemenizin doğru olduğundan emin misiniz? "Program Dosyaları (x86)" yalnızca 32 bit programlar için x64 mimarisi altında mevcuttur.
Drunix

@Drunix haklısınız, x86 sistemlerinde "Program Files (x86) \" yolu yok. Bir geri dönüş yaptım. Teşekkürler.
Endoro

Ya sistem sürücüsüne kurulu değilse? Ya program dosyalarında yüklü değilse?
Michael Kruglos

44

"Tam Git Bash ortamı" ile ne demek istediğinizden tam olarak emin değilim, ama yaparsam güzel bir mesaj alıyorum

"C:\Program Files\Git\bin\sh.exe" --login

PowerShell'de

& 'C:\Program Files\Git\bin\sh.exe' --login

--loginAnahtar kabuk giriş Shell'in yürütmek yapar başlatma dosyaları .


Teşekkürler @Klas Mellbourn. Cevabınız Powershell için iyidir, ancak Endoro'nun cevabında olduğu gibi "başla" yönergesi eklenmeden sonraki programın yürütülmesini kabuk çıkana kadar durdurur, bu istenen davranış değildir, aksi takdirde size oy verirdim.
Eric Hepperle - CodeSlayer2010

Konsol2'yi pencereye kullanıyorum cmdve bu garip davranışlara neden oluyor. Bunu bir .bat dosyasına koydum ve şimdi her şey @"%SYSTEMDRIVE%\Program Files\Git\bin\bash.exe" --login
yolunda

25

Sh.exe yerine git-bash.exe kullanmayı tercih ediyorum.

start "" "%ProgramFiles%\Git\git-bash.exe" -c "tail -f /c/Windows/win.ini"

/usr/bin/bash --login -iSonunda arama yapıldığında pencereyi kapatmayı durdurabilirsiniz ;

start "" "%ProgramFiles%\Git\git-bash.exe" -c "echo 1 && echo 2 && /usr/bin/bash --login -i"

Not: Bunun iyi bir yol olduğundan emin değilim :)


4
Güzel cevap, ancak git-bash penceresi hemen kapanıyor. Komutun yürütülmesi bittikten sonra otomatik kapatmayı nasıl devre dışı bırakacağınızı biliyor musunuz?
Mark

@Mark Teşekkürler Mark. Yukarıdaki cevabıma bir örnek ekledim. Ne yazık ki bunu doğru şekilde nasıl yapmalıyız bilmiyorum çünkü ben bir windows kullanıcısı değilim :)
kujiy

1
[kod] start "" "% ProgramFiles% \ Git \ git-bash.exe" [/ code] harika çalışıyor!
PauAI

@PauAI 2018 şimdi ... start "" "%ProgramFiles%\Git\git-bash.exe"Bir yönetici komut satırından denedim ve Git Bash'i yeni bir pencerede açsa da, lssonuç vermeyen sonuçlar gibi basit bir komut yazdım . Bu yöntem, linux komutlarının yürütülmesine izin vermiyor gibi görünüyor. ... DÜZENLEME: Çalıştı, ls'yi çalıştırmak uzun bir zaman aldı (2 dakika). Sonra tekrar 1 saniyeden az bir sürede koştu. ... tuhaf.
Eric Hepperle - CodeSlayer2010

8

Git'i ortam değişkenine koymayı ve sadece

c:\Users\[myname]>sh
or 
c:\Users\[myname]>bash

Ortam değişkeni (Win7) oluşturma adımları

  • Masaüstünden Bilgisayar simgesine sağ tıklayın.
  • Bağlam menüsünden Özellikler'i seçin.
  • Gelişmiş sistem ayarları bağlantısını tıklayın.
  • Ortam Değişkenleri'ni tıklayın.
  • Kullanıcı değişkenleri bölümünde, YENİ düğmesine basın, değişken adını olarak GIT_HOME, değeri (yüklediğiniz klasör-git) olarak girin.

    • benim için öyleydi c:\tools\git, diğerleri belkiC:\Program Files\Git
  • PATHortam değişkenini bulun ve seçin. Düzenle'yi tıklayın. (PATH ortam değişkeni yoksa, Yeni'ye tıklayın).

  • Düzenle penceresinde yeni bir değer ekleyin %GIT_HOME%ve %GIT_HOME%\bin. Tamam'ı tıklayın. Tamam'ı tıklayarak kalan tüm pencereleri kapatın.
  • [Git için kullanmak istediğiniz CMD'yi kapattığınızdan emin olun]
  • yeni Komut istemini açın ve sadece shveya bashveya yazıngit-bash

2
Teşekkürler! Bunu GIT_HOME ile çalışırken ve CMD'den C:\Program Files\Gityazarak başardım git-bash. Yalnızca içeriğini görmek için tip PATH olmasına rağmen Ayrıca, garip, sen yazmalısınız bu git özel değişkenin içeriğini görmek içinecho %GIT_HOME%
CodeSlayer2010 - Eric Hepperle

Teşekkürler, bu harika bir ilaveydi. Buna eklemek için, GIT_HOMEdeğişkene sahip olduğunuzda ve git-bash(veya git-cmd) komutunu kullandığınızda, yeni bir pencerede açılacaktır. "PATH" ortam değişkenine eklerseniz, mevcut pencerede geçiş yapacaktır. Ayrıca exitgit bash'ın "çıkışını" yazabilir ve yine de DOS komut istemini koruyabilirsiniz.
Keith E. Truesdell

4
start "" "%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login -i

Git bash açılacak.


3

https://stackoverflow.com/a/33368029/15789

Buraya bir cevap gönderdim.

Bir Windows komut penceresi açın ve bu komut dosyasını çalıştırın. Çalışma dizininizde bir değişiklik varsa, çalışma dizininizde bir bash terminali açacak ve mevcut git durumunu gösterecektir. Exec bash'ı çağırarak bash penceresini açık tutar.

Birden fazla projeniz varsa, bu komut dosyasının kopyalarını farklı proje klasörüyle oluşturabilir ve ana toplu komut dosyasından çağırabilirsiniz.


3

Daha kalıcı bir çözüm oluşturmaya yardımcı olması için yukarıdaki bilgileri kullandım. Aşağıdakiler, Git Bash'i açmak için kullanabileceğiniz sh takma adını oluşturacaktır:

echo @start "" "%PROGRAMFILES%\Git\bin\sh.exe" --login > %systemroot%\sh.bat

Teşekkürler dpate! Yankı ifadenizi komut satırına yapıştırdım ve çalıştırdım shve bir git-bash penceresi açıldı ve komutları mükemmel şekilde çalıştırmayı başardım. Cevabınıza bunun nasıl çalıştığını açıklayan biraz ayrıntı ekleyebilir misiniz? Birinin bana balık vermesindense balık tutmanın nasıl işlediğini öğrenmeyi tercih ederim ve bence iyi bir cevap arayanlara fayda sağlar. teşekkürler
Eric Hepperle - CodeSlayer2010

0

Endoro'nun cevabı eskimiş ve yorum yapamam;

# if you want to launch from a batch file or the command line:

start "" "%ProgramFiles%\Git\bin\sh.exe" --login

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.