6
如何在bash脚本中同时获取PIPESTATUS和输出
我正在尝试使用此命令获取文件的最后修改日期 TM_LOCAL=`ls -l --time-style=long-iso ~/.vimrc | awk '{ print $6" "$7 }'` 执行此行后,TM_LOCAL的值类似于“ 2012-05-16 23:18” 我还想检查PIPESTATUS以查看是否有错误。例如,如果file不存在,则ls返回2。但是$?由于返回值为,所以其值为0 awk。 如果仅运行此命令,则可以通过查看以下内容检查ls的返回值: ${PIPESTATUS[0]} ls -l --time-style=long-iso ~/.vimrc | awk '{ print $6" "$7 }' 但是$PIPESTATUS,如果像第一个示例中那样将输出分配给变量,则不会按我预期的那样工作。在这种情况下,$PIPESTATUS数组只有1个元素,与$? 因此,问题是,如何同时获得两者$PIPESTATUS并将输出分配给变量?