Der Befehl source
führt das bereitgestellte Skript (die Ausführungsberechtigung ist nicht obligatorisch ) in der current Shell-Umgebung aus, während ./
das bereitgestellte ausführbare Skript in einer neuen Shell ausführt. Der Befehl
source
hat ein Synonym . filename
.
Um es klarer zu machen, werfen Sie einen Blick auf das folgende Skript, das den Alias setzt.
make_alias
#! /bin/bash
alias myproject='cd ~/Documents/Projects/2015/NewProject'
Nun haben wir zwei Möglichkeiten, dieses Skript auszuführen. Aber mit nur einer Option kann der gewünschte Alias für die aktuelle Shell unter diesen beiden Optionen erstellt werden.
Option 1: ./make_alias
Skript zuerst ausführbar machen.
chmod +x make_alias
Ausführen
./make_alias
Verifizieren
alias
Ausgabe
*Whoops! * Alias ist mit der neuen Shell weg.
Nehmen wir die zweite Option.
Option 2: source make_alias
Ausführen
**nothing**
oder
source make_alias
Verifizieren
. make_alias
Ausgabe
Yeah Alias ist gesetzt.