GNU/Linux >> Znalost Linux >  >> Linux

Jak spustit bash skript přes absolutní cestu?

Chci spustit příkaz s absolutní cestou z libovolné složky a nechat skript spustit.

Pokud se pokusím spustit s absolutní cestou, zobrazí se chyba:

/test/test_bash_script.sh 
-bash: /test/test_bash_script.sh: No such file or directory

Soubor /test/test_bash_script.sh neexistuje, a proto jej nelze provést.

  • Absolutní cesta je definována jako určení umístění souboru nebo adresáře z kořenového adresáře (/ ).

  • /test nemůže být absolutní cestou jako adresář /test neexistuje (je to podadresář vašeho domovského adresáře).

Máte dvě možnosti:

  1. Použijte správnou absolutní cestu ke skriptu:

    /Users/danylo.volokh/test/test_bash_script.sh
    
  2. Použijte cestu založenou na vašem domovském adresáři:

    ~/test/test_bash_script.sh
    

Co je absolutní cesta?

Absolutní cesta je definována jako určení umístění souboru nebo adresáře z kořenového adresáře (/ ).

Zdroj Absolutní cesta vs relativní cesta v Linux/Unix

Protože lomítka vždy oddělují komponenty názvu, pokud cesta začíná lomítkem, předpokládá se, že název cesty začíná bezejmenným adresářem "ROOT". Adresář ROOT nemá žádné jméno. Je to kořen celého stromu souborového systému Unix.

Název cesty začínající lomítkem se nazývá absolutní cesta, protože vždy začíná v ROOTu.

Protože je obtížné hovořit o adresáři, který nemá žádné jméno, obvykle (nesprávně) používáme název "/" (lomítko) pro kořenový adresář. To je špatně, protože komponenty názvu cesty nemohou obsahovat lomítka a samostatné názvy komponenty. Pochopte, že když pro ROOT použijeme „/“, máme na mysli skutečně „bezejmenný ROOT adresář, který je nalevo od lomítka“, nikoli lomítko samotné.

Zdrojové cesty Unix/Linux (absolutní, relativní, tečka, tečka)


Absolutní cesta je /Users/danylo.volokh/test/test_bash_script.sh , nikoli /test/test_bash_script.sh . Pak má Bash pravdu.


Linux
  1. Jak spustit příkazy bash Linuxu ve skriptu PERL?

  2. Ssh – Jak spustit skript ihned po připojení přes Ssh?

  3. Získat úplnou cestu ze skriptu Bash?

  1. Jak spustit skript??

  2. Jak rozdělit řetězec ve skriptu Bash

  3. Jak převést .. v názvech cest na absolutní název v bash skriptu?

  1. Jak získám absolutní adresář souboru v bash?

  2. Spusťte bash skript jako démona

  3. Jak spustit python skript na terminálu (ubuntu)?