Script Execution

From DD-WRT Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 12:26, 20 January 2008 (edit)
Lodp (Talk | contribs)
(Introduction)
← Previous diff
Revision as of 17:05, 23 March 2008 (edit) (undo)
Oaxley (Talk | contribs)
(Execute scripts with a different extension or in a different folder - an other folder)
Next diff →
Line 37: Line 37:
=Execute scripts with a different extension or in a different folder= =Execute scripts with a different extension or in a different folder=
-If you want to execute scripts with a different extension or those that are located in a other folder you can create this script+If you want to execute scripts with a different extension or those that are located in an other folder you can create this script
for I in `/bin/ls /jffs/etc/config/*.myextension` for I in `/bin/ls /jffs/etc/config/*.myextension`
do do

Revision as of 17:05, 23 March 2008

Contents

Introduction

Sometimes you want script to be executed automatically when something happens, this article explains how to make sure scripts get executed at a certain point.

General information

There are four different directories DD-WRT searches for scripts, these are

/etc/config/
/jffs/etc/config/
/mmc/etc/config/
/tmp/etc/config/

Script types

You need to add an extension to the script if placed in one of the previous folders. Every extension has it's own meaning.


Extension Explanation
.startup will be executed on system startup, normally boot-time and: _before_ the firewall is configured
.wanup will be executed whenever an interface goes up (ex: ppp connection is reestablished after a disconnect, goes up first time) and: _after_ firewall stuff, so good ending for custom QoS and stuf.
.if will be executed whenever an interface goes up (ex: ppp connection is reestablished after a disconnect, goes up first time) and: _after_ firewall stuff, so good ending for custom QoS and stuff - .wanup - should be a better place for disconnect/reconnect events than the ones above
.ipup is run when ppp connection is reestablished after a disconnect, _after_ firewall stuff.
.ipdown is run when a ppp connection has been shut down
.sesbutton is executed when the SES/AOSS/EZ-SETUP button is pressed

Execute scripts with a different extension or in a different folder

If you want to execute scripts with a different extension or those that are located in an other folder you can create this script

for I in `/bin/ls /jffs/etc/config/*.myextension`
do
   sh $I &
done

Ofcourse you need to change the path (/jffs/etc/config) and the extension itself to match your desire.

How it works

The command sh /jffs/etc/config/*.myextension will execute every script ending in .myextension found in the /jffs/etc/config directory. By setting this as the rc_startup value, your *.myextension scripts will load every time the router boots.

Links

Useful Scripts

Startup Scripts