5
Tôi có điều này trong Jenkinsfile tôi:Làm thế nào để chuyển hướng stderr trong Jenkins đường ống
sh 'cat /opt/jenkins/workspace/JenkinsfileTest/testfile 2>/dev/null
nhưng nó thực sự chạy như thế này:
[JenkinsfileTest] Running shell script
+ cat /opt/jenkins/workspace/JenkinsfileTest/testfile
phần chuyển hướng đã biến mất.
Có điều gì sai với lệnh của tôi không?
Dấu hiệu '+' cho biết đầu ra gỡ lỗi từ 'bash -x', vì vậy có thể nó hiển thị các phần của lệnh thay vì dòng đầy đủ tùy thuộc vào cách nó được đánh giá (thử các đường ống như' cat .. . tee somefile.log' để kiểm tra) – giorgiosironi
Tôi muốn '2>/dev/null' vì đôi khi'/opt/jenkins/workspace/JenkinsfileTest/testfile' không tồn tại. Điều này là chấp nhận được. Nhưng tôi không muốn nó xuất ra 'Không có tập tin hoặc thư mục' như vậy khi tập tin không tồn tại. Có cách nào để đạt được điều này? – Ardar
'test -e JenkinsfileTest/testfile && any_command' sẽ chỉ thực thi' any_command' nếu tệp tồn tại – giorgiosironi