GNU/Linux >> Znalost Linux >  >> Linux

Proč nemohu použít CD ve skriptu Bash?

Tato otázka zde již obsahuje odpovědi :Skript pro změnu aktuálního adresáře (cd, pwd)

(11 odpovědí)
Uzavřeno před 3 lety.

Vytvořil jsem velmi jednoduchý skript

#!/bin/bash
mkdir $1 && cd $1

když spustím

myscript test

Vytvoří testovací adresář, ale nevstoupí dovnitř hned poté. Nechápu proč, na mé fedoře 27 tento skript funguje bez problémů, ale na mém debian stretch k tomuto chování dochází. Mohl by někdo vysvětlit, proč mám tuto chybu.

Přijatá odpověď:

Můžete a funguje to perfektně. Ale když je skript hotový, jeho prostředí (včetně jeho pracovní adresář) je zničen.

Zkuste source myscript test spustit váš skript, jako byste zadali jeho příkazy do vašeho skutečného interaktivního shellu a váš pracovní adresář bude změněn.


Linux
  1. Získat úplnou cestu ze skriptu Bash?

  2. Použít rozšíření .sh nebo .bash pro skripty Bash?

  3. Tomuto skriptu nerozumím. Bash?

  1. Proč nemohu získat výstup Pgrep přímo na proměnnou ve skriptu Bash?

  2. Použijte Expect ve skriptu Bash k zadání hesla příkazu SSH

  3. Přidejte bash skript do cesty

  1. Jak používat šifrované heslo ve skriptu Linux Bash Shell

  2. Jak používat příkaz if else Conditionals ve skriptu Bash

  3. Jak spustit bash skript?