我有多个脚本可以连接到sftp服务器并放置/获取文件。最近,sftp管理员为所有登录添加了一个较大的标头,这炸毁了我的日志文件,而由于它炸毁了文件大小以及使日志有些不可读,我想将其排除在外。
原样,命令具有以下格式:
sftp user@host <<EOF &>> ${LOGFILE}
get ...
put ...
exit
EOF
现在,我尝试删除所有新行,所有新行均以管道开头(它们基本上是用盒子装起来的)。
sftp user@host <<EOF | grep -v '^|' &>> ${LOGFILE}
get ...
put ...
exit
EOF
这将从${LOGFILE}
中排除行,但将它们扔到stdout
中,这意味着它们最终会出现在另一个日志文件中,我们也不希望它们出现(这些脚本由调度程序调用)。奇怪的是,它似乎也从连接尝试输出中过滤掉了第一行。
Connecting to <host>...
并且也将其重定向到stdout
。不是世界末日,但我确实觉得很奇怪。
如何过滤以|
开头的行,使它们在任何地方都不会显示?