find 指令在 jenkins 中失敗,但在終端機中失敗

find 指令在 jenkins 中失敗,但在終端機中失敗

我想使用 ffmpeg 在 jenkins 建置作業中自動匯出大量影片檔案中的所有影格。

當我 ssh 進入從站並在同一資料夾中執行它時,該腳本運行良好:

find . -name "*.mp4" -exec ffmpeg -i {} -qscale:v 1 -vf fps=6 {}_exportedFrame_%d.jpg \;

它應該找到所有 mp4 檔案並對其運行 ffmpeg。

當 jenkins 運行它時(執行 shell 插件),它會失敗並顯示此訊息:

08:51:32 find: ffmpeg: No such file or directory
08:51:32 find: ffmpeg: No such file or directory
08:51:32 find: ffmpeg: No such file or directory
08:51:32 find: ffmpeg: No such file or directory
...many more lines of the same error

終端輸出(運作良好):

bash-3.2$ find . -name "*.mp4" -exec ffmpeg -i {} -qscale:v 1 -vf fps=6 {}_exportedFrame_%d.jpg \;
ffmpeg version 4.1 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gpl --enable-libmp3lame --enable-libopus --enable-libsnappy --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-opencl --enable-videotoolbox
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
...

Build Slave 正在運行最新版本的 mac os。 ffmpeg 已安裝。

編輯:我已將 ffmpeg 添加到路徑文件中

bash-3.2$ cat /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin/ffmpeg
bash-3.2$ type ffmpeg
ffmpeg is /usr/local/bin/ffmpeg

我仍然遇到同樣的錯誤。

答案1

可能ffmpeg不屬於PATH詹金斯的工作。

type ffmpeg在您的終端中運行以查看ffmpeg位於何處以及echo $PATH您的詹金斯工作中並進行比較。

相關內容