Add watch.sh and update utils.sh

Signed-off-by: Severin Kaderli <severin.kaderli@gmail.com>
This commit is contained in:
Severin Kaderli 2018-12-19 22:54:34 +01:00
parent 9e9ec809fc
commit 5c893b60aa
2 changed files with 37 additions and 0 deletions

View file

@ -35,10 +35,18 @@ YELLOW='\033[33m'
# USAGE: print_header TITLE
function print_header() {
echo -e "\n${GREEN}########################################"
echo -e "#"
echo -e "# ${1}"
echo -e "#"
echo -e "########################################${RESET}"
}
# Function to print a info message with the current time
# USAGE: print_info MESSAGE
function print_log() {
echo -e "${YELLOW}[$(date "+%H:%M:%S")] ${1}${RESET}"
}
# Creates the given directory in the home directory
# USAGE: create_directory DIRECTORY
function create_directory() {

29
system/bin/watch.sh Executable file
View file

@ -0,0 +1,29 @@
#!/bin/bash
#
# SCRIPT NAME:
# watch.sh
#
# AUTHOR:
# Severin Kaderli <severin.kaderli@gmail.com>
#
# DESCRIPTION:
# This script watches a file for changes and if it changes it
# executes the given command.
#
# USAGE:
# ./watch.sh FILE COMMAND...
. utils.sh
# The file to watch
FILE="${1}"
# The rest of the arguments is the command
shift
COMMAND="${@}"
print_header "Watching ${FILE}"
while inotifywait -qq -e close_write "${FILE}";
do
print_log "File has changed, executing command"
$($COMMAND)
done