Features

Here is a list of DjeShellSteps main features

  • Allow to execute a shell script step by step. In case of problem, the script can be restarted after last successfull step
  • All informations written to stdout are displayed to a log file
  • Only a short summary of script execution can be shown on stdout (or nothing)
  • Script can be restarted from beginning or a specific step
  • Last execution log can be displayed from sample command
  • When a script is launched a PID file is created, and removed at the end of the execution
  • Script can be killed by a simple command
  • You can manage configuration files for your Shell scripts without any effort
  • Display the last execution log file from your Shell script command line
  • ...


Preview


Some shell "Screenshots" ;)

Command line help


Code :
 ~/dss/bin> ./example2.sh --help 
./example2.sh                                 (powered by DjeShellSteps v1.00) 
                                              (c) Jerome DESMOULINS 
Usage: 
  ./example2.sh 
 
Common parameters: 
  --fromstep X     to restart from step X 
  --fromscratch    to restart from begining (ignore previous error) 
  --help           to display this help message 
  --debug          to enable debug mode 
  --stdout         to force output to stdout (logfile still exist) 
  --stdoutsummary  to write summary informations to stdout 
  --status         to display your script status (running or not) 
  --kill           to kill running script 
  --lastlog        to display last log file


DjeShellSteps gives to your Shell scripts many native options, from command line.

Get your script status


Code :
 ~/dss/bin> ./example2.sh --status 
example2 status   [STOPPED] 


Without any effort, you can check if your script is working or not.

Restarting from a particular step


Code :
$./example2.sh --fromstep 20 
Restarting from Step 20 
############################################################################## 
# DjeShellSteps v1.01                                                        # 
# Begin of example2                                    [2016/06/22 21:24:26] # 
# Script launched by jdesmoul@LFR010756                      (PID: 12112   ) # 
# Parameters: --fromstep                                                     # 
# Parameters: 20                                                             # 
############################################################################## 
 
  ____          _             _ 
 |  _  ___ ___| |_ __ _ _ __| |_ 
 | |_) / _  __| __/ _` | '__| __| 
 |  _ <  ____  |_ (_| | |  | |_ 
 |_| ____|___/____,_|_|   __| 
 
 
Info: Restart file was found. Restarting shell from step 20 
 
 
############################################################################## 
# Step 10                                              [2016/06/22 21:24:27] # 
# List all files on current directory                                        # 
############################################################################## 
Info: RESTART MODE - This step will be ignored 
 
 
############################################################################## 
# Step 20                                              [2016/06/22 21:24:27] # 
# Sleep for two seconds                                                      # 
############################################################################## 
Info: RESTART MODE - This step will be ReRun 
 
 
############################################################################## 
# Step 30                                              [2016/06/22 21:24:29] # 
# Display kernel version                                                     # 
############################################################################## 
Info: RESTART MODE - This step will be ReRun 
CYGWIN_NT-6.1-WOW LFR010756 1.7.35(0.287/5/3) 2015-03-04 12:07 i686 Cygwin 
 
 
############################################################################## 
# End of example2                                      [2016/06/22 21:24:30] # 
# Execution time: 5 second(s)                                                # 
############################################################################## 
 


A problem occurs during last shell script execution? Next launch will restart from the failed step.

Display last execution logfile


Code :
 ~/dss/bin> ./example2.sh --lastlog 
./example2.sh --lastlog
##############################################################################
# DjeShellSteps v1.00                                                        #
# Begin of example2                                    [2017/12/18 21:51:19] #
# Script launched by jdesmoulins@www                         (PID: 21440   ) #
# Parameters: --latlog                                                       #
##############################################################################
##############################################################################
# Step 10                                              [2017/12/18 21:51:19] #
# List all files on current directory                                        #
##############################################################################
backup_manager_restore.sh
backup_manager.sh
example1.sh
example2.sh
mysql_backup.sh
mysql_optimize.sh
nagios_check_apache_certificate.sh
nagios_check_last_backup.sh
ntp_update.sh
##############################################################################
# End of example2                                      [2017/12/18 21:51:19] #
# Execution time: 1 second(s)                                                #
##############################################################################


DjeShellSteps returns the last execution logfile of the script into stdout.