使用
sort -c file
我收到第一行未排序为报告的错误行,如果文件已排序则什么也没有。 (并且-c不会对文件进行排序。)
我想检查是否收到报告。 这样的事情:
if [ $(sort -c file) == *something* ]
then
echo wasn't sorted
sort file
...
else
echo already sorted
...
fi
有可能吗?怎么办?
使用-C而不是-c的相同问题(如果使用“ silent”选项,是否相同)...
答案 0 :(得分:3)
if sort -C file; then
# return code 0
echo "sorted"
else
# return code not 0
echo "not sorted"
fi
答案 1 :(得分:2)
这里是相同的概念,只是带有一点语法糖。
sort -C file || echo -n "not " ; echo "sorted"
我更喜欢Cyrus使用的格式,我只是想提供一个有趣的版本。