git-komentoa ei löydy

Minun oli asennettava git lähteestä RHEL: ään. Asennuksen jälkeen git-komennon näytetään olevan /usr/local/bin/git -kohdassa, kun yritetään komentoa whereis. Tämä polku on käytettävissä kohdassa $PATH.

Kun kirjoitan git, siinä lukee edelleen ”Komentoa ei löydy”. Kuinka ratkaista tämä?

EDIT: erilaisten komentojen ulostulo

$type git type: Command not found. $which git git: Command not found. $ls -l /usr/local/bin/git -rwxr-xr-x 112 root users 5851488 Mar 15 20:07 /usr/local/bin/git $whereis git git: /usr/local/bin/git $echo $PATH /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 

EDIT: Se toimii nyt, mutta en tiedä miksi

Katkaisin telnet-yhteyden ja kirjauduin sisään muutama minuutti sitten ja huomasin, että git-komento toimii. En ole varma, mikä sai sen toimimaan. Tämä on hämmentävää.

Kommentit

  • Lisää type git, which git, ls -l /usr/local/bin/git tuotokset.
  • @manatwork katso muokkaus.
  • @Marco lisäsi echo $ PATH: n lähdön .
  • Luulen, että @manatwork tarkoitti file eikä type 😉 joten hän haluaa (ja minä myös) nähdäksesi file /usr/local/bin/git
  • @Huygens -lähdön, type on sisäänrakennettu komentotulkki dash, bash ja zsh. Jos käytät ksh, sinulla voi olla hyvä tekosyy olla tietämättä sitä. (Minulla ksh on vain alias whence -nimellä type. varmista, kuinka laaja tällainen asetus on.) pastebin.com/VzScxzRg

Vastaa

Virheilmoituksista, joita käytät (t) csh: lla. Se olisi hyödyllistä mainita kysymyksessäsi, varsinkin kun näytät uudelleen $ kehotteeksi, ja se on perinteisesti Bourne-kehote, ei csh-kehote.

type on sisäänrakennettu Bourne-tyylinen kuori. Ei t olemassa csh: ssä. Kun suoritat type git, se kertoo, että type -komentoa ei löydy.

Monet kuoret säilyttävät tietoja komentojen sijainti hakupolulla välimuistissa. En tiedä, välittääkö jokin csh-versio negatiivisista hakuista välimuistit, mutta näyttää siltä, että sinun on. Suorita välimuisti päivittämällä komento rehash. Kun käynnistät uuden kuori-ilmentymän, se on uusi välimuisti, joten ei muista, että git ei ollut läsnä aiemmin.

Kommentit

    i Hei Gilles, minun olisi pitänyt mainita kuori. Anteeksi siitä. Mutta saan $ kehotteessa sekä bashille että tcsh: lle. tsch-muodossa se on [käyttäjänimi @ järjestelmänimi] $-muoto ja bash-muodossa bash-3,2 $-muoto.
  • Tämä on mielestäni lähin mahdollinen selitys tapahtuneelle. Yritän luoda tämän uudelleen ja tarkistaa ja palata takaisin. Kiitos …

Vastaa

Varmista, että kuten kohdassa tätä säiettä , kuorettasi ei ole muutettu oletettavasti saamastasi:

Huomasin juuri, että kuori muutettiin CSH: ksi ja se loi ongelman.

[root@localhost ~]# grep ^"$USER" /etc/passwd root:x:0:0:root:/root:/bin/csh 

Vaihdoin sen bashiksi ja ongelma ratkesi!

[root@localhost ~]# type export export is a shell builtin 

Se selittäisi miksi saat ”type: Command not found.” -virhesanoman.

Kokeilin näitä komentoja:

[root@localhost ~]# csh [root@localhost ~]# type export type: Command not found. [root@localhost ~]# bash [root@localhost ~]# type export export is a shell builtin [root@localhost ~]# grep ^"$USER" /etc/passwd root:x:0:0:root:/root:/bin/bash 

kommentit

  • Kuoren vaihtaminen bashiksi aiheuttaa ' kirjoita ' -komento toimimaan. Git-komento toimii nyt myös menemättä bashiin. En tiedä miksi! Katso muokkaus.

Vastaus

Todennäköisin syy on, että sinulla on oikea PATH, mutta ei oikea LD_LIBRARY_PATH.

Viimeisin git -asennustiedosto on binääritiedosto, joka on linkitetty dynaamisesti. Kun noudatit asennusohjeita, se todennäköisesti sijoittaa kirjastot (.so -tiedostot) /usr/local/lib -kansioon, sinun on lisättävä tämä polku LD_LIBRARY_PATH. Kokeile ja suorita sitten git:

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib git 

Jos se ei toimi, voisitko antaa ldd /usr/local/bin/git -lähdön . Kiitos.

PS: Jos ratkaisu toimi, sinun on lisättävä LD_LIBRARY_PATH-rivi .bash_profile

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *