我是 unix 脚本的初学者,谁能解释一下以下几行的含义:
BTEQTEMPDELLOGS=$LOGS/${tablename}.DELlog
rm $BTEQTEMPDELLOGS 2>/dev/null 1>/dev/null
答案1
(“删除”)命令rm
删除文件。要删除的文件的名称在变量中给出BTEQTEMPDELLOGS
,而不是直接给出。任何错误消息 ( 2>
) 都会rm
被发送/dev/null
(丢弃),与正常输出 ( ) 相同1>
。
变量BTEQTEMPDELLOGS
本身是在第一行中通过连接变量LOGS
、文字“/”和tablename
末尾带有字符串“.DELlog”的变量来构造的。
以下是有关(输入和)输出重定向的文档:GNU bash 手册:重定向。
在您的示例中,仅重定向输出,而不重定向输入。 1>
重定向发出的正常消息rm
(通常没有),2>
仅重定向错误消息(未找到文件等)。
以下是有关这些数字的更多详细信息(从程序员的角度来看“文件句柄”):stdin (0)、stdout (1) 和 stderr (2) 程序的输入/输出。
以下是相关文档/dev/null
:维基百科:NULL 设备