Upload files to "debugging"
This commit is contained in:
131
debugging/step.sh
Normal file
131
debugging/step.sh
Normal file
@@ -0,0 +1,131 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [[ ${1} == "debug" ]]; then
|
||||||
|
debugmode=true
|
||||||
|
elif [[ ${1} == "run" ]]; then
|
||||||
|
debugmode=false
|
||||||
|
else
|
||||||
|
echo "Must be executed in run mode or debug mode!" >&2
|
||||||
|
echo "Example:" >&2
|
||||||
|
echo " $0 run" >&2
|
||||||
|
echo "or:" >&2
|
||||||
|
echo " $0 debug" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
totalsteps=$(wc -l < own.sh)
|
||||||
|
newhash="$(md5sum own.sh)"
|
||||||
|
|
||||||
|
if [[ $? != 0 ]]; then
|
||||||
|
echo "Install dependancy md5sum..." >&2
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
|
||||||
|
newhash="${newhash:0:32}"
|
||||||
|
aptcount=0
|
||||||
|
maxaptcount=1
|
||||||
|
rm -f own.temp
|
||||||
|
|
||||||
|
if [[ -f step.step ]]; then
|
||||||
|
source step.step
|
||||||
|
else
|
||||||
|
currentstep=1
|
||||||
|
hash="${newhash}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${hash}" != "${newhash}" ]]; then
|
||||||
|
echo "own.sh has been changed! Restarting from step 1..."
|
||||||
|
currentstep=1
|
||||||
|
hash="${newhash}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
for ((step=${currentstep}; step<=${totalsteps}; step++)); do
|
||||||
|
line="$(head -n ${step} own.sh | tail -1)"
|
||||||
|
|
||||||
|
if [[ ${step} == ${currentstep} ]]; then
|
||||||
|
echo -n "Line ${step}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n ${line} ]]; then
|
||||||
|
while [[ ${line:0:1} == " " ]]; do
|
||||||
|
line="${line:1}"
|
||||||
|
done
|
||||||
|
|
||||||
|
if [[ ${line:0:6} == "apt -y" ]]; then
|
||||||
|
((aptcount++))
|
||||||
|
elif [[ ${line:0:6} == "reboot" ]]; then
|
||||||
|
line="#${line}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ${aptcount} -lt ${maxaptcount} ]]; then
|
||||||
|
echo "${line}" >> own.temp
|
||||||
|
else
|
||||||
|
if [[ ${step} -gt ${currentstep} ]]; then
|
||||||
|
echo -n " to ${step}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo " of ${totalsteps}"
|
||||||
|
echo "${line}" >> own.temp
|
||||||
|
|
||||||
|
if [[ ${debugmode} == true ]]; then
|
||||||
|
echo "The following code from own.sh would have been executed..."
|
||||||
|
cat own.temp
|
||||||
|
else
|
||||||
|
echo "The following code from own.sh will be executed..."
|
||||||
|
cat own.temp
|
||||||
|
delay=$(($(wc -l < own.temp)/4+3))
|
||||||
|
echo -n "Executing in ${delay} seconds"
|
||||||
|
|
||||||
|
for ((d=0; d<${delay}; d++)); do
|
||||||
|
sleep 1
|
||||||
|
echo -n "."
|
||||||
|
done
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
source own.temp
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f own.temp
|
||||||
|
echo "currentstep=$((step+1))" > step.step
|
||||||
|
echo "hash=\"${hash}\"" >> step.step
|
||||||
|
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [[ ${step} -gt ${currentstep} ]]; then
|
||||||
|
echo -n " to ${step}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo " of ${totalsteps}"
|
||||||
|
|
||||||
|
if [[ ${debugmode} == true ]]; then
|
||||||
|
echo "The following code from own.sh would have been executed..."
|
||||||
|
cat own.temp
|
||||||
|
else
|
||||||
|
echo "The following code from own.sh will be executed..."
|
||||||
|
cat own.temp
|
||||||
|
delay=$(($(wc -l < own.temp)/4+3))
|
||||||
|
echo -n "Executing in ${delay} seconds"
|
||||||
|
|
||||||
|
for ((d=0; d<${delay}; d++)); do
|
||||||
|
sleep 1
|
||||||
|
echo -n "."
|
||||||
|
done
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
source own.temp
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f own.temp
|
||||||
|
echo "End of own.sh has been reached..."
|
||||||
|
rm -f step.step
|
||||||
|
|
||||||
|
exit
|
||||||
Reference in New Issue
Block a user