GNU/Linux >> Znalost Linux >  >> Linux

Proč není CD program?

Vždy mě zajímalo, proč cd není program, ale nikdy se mi nepodařilo najít odpověď.

Ví někdo, proč tomu tak je?

Přijatá odpověď:

cd příkaz upravuje „aktuální pracovní adresář“, že?

„aktuální pracovní adresář“ je vlastnost, která je jedinečná pro každý proces.

Pokud tedy cd byl program, který by fungoval takto:

  1. cd foo
  2. cd proces se spustí
  3. cd process změní adresář pro proces cd
  4. cd proces ukončí
  5. váš shell má stále stejný stav, včetně aktuálního pracovního adresáře, jako před spuštěním.

Linux
  1. Linux – Kdy nemám zabít -9 A proces?

  2. Linux – proč používáme Su – a nejen Su?

  3. Proč substituce procesu Bash nefunguje s některými příkazy?

  1. Proč Find nepřijímá ‚-exec Cp {} Dir +‘?

  2. Proč dlouhé zpoždění poté, co příkaz nebyl nalezen?

  3. Proč „ukončit &“ nefunguje?

  1. Linux:zavřete program pomocí příkazového řádku (nezabijte jej)

  2. proč nefunguje sftp rmdir?

  3. Proč používáme su – a nejen su?