Mer*_*glu 1 unix bash redirect
我找到了一个bash 脚本,列出了文件开头或结尾带有空行的所有文件.
for f in `find . -type f`; do
for t in head tail; do
$t -1 $f |egrep '^[ ]*$' >/dev/null && echo "blank line at the $t of $f" ;
done;
done
Run Code Online (Sandbox Code Playgroud)
我想将输出传递给一个文件.我把echo线改为:
$t -1 $f |egrep '^[ ]*$' >/dev/null && echo "blank line at the $t of $f" > blank_lines.log
Run Code Online (Sandbox Code Playgroud)
但这没效果.
我想问一下符号的&&作用以及为什么上面的行没有将输出传递给文件.
这不会重定向输出,只有当第一个成功时才会添加另一个命令来执行.即command1 && command2表示执行command1,如果成功执行command2.当且仅当两个命令都成功时,执行此语句的结果才是成功.