我有什麼似乎是一個相當簡單的問題,但我找不到答案。
我正在驗證文件的travis腳本。
我正在使用第三方軟件,因此我對開發沒有影響。
問題:
正如您所知,travis腳本要求非零退出代碼才能使構建失敗。不幸的是,我使用的軟件只在標準輸出中輸出錯誤消息,但仍然存在代碼0. 我的想法是使用grep。
當前我使用的命令:
! echo "SomeInput" | grep -Pzo "\A[^\x{0000}]*error message[^\x{0000}]*\Z"
如果錯誤消息被打印,它返回一個非零退出代碼並打印錯誤消息。
正如您可能已經注意到的,當沒有錯誤出現時,輸出不會顯示。如果我們想檢查一個特別的變化是否引入了警告,這是不好的。那麼它也不會被顯示。
任何想法?輸出輸入,如果它不包含特定的字符串
1
A
回答
1
如果我理解正確,您想通過grep
檢測錯誤 - 在輸出中某些模式,和同時您還希望看到整個輸出。棘手的部分是grep
本身會消耗輸出。
我不是那裏有一個簡單的聰明的解決方案。你需要消耗兩次輸出。一次只打印出來,還有一次檢查錯誤。
一種解決方案是先將輸出保存到文件中,然後對其進行處理。例如:
some_command 2>&1 | tee out.log
! grep -Pzo "\A[^\x{0000}]*error message[^\x{0000}]*\Z" out.log
相關問題
- 1. bash命令輸出包含特定字符串的文件名
- 2. 返回字符串,如果它包含特定的字
- 3. 替代變量的值,如果它包含特定字符串
- 4. 如果字符串輸入包含空格,則提示錯誤
- 5. 如果輸入框包含一定數目的字符
- 6. MySQLdb輸入其中字符串包含字符串分隔符
- 7. 檢查輸入的特定字符串
- 8. 輸入字符串,如果不工作
- 9. C++輸入字符串包含ASCII 26(替代)字符。如何擺脫它?
- 10. HIVE輸出特定字符串
- 11. 如何檢查輸入字段,它只包含數字或特殊字符
- 12. 不包含特定字符串
- 13. 在linux中輸入包含希臘字符的字符串
- 14. javascript當文本輸入只包含特定字符時執行
- 15. 如果輸入不包含字符串,則隱藏列表元素
- 16. 如果URL包含特定字符串,htaccess重定向
- 17. 如果url包含特定字符串,htaccess重定向
- 18. LLVM字符串輸入/輸出
- 19. 幫助C字符串輸入/輸出
- 20. 字符串輸入和輸出用C
- 21. 字符串矩陣輸入輸出
- 22. Joomla |如何過濾包含html標籤的輸入字符串
- 23. 如何從標準輸入包含空格的字符串?
- 24. jQuery不分離()如果它包含輸入標籤'ing'
- 25. 從包含重音字符的shell_exec()輸出變得不穩定
- 26. 如果字符串不包含在python
- 27. 如果文件不包含該heredoc字符串,在特定的heredoc字符串之後追加heredoc字符串?
- 28. 如何在XAML(Silverlight 4)中輸入包含點字符的字符串文字?
- 29. 如果列包含特定字符串,則返回標題
- 30. 如果字符串包含特定單詞(可變)
'grep --invert-match [PATTERN]'/'grep -v [PATTERN]'? –