Is it possible to parse standard error without writing out to a file first?
本问题已经有最佳答案,请猛点这里访问。
在一个简单的例子中,假设我们有一些标准错误:
1 2 | $ ls /fake/file ls: /fake/file: No such file or directory |
问题:是否可以从标准错误中解析出"
1 2 | $ ls /fake/file 2> tmp.file; sed 's/.* \(.*\):.*/\1/' tmp.file /fake/file |
像这样的东西?
1 | ls /fake/file 2>&1 | awk -F: '{print $2}' |
无论哪种方式都应该获取文件名
1 | ls /fake/file 2>&1 | awk -F: '{print $2}' | awk '{print $3}' |
要么
1 | ls /fake/file 2>&1 | awk '{print $4}' | awk -F: '{print $1}' |
要么
1 | ls /fake/file 2>&1 | sed 's/.* \(.*\):.*/\1/' |