GNU/Linux >> Znalost Linux >  >> Ubuntu

Linux Source Command s příklady

Úvod

V systémech Linux source je vestavěný příkaz shellu, který čte a spouští obsah souboru v aktuálním shellu. Tyto soubory obvykle obsahují seznam příkazů doručených interpretu TCL ke čtení a spuštění.

Tento kurz vysvětlí, jak příkaz source funguje a kdy jej použít.

Předpoklady

  • Systém s distribucí Linuxu (přečtěte si, jak nainstalovat Ubuntu 20.04, jak nainstalovat CentOS 7 nebo jak nainstalovat Arch Linux)
  • Účet s právy sudo
  • Přístup do okna terminálu/příkazového řádku

Syntaxe příkazu zdroje

zdroj používá následující syntaxi:

source [filename] [arguments]

Kde:

  • [filename] :Název nebo cesta k souboru, který má zdrojový příkaz spustit.
  • [arguments] :Všechny vámi poskytnuté argumenty se při spuštění souboru stanou pozičními parametry.

Místo source lze použít tečku (tečku). výsledkem je stejný výstup:

. [filename] [arguments]

Příklady zdrojových příkazů Linux

Zde jsou některé ze způsobů, jak můžete použít source příkaz:

Předat argumenty

Vytvořte textový soubor s názvem example.txt v Domů adresář s následujícím obsahem:

pwd
date
time

Použijte source příkaz pro předání obsahu tohoto souboru jako argument:

source example.txt

Výstup ukazuje, že source příkaz se přesouvá řádek po řádku a provádí všechny příkazy uvedené v example.txt .

Pro složitější příklad změňte obsah souboru example.txt komu:

echo "The current directory is:"
pwd
echo "Today's date is:"
date
echo "The time is:"
time

Přesuňte soubor na Home/source_command/example . Se source příkaz, předejte obsah souboru jako argument pomocí úplné cesty k souboru:

source source_command/example/example.txt

Přečtěte si konfigurační soubor

source příkaz také umožňuje číst proměnné ze souboru. Začněte vytvořením vzorového konfiguračního souboru example_config.sh v Domů adresář a přidání následujícího obsahu:

VAR1="a"
VAR2="b"
VAR3="c"

Vytvořte bash skript s názvem example_bash.sh a přidejte následující:

#!/usr/bin/env bash

source example_config.sh

echo "VAR1 is $VAR1"
echo "VAR2 is $VAR2"
echo "VAR3 is $VAR3"

source příkaz umožňuje example_bash.sh pro čtení proměnných VAR1 , VAR2 a VAR3 které jste definovali v example_config.sh .

Spusťte soubor example_bash.sh skript pomocí source příkaz:

source example_bash.sh

Funkce zdroje

Pokud máte funkce, které používáte v několika různých skriptech, můžete je uložit jako samostatné soubory a použít source příkaz k odkazování na ně při psaní skriptů.

Začněte například vytvořením funkce check_root.sh který kontroluje, zda uživatel spouštějící skript je uživatel root:

check_root() {
  if [[ $EUID -ne 0 ]]; then
    echo "You must run this script as root" 
    exit 1
  fi
}

Vytvořte skript s názvem example_script.sh a použijte source příkaz pro vložení check_root.sh funkce:

#!/usr/bin/env bash

source check_root.sh
check_root

echo "This is the root user"

Spuštění tohoto skriptu jako uživatel bez oprávnění root vytvoří "You must run this script as root" jako výstup a ukončí skript:

bash example_script.sh

Při spuštění skriptu jako uživatel root se zobrazí "This is the root user" jako výstup:

sudo bash example_script.sh

Obnovit aktuální prostředí prostředí

Pro tento příklad vytváříme alias příkaz ll :

alias ll = 'ls -l'

Tento příkaz zobrazí seznam souborů v aktuálním adresáři v rozšířeném formátu:

Tento příkaz však funguje pouze v aktuální relaci shellu. Chcete-li, aby byl trvalý, otevřete bashrc soubor s:

sudo nano ~/.bashrc

Pod #some more ls aliases přidejte následující:

alias ll = 'ls -l'

Obnovte aktuální prostředí prostředí pomocí source příkaz:

source ~/.bashrc

Ubuntu
  1. Linux Tee Command s příklady

  2. Příkaz linuxové hlavy s příklady

  3. JQ Command v Linuxu s příklady

  1. wc Linux Command s příklady

  2. Linux řazení příkazů s příklady

  3. Echo Command v Linuxu (s příklady)

  1. man Command v Linuxu s příklady

  2. Příkaz AWK v Linuxu s příklady

  3. Curl Command v Linuxu s příklady