Voglio cambiare la directory di lavoro del mio script con un altro script che è stato incluso.
Primo copione:
#!/bin/bash
pwd
source script2
pwd
Sceneggiatura Sedond:
cd ..
pwd
Il risultato è il seguente:
> ./script1
/home/sebi/testdir1/testdir2 # 1st script
/home/sebi/testdir1 # 2nd script
/home/sebi/testdir1 # 1st script
Ho modificato la domanda mentre ho testato questo script e ha funzionato come volevo, tuttavia lo script seguente funziona in modo diverso, poiché il pedice termina l'esecuzione il genitore si trova nella stessa directory di prima del richiamo del pedice.
#!/bin/bash
while :
do
sleep 5
cat /home/.../shelldata.txt >> /home/.../gmodshell #logging
((source /home/..../shelldata.txt) 2>&1) | \
sed -e "s/..shellRunner.sh..line../SH/" > \
/home/..../shellFeedback.txt
echo > /home/..../shelldata.txt
done
Lo scopo è quello di accedere a bash usando i file in modo da poter scrivere il comando su un file e dopo un po 'ottengo l'output in un altro file.