31 lines
		
	
	
	
		
			644 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
	
		
			644 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| set -o nounset
 | |
| set -o pipefail
 | |
| set -o errexit
 | |
| 
 | |
| watch_dir="/home/mod_exchange/"
 | |
| dest_dir="/home/mpluser/l4d2/game/left4dead2/addons/"
 | |
| 
 | |
| function test_command {
 | |
|     "$@"
 | |
|     local status=$?
 | |
|     return $status
 | |
| }
 | |
| 
 | |
| while true
 | |
| do
 | |
|         inotifywait --syslog -e close_write $watch_dir
 | |
|         for item in $watch_dir/*.zip
 | |
|         do
 | |
|                 unzip -o ${item} -d ${watch_dir}
 | |
|         done
 | |
|         rm  $watch_dir/*.zip
 | |
|         rsync $watch_dir/* /home/mpluser/l4d2/game/left4dead2/addons/ --remove-source-files
 | |
| 
 | |
|         if test_command systemctl is-active l4d
 | |
|         then
 | |
|                 sudo systemctl restart l4d
 | |
|         fi
 | |
| 
 | |
| done
 |