2012-01-27 67 views

回答

2

要引用您的示例:请注意,文件名可能包含换行符,太。

一个安全的方法来计算文件将

find -name "pattern_*.sh" -printf '\n' | wc -c 

这避免了打印文件名,只打印一个换行符代替。

+0

甚至是'-printf'x''来保存一个角色。无需打印换行符。 – l0b0 2012-01-27 15:58:41

+0

不需要 - 真的,但你在哪里保存一个角色?选择你感觉舒适的任何东西...... – 2012-01-28 11:32:29

0

为什么不做wc -l并看到它返回1?

5

如果$str包含新行,您可以通过检查,

if [ $(echo $str | wc -l) -gt 1 ]; 
then 
    // perform operation if it has new lines 
else 
    // no new lines. 
fi 
7

您可以使用模式匹配:

[[ $FILE == *$'\n'* ]] && echo More than one line 
+0

这是没有美元符号,在我的情况下更好。 – 2016-11-03 11:56:35

相关问题