verwende Ich führe parametrisierten Build in Jenkins, um Nein zu zählen. von Zeilen in der Datei, die 1 Dateiparameter hat. Sein Speicherort ist pqr
. Der Name der Skriptdatei lautet linecount.sh
und wird auf dem Remote-Server gespeichert. Als ich versuchte, es mit dem Befehl sh linecount.sh
Dateiname auszuführen, funktioniert es perfekt von Jenkins. Aber wie ich Dateinamen aus dem Argument entfernen und führen gleiche Skript wie parametrisiert Build es unten Fehler zeigt auf der Konsole:Wie man Dateiparameter in jenkins
Started by user Prasoon Gupta
[EnvInject] - Loading node environment variables.
Building in workspace users/Prasoon/sample_programs
Copying file to pqr
[sample_programs] $ /bin/sh -xe /tmp/hudson3529902665956638862.sh
+ sh linecount.sh
PRASOON4
linecount.sh: line 15: parameterBuild.txt: No such file or directory
Build step 'Execute shell' marked build as failure
Finished: FAILURE
Ich lade Datei (parameterBuild.txt
) von meinem lokalen Rechner. Warum gibt es diesen Fehler?
Mein Zweifel ist in Shell-Skript Ich verwendete Argument als $1
. Wie kann ich dies beziehen, wenn ich Datei als Parameter nehme.
Vergewissern Sie sich, dass der Parameter-Datei eingefügt wird, wie Sie in den Arbeitsbereich erwarten, z.B. Führen Sie in Ihrem Shell-Befehl ein 'ls -l' aus. –
Vielen Dank, aber ich möchte es direkt von meinem lokalen Rechner hochladen, will meine Arbeit benutzerfreundlicher machen. –
Ja, versteh das. Aber um das Problem zu isolieren, was passiert, wenn Sie 'ls -l' als Teil Ihres Shell-Befehls in der Jobkonfiguration ausführen? Z.B. listet es 'ParameterBuild.txt' dort oder irgendwelche anderen Dateien auf? –