(BraceGroup children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INPUT) op:Equal rhs:{(-1)} spids:[67])] spids: [67] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_EqualTilde left: {($ VSub_Number '$1')} right: {(Lit_Other '^') (-) (Lit_Other '?') (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '+') (Lit_Other '$') } ) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:INPUT) op: Equal rhs: {($ VSub_Number '$1')} spids: [95] ) ] spids: [95] ) ] spids: [16777215 91] ) ] spids: [16777215 100] ) (C {(.)} {(/DietPi/dietpi/func/dietpi-globals)}) (C {(G_CHECK_ROOT_USER)}) (C {(export)} {(Lit_VarLike 'G_PROGRAM_NAME=') (SQ <DietPi-Logclear>)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:TEMP_FILE) op: Equal rhs: {(DQ (/tmp/dietpi-logclear))} spids: [141] ) ] spids: [141] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILEPATH_LOGFOLDER) op: Equal rhs: {(DQ (/var/log))} spids: [148] ) ] spids: [148] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILEPATH_BACKUPFOLDER) op: Equal rhs: {(DQ ($ VSub_Name '$HOME') (/logfile_storage))} spids: [154] ) ] spids: [154] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FILE_NAME) op:Equal rhs:{(DQ )} spids:[162])] spids: [162] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FILE_TYPE) op:Equal rhs:{(0)} spids:[171])] spids: [171] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FILESIZE_BYTES) op:Equal rhs:{(0)} spids:[175])] spids: [175] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:PROCESS_FILE) op:Equal rhs:{(0)} spids:[179])] spids: [179] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FP_EXCLUDED_LOGFILES) op: Equal rhs: {(DQ (/DietPi/dietpi/.dietpi-logclear_exclude))} spids: [196] ) ] spids: [196] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INFO_EXCLUDED_LOGFILES) op:Equal rhs:{(0)} spids:[202])] spids: [202] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INFO_SIZE_CLEARED) op:Equal rhs:{(0)} spids:[219])] spids: [219] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INFO_FILES_PROCESSED) op:Equal rhs:{(0)} spids:[223])] spids: [223] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INFO_LOGS_DELETED) op:Equal rhs:{(0)} spids:[227])] spids: [227] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INFO_LOGS_CLEARED) op:Equal rhs:{(0)} spids:[231])] spids: [231] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INFO_LOGS_NOTSUPPORTED) op:Equal rhs:{(0)} spids:[235])] spids: [235] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:INFO_BACKUPS_MADE) op:Equal rhs:{(0)} spids:[239])] spids: [239] ) (FuncDef name: Process_Logfiles body: (BraceGroup children: [ (SimpleCommand words: [{(find)} {(DQ ($ VSub_Name '$FILEPATH_LOGFOLDER'))} {(-type)} {(f)}] redirects: [ (Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(DQ ($ VSub_Name '$TEMP_FILE'))} ) ] ) (SimpleCommand words: [{(readarray)} {(-t)} {(ARRAY_LOG_FILEPATH)}] redirects: [ (Redir op: <Redir_Less '<'> fd: 16777215 arg_word: {(DQ ($ VSub_Name '$TEMP_FILE'))} ) ] ) (ForExpr init: (BinaryAssign op_id: Arith_Equal left: (LhsName name:i) right: (ArithWord w:{(Lit_Digits 0)}) ) cond: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:i) right: (ArithWord w: { (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [325 331] ) } ) ) update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i)) body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE_NAME) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(-e)} { (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [354 359] ) } ) (C {(sed)} {(SQ <'s/\\/var\\/log\\///g'>)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [349 368] ) } spids: [348] ) ] spids: [348] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILESIZE_BYTES) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(stat)} {(-c) (Lit_Other '%') (s)} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [380 385] ) ) } ) ] ) left_token: <Left_CommandSub '$('> spids: [372 387] ) } spids: [371] ) ] spids: [371] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PROCESS_FILE) op: Equal rhs: {(1)} spids: [390] ) ] spids: [390] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE_TYPE) op: Equal rhs: {(0)} spids: [394] ) ] spids: [394] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name '$i')})) spids: [412 417] ) ) } {(Lit_Other '=')} {(DQ (/var/log/pihole.log))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE_TYPE) op: Equal rhs: {(2)} spids: [433] ) ] spids: [433] ) ] spids: [16777215 429] ) (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DPipe] children: [ (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: { (BracedVarSub token: <VSub_Name FILE_NAME> suffix_op: (Slice begin: (ArithUnary op_id: Node_UnaryMinus child: (ArithWord w:{(Lit_Digits 4)}) ) ) spids: [446 452] ) } right: {(DQ (.zip))} ) ) (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: { (BracedVarSub token: <VSub_Name FILE_NAME> suffix_op: (Slice begin: (ArithUnary op_id: Node_UnaryMinus child: (ArithWord w:{(Lit_Digits 3)}) ) ) spids: [467 473] ) } right: {(DQ (.gz))} ) ) ] ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILE_TYPE) op: Equal rhs: {(1)} spids: [488] ) ] spids: [488] ) ] spids: [442 484] ) (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_LessEqual left: (ArithWord w:{($ VSub_Name '$FILESIZE_BYTES')}) right: (ArithWord w:{(Lit_Digits 10)}) ) spids: [499 508] ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PROCESS_FILE) op: Equal rhs: {(0)} spids: [515] ) ] spids: [515] ) ] spids: [497 511] ) ] spids: [16777215 520] ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$PROCESS_FILE')}) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [530 539] ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$FILE_TYPE')}) right: (ArithWord w:{(Lit_Digits 2)}) ) spids: [552 561] ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:pihole_restart_required) op: Equal rhs: {(0)} spids: [570] ) ] spids: [568] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:month_day_today) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [ {(date)} {(Lit_Other '+') (SQ <'%b %e'>)} ] more_env: [ (env_pair name: LC_ALL val: {(en_GB.UTF-8)} spids: [591] ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [590 600] ) } spids: [589] ) ] spids: [587] ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w: { (CommandSubPart command_list: (CommandList children: [ (C {(grep)} {(-v)} {(-ci)} {(-m1)} { (DQ ($ VSub_Name '$month_day_today' ) ) } {(/var/log/pihole.log)} ) ] ) left_token: <Left_CommandSub '$('> spids: [612 626] ) } ) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [610 633] ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w: {($ VSub_Name '$INPUT')} ) right: (ArithWord w:{(Lit_Digits 0)}) ) spids: [646 655] ) terminator: <Op_Semi ';'> ) ] action: [ (Pipeline children: [ (C {(cat)} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w: {($ VSub_Name '$i')} ) ) spids: [665 670] ) ) } ) (SimpleCommand words: [ {(sed)} {(SQ </>) (DQ ($ VSub_Name '$month_day_today')) (SQ </d>) } ] redirects: [ (Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: { (DQ ($ VSub_Name '$FILEPATH_BACKUPFOLDER' ) ) (/) (DQ ($ VSub_Name '$FILE_NAME')) } ) ] ) ] negated: F ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_BACKUPS_MADE) ) spids: [698 702] ) ] spids: [16777215 658] ) ] spids: [16777215 706] ) (C {(G_DIETPI-NOTIFY)} {(2)} { (SQ < 'Clearing log entries for PiHole, that are not from today, please wait...' > ) } ) (C {(sed)} {(-i)} {(SQ </>) (DQ ($ VSub_Name '$month_day_today')) (SQ <'/!d'>) } {(/var/log/pihole.log)} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pihole_restart_required) op: Equal rhs: {(1)} spids: [736] ) ] spids: [736] ) ] spids: [16777215 636] ) ] spids: [16777215 741] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILESIZE_BYTES) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(stat)} {(-c) (Lit_Other '%') (s)} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w: {($ VSub_Name '$i')} ) ) spids: [758 763] ) ) } ) ] ) left_token: <Left_CommandSub '$('> spids: [750 765] ) } spids: [749] ) ] spids: [749] ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_GreatEqual left: (ArithWord w: {($ VSub_Name '$FILESIZE_BYTES')} ) right: (ArithWord w:{(Lit_Digits 5242880)}) ) spids: [779 788] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(G_DIETPI-NOTIFY)} {(2)} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [800 805] ) (' has exceeded 5MB, clearing, please wait...') ) } ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w: {($ VSub_Name '$INPUT')} ) right: (ArithWord w:{(Lit_Digits 0)}) ) spids: [817 826] ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [ {(cat)} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w: {($ VSub_Name '$i')} ) ) spids: [836 841] ) ) } ] redirects: [ (Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: { (DQ ($ VSub_Name '$FILEPATH_BACKUPFOLDER') ) (/) (DQ ($ VSub_Name '$FILE_NAME')) } ) ] ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_BACKUPS_MADE) ) spids: [855 859] ) ] spids: [16777215 829] ) ] spids: [16777215 863] ) (SimpleCommand words: [{(echo)} {(-e)} {(DQ )}] redirects: [ (Redir op: <Redir_Great '>'> fd: 16777215 arg_word: { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [877 882] ) ) } ) ] ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_LOGS_CLEARED) ) spids: [886 890] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pihole_restart_required) op: Equal rhs: {(1)} spids: [894] ) ] spids: [894] ) ] spids: [16777215 791] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FILESIZE_BYTES) op: Equal rhs: {(0)} spids: [907] ) ] spids: [907] ) ] spids: [903 912] ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithWord w: {($ VSub_Name '$pihole_restart_required')} ) spids: [922 927] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(G_DIETPI-NOTIFY)} {(2)} { (SQ < 'PiHole logs have been changed, restarting, please wait...' > ) } ) (C {(systemctl)} {(stop)} {(pihole-FTL)}) (C {(systemctl)} {(stop)} {(dnsmasq)}) (C {(sleep)} {(1)}) (C {(systemctl)} {(start)} {(dnsmasq)}) (C {(systemctl)} {(start)} {(pihole-FTL)}) (C {(/DietPi/dietpi/dietpi-process_tool)} {(1)}) ] spids: [16777215 930] ) ] spids: [16777215 987] ) ] spids: [16777215 564] ) (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$FILE_TYPE')}) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [997 1006] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(rm)} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [1016 1021] ) ) } ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_LOGS_DELETED) ) spids: [1025 1029] ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_LOGS_NOTSUPPORTED) ) spids: [1032 1036] ) ] spids: [995 1009] ) (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$INPUT')}) right: (ArithWord w:{(Lit_Digits 0)}) ) spids: [1046 1055] ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} { (DQ ($ VSub_Name '$FILEPATH_BACKUPFOLDER') (/) ($ VSub_Name '$FILE_NAME') ) } {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(mkdir)} {(-p)} { (DQ ($ VSub_Name '$FILEPATH_BACKUPFOLDER') (/) ($ VSub_Name '$FILE_NAME') ) } ) (C {(rm)} {(-R)} { (DQ ($ VSub_Name '$FILEPATH_BACKUPFOLDER') (/) ($ VSub_Name '$FILE_NAME') ) } ) ] spids: [16777215 1083] ) ] spids: [16777215 1118] ) (SimpleCommand words: [ {(cat)} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [1129 1134] ) ) } ] redirects: [ (Redir op: <Redir_DGreat '>>'> fd: 16777215 arg_word: {(DQ ($ VSub_Name '$FILEPATH_BACKUPFOLDER')) (/) (DQ ($ VSub_Name '$FILE_NAME')) } ) ] ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_BACKUPS_MADE) ) spids: [1148 1152] ) (SimpleCommand words: [{(echo)} {(-e)} {(DQ )}] redirects: [ (Redir op: <Redir_Great '>'> fd: 16777215 arg_word: { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [1170 1175] ) ) } ) ] ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_LOGS_CLEARED) ) spids: [1179 1183] ) ] spids: [1044 1058] ) (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$INPUT')}) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [1193 1202] ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(echo)} {(-e)} {(DQ )}] redirects: [ (Redir op: <Redir_Great '>'> fd: 16777215 arg_word: { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [1219 1224] ) ) } ) ] ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_LOGS_CLEARED) ) spids: [1228 1232] ) ] spids: [1191 1205] ) (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$INPUT')}) right: (ArithWord w:{(Lit_Digits 2)}) ) spids: [1242 1251] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(rm)} { (DQ (BracedVarSub token: <VSub_Name ARRAY_LOG_FILEPATH> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$i')}) ) spids: [1261 1266] ) ) } ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_LOGS_DELETED) ) spids: [1270 1274] ) ] spids: [1240 1254] ) ] spids: [16777215 1278] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:INFO_SIZE_CLEARED) op: Equal rhs: { (ArithSubPart anode: (ArithBinary op_id: Arith_Plus left: (ArithWord w:{($ VSub_Name '$INFO_SIZE_CLEARED')}) right: (ArithWord w:{($ VSub_Name '$FILESIZE_BYTES')}) ) spids: [1287 1294] ) } spids: [1286] ) ] spids: [1286] ) ] spids: [16777215 542] ) ] spids: [16777215 1298] ) (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:INFO_FILES_PROCESSED) ) spids: [1302 1306] ) ] spids: [340 1310] ) ) (SimpleCommand words: [{(rm)} {(DQ ($ VSub_Name '$TEMP_FILE'))}] redirects: [(Redir op:<Redir_AndGreat '&>'> fd:16777215 arg_word:{(/dev/null)})] ) (C {(unset)} {(ARRAY_LOG_FILEPATH)}) ] spids: [259] ) spids: [256 259] ) (C {(G_DIETPI-NOTIFY)} {(3)} {(DietPi-Logclear)} {(DQ (Welcome))}) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$INPUT')}) right: (ArithUnary op_id:Node_UnaryMinus child:(ArithWord w:{(Lit_Digits 1)})) ) spids: [1382 1392] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(G_DIETPI-NOTIFY)} {(2)} {(SQ <'Available commands:'>)}) (C {(echo)} {(-e)} {(DQ )}) (C {(echo)} {(-e)} {(DQ (Lit_Other '\\') ('e[1m dietpi-logclear 0') (Lit_Other '\\') ('e[0m'))} ) (C {(echo)} {(-e)} { (DQ (Lit_Other '\\') ('e[38;5;244m Backup contents of all log files from ') ($ VSub_Name '$FILEPATH_LOGFOLDER') (' to ') ($ VSub_Name '$FILEPATH_BACKUPFOLDER') ('/*.') (Lit_Other '\\') ('n Also clears the contents of all logs files in ') ($ VSub_Name '$FILEPATH_LOGFOLDER') (.) (Lit_Other '\\') ('e[0m') ) } ) (C {(echo)} {(-e)} {(DQ )}) (C {(echo)} {(-e)} {(DQ (Lit_Other '\\') ('e[1m dietpi-logclear 1') (Lit_Other '\\') ('e[0m'))} ) (C {(echo)} {(-e)} { (DQ (Lit_Other '\\') ('e[38;5;244m Clear contents of all logs files in ') ($ VSub_Name '$FILEPATH_LOGFOLDER') (.) (Lit_Other '\\') ('e[0m') ) } ) (C {(echo)} {(-e)} {(DQ )}) (C {(echo)} {(-e)} {(DQ (Lit_Other '\\') ('e[1m dietpi-logclear 2') (Lit_Other '\\') ('e[0m'))} ) (C {(echo)} {(-e)} { (DQ (Lit_Other '\\') ('e[38;5;244m Physically delete all files in ') ($ VSub_Name '$FILEPATH_LOGFOLDER') (' and backups in ') ($ VSub_Name '$FILEPATH_BACKUPFOLDER') ('/*.') (Lit_Other '\\') ('n May prevent log files from being updated, restart services or reboot. ') (Lit_Other '\\') ('e[0m') ) } ) (C {(echo)} {(-e)} {(DQ )}) ] spids: [16777215 1395] ) (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_GreatEqual left: (ArithWord w:{($ VSub_Name '$INPUT')}) right: (ArithWord w:{(Lit_Digits 0)}) ) spids: [1539 1548] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(Process_Logfiles)}) (C {(chmod)} {(-R)} {(775)} {(/var/log)}) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$INPUT')}) right: (ArithWord w:{(Lit_Digits 2)}) ) spids: [1579 1588] ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(rm)} {(-R)} {(DQ ($ VSub_Name '$FILEPATH_BACKUPFOLDER'))}] redirects: [(Redir op:<Redir_AndGreat '&>'> fd:16777215 arg_word:{(/dev/null)})] ) ] spids: [16777215 1591] ) ] spids: [16777215 1609] ) (C {(G_DIETPI-NOTIFY)} {(2)}) (C {(echo)} {(-e)} { (DQ (' - Log file directory ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$FILEPATH_LOGFOLDER') ) } ) (C {(echo)} {(-e)} { (DQ (' - Processed files ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$INFO_FILES_PROCESSED') ) } ) (C {(echo)} {(-e)} { (DQ (' - Excluded files ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$INFO_EXCLUDED_LOGFILES') ) } ) (C {(echo)} {(-e)} { (DQ (' - Cleared log files ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$INFO_LOGS_CLEARED') ) } ) (C {(echo)} {(-e)} { (DQ (' - Unsupported files ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$INFO_LOGS_NOTSUPPORTED') ) } ) (C {(echo)} {(-e)} { (DQ (' - Deleted files ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$INFO_LOGS_DELETED') ) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:INFO_SIZE_CLEARED) op: Equal rhs: { (ArithSubPart anode: (ArithBinary op_id: Arith_Slash left: (ArithWord w:{($ VSub_Name '$INFO_SIZE_CLEARED')}) right: (ArithWord w:{(Lit_Digits 1024)}) ) spids: [1731 1738] ) } spids: [1730] ) ] spids: [1730] ) (C {(echo)} {(-e)} { (DQ (' - Space cleared ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$INFO_SIZE_CLEARED') (' KB') ) } ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Name '$INPUT')}) right: (ArithWord w:{(Lit_Digits 0)}) ) spids: [1763 1772] ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(-e)} {(DQ )}) (C {(echo)} {(-e)} { (DQ (' ') (Lit_Other '\\') ('e[38;5;244mBackup Info:') (Lit_Other '\\') ('e[0m')) } ) (C {(echo)} {(-e)} { (DQ (' - Backup directory ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$FILEPATH_BACKUPFOLDER') ) } ) (C {(echo)} {(-e)} { (DQ (' - Updated log files ') (Lit_Other '\\') ('e[90m|') (Lit_Other '\\') ('e[0m ') ($ VSub_Name '$INFO_BACKUPS_MADE') ) } ) ] spids: [16777215 1775] ) ] spids: [16777215 1829] ) (C {(echo)} {(-e)} {(DQ )}) ] spids: [1537 1551] ) ] spids: [16777215 1842] ) (ControlFlow token:<ControlFlow_Exit exit>) ] spids: [3] )