BeispielWie kann man eine Variable als Pfad von einem anderen Skript aufrufen?
Var = '/etc/sysconfig/..'
export Var
bash script1.sh
in einem anderen script1
cat $Var
Problem. Die Variable ruft nicht die Datei in diesem Pfad dieses
BeispielWie kann man eine Variable als Pfad von einem anderen Skript aufrufen?
Var = '/etc/sysconfig/..'
export Var
bash script1.sh
in einem anderen script1
cat $Var
Problem. Die Variable ruft nicht die Datei in diesem Pfad dieses
Sie:
Var='/etc/sysconfig/..'
bash script1.sh "$Var"
Dann in script1.sh
:
Var=$1
cat "$Var"
Die Anführungszeichen um "$Var"
erforderlich sind Pfade mit Leerzeichen zu unterstützen.
Ihre variable Zuordnung falsch ist, sollte es sein:
Var='/etc/sysconfig/..'
Keine Leerzeichen um =
.
Wenn Sie in einer Umgebungsvariable für ein Skript gesendet werden soll nur dann können Sie verwenden:
Var='/etc/sysconfig/..' ./my_script.sh
Und innen my_script.sh
:
printf "%s\n" "$Var"
# Will print /etc/sysconfig/..
Wenn Sie Argumente an my_script.sh
senden wollen das tun, was @JohnZwinck suggested. Was ich vorgeschlagen habe, ist nur die Umgebungsvariable zu ändern und sollte nicht dazu missbraucht werden, reguläre Variablen an einen Befehl zu senden/zu empfangen.
denke ich keine Notwendigkeit, mehr Sache
Skript 1
#!/bin/bash
a="/home/example" ### you can do with export command also export a="/home/example"
sctipt2 ## wirksam machen
. script1;
cd $a