#!/bin/bash#log.shLOG_DIR=/var/log  #->定义日志的路径为变量;ROOT_UID=0  #->UID为0的用户只有root;if [ "$UID" -ne "$ROOT_UID" ] #->判定当前的用户的UID是否等于0,即是否是root用户;#-> -ne:条件测试中的  等于;then     echo "Must be root to run this script."#->如果以上测试不成立则显示该内容;exit 1#->如果以上测试成立则立刻退出继续执行下面的操作;ficd $LOG_DIR || {#->切换到日志目录;#->符号"||"表示如果前面的表达式成功就不会执行后边的表达式,但是如果失败则会执行大括号里面的内容后立刻退出;    echo "Cannot change to necessary directory." >&2exit 1}#->以上的条件测试通过后将会执行清除操作;   cat /dev/null > messages  &&  echo "Logs cleaned up."#->通过"&&"命令执行两条命令,须第一条执行成功后再执行第二条   exit 0~
1. exit 1指的是脚本运行的返回值,用来指示成功或失败,以及失败的原因。 2. 通常,exit 0表示成功,exit 1表示失败。 3. 你在自己写脚本的时候,可以定义失败的类型,比如exit 1表示错误1, exit 2表示错误2。 4. 在脚本运行后,可以用echo $?命令来确定脚本的返回值,从而判定脚本是否成功运行,或则有哪些错误。

-------------------------以下内容出自"oldboy讲师课程"------------------------------------

清空日志三种方法:

(1)

[root@YZC ~]# echo aaaaa > test.log  #->建立一个测试文件test.log;[root@YZC ~]# cat test.log  #->查看是否建立成功;aaaaa[root@YZC ~]# >test.log  #->直接一个">"符号重定向到这个测试文件;[root@YZC ~]# cat test.log  #->再次查是否成功清除;[root@YZC ~]#               #->已经清空;

(2)

[root@YZC ~]# echo aaaaa > test.log #->建立测试文件test.log;[root@YZC ~]# cat test.log #->查看是否建立成功;bbbbb[root@YZC ~]# echo "">test.log  #->直接重定向一个空到测试文件内;[root@YZC ~]# cat test.log  #->再次查看是否成功清除;                            #->已经清空,但是出现了一行空行(不重要);[root@YZC ~]#

(3)

[root@YZC ~]# echo aaaaa > test.log #->建立测试文件test.log;[root@YZC ~]# cat test.log #->查看是否建立成功;bbbbb[root@YZC ~]# cat /dev/null >test.log  #->查看黑洞并将它重定向到测试文件;[root@YZC ~]# cat test.log  #->再次查看是否成功清除;[root@YZC ~]#               #->已经清空;

应用场景:保留文件、清空内容