Ik ben bang dat ik iets vreselijk over het hoofd zie... Maar ik ben nu al zo gaar van het proberen en proberen ik wordt er helemaal lam van...
Ik heb een script dat aangepast moet worden via input in een ander script, in dit eerste script heb ik in eerdere functies al wat dingen succesvol aangepast met sed -i.
Nu wil ik een naam opgeven om mee te prefixen en cp dan het script met de prefix ervoor: cp $PREFIX-bestandsnaam. Daarna moet sed nog het pad en aanpassen en een nummer. maar dat gaat mis, output terminal sed: command not found. Slaat nergens op (volgens mij) want het bestand met de prefix erin en dergelijke bestaat gewoon en de te vervangen termen erin ook. Als ik in plaats van sed de boel echo dan staat er ook precies wat de bedoeling is, dus alle paden zijn correct...
De boosaardige functies:
Als ik bovenstaande functies even test met de files op de juiste plek dan krijg ik dus:
./tester: regel 34: sed: opdracht niet gevonden
Maar dit is toch een valide sed opdracht?
een paar functies ervoor doe ik er tig achter elkaar en dat gaat prima...
Ik heb een script dat aangepast moet worden via input in een ander script, in dit eerste script heb ik in eerdere functies al wat dingen succesvol aangepast met sed -i.
Nu wil ik een naam opgeven om mee te prefixen en cp dan het script met de prefix ervoor: cp $PREFIX-bestandsnaam. Daarna moet sed nog het pad en aanpassen en een nummer. maar dat gaat mis, output terminal sed: command not found. Slaat nergens op (volgens mij) want het bestand met de prefix erin en dergelijke bestaat gewoon en de te vervangen termen erin ook. Als ik in plaats van sed de boel echo dan staat er ook precies wat de bedoeling is, dus alle paden zijn correct...
De boosaardige functies:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
| SCANPATH=scanPath.sh; INSTALLDIR=/home/$USER/test; Question_Path() { read -p "(yes/no) :" REPLY case $REPLY in [Yy]*) echo read -p "Give a name to this search (e.g. Movies) :" PREFIX echo "Creating batchfile $PREFIX-$SCANPATH in $INSTALLDIR..." cp $INSTALLDIR/$SCANPATH $INSTALLDIR/$PREFIX-$SCANPATH && sudo chmod +x $INSTALLDIR/$PREFIX-$SCANPATH && set_Path ;; [Nn]*) ;; *) echo "Answer yes or no" Question_Path ;; esac } set_Path () { echo echo 'Please specify the full path to your folder containing moviefiles' echo "e.g. /home/$USER/Videos" read -p ":" PATH if [ -d $PATH ] then sed -i "s#/PATH/TO/VIDEOS#$PATH#g" $INSTALLDIR/$PREFIX-$SCANPATH set_Age else echo "$PATH doesn't exist, try again" set_Path fi } set_Age () { echo echo 'Please specify how many days back Periscope should search for' echo "e.g. 7" read -p ' :' AGE if [ $AGE -eq $AGE 2> /dev/null ] then sed -i "s/AGE_DAYS/$AGE/g" $INSTALLDIR/$PREFIX-$SCANPATH set_Cron else echo "$AGE is not a numeric value, try again" set_Age fi } Question_Path |
Als ik bovenstaande functies even test met de files op de juiste plek dan krijg ik dus:
./tester: regel 34: sed: opdracht niet gevonden
Maar dit is toch een valide sed opdracht?
een paar functies ervoor doe ik er tig achter elkaar en dat gaat prima...