# Writing shell scripts support topic

**URL:** <https://forum.openwrt.org/t/writing-shell-scripts-support-topic/206144>\
**Category:** For Developers\
**Created:** [August 3, 2024, 12:51pm UTC](https://forum.openwrt.org/t/writing-shell-scripts-support-topic/206144 "2024-08-03T12:51:32Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![stokito](https://forum.openwrt.org/user_avatar/forum.openwrt.org/stokito/32/7357_2.png) [@stokito](https://forum.openwrt.org/u/stokito)\
**Post date:** [August 3, 2024, 12:51pm UTC](https://forum.openwrt.org/t/writing-shell-scripts-support-topic/206144/1 "2024-08-03T12:51:32Z")

</div>

Here in the topic you pay ask questions about how to write shell scripts and use the OpenWrt tools: jshn, ubus, hotplug etc.  
I'll try to help you and you help to others.

Before writing you may check sources of the OpenWrt itself to find many samples.  
I also created a GitHub repository where will try to collect samples:

> **[GitHub - yurt-page/openwrt-script-samples: Examples of shell (Ash) scripts for OpenWrt. Using...](https://github.com/yurt-page/openwrt-script-samples)**
>
> Examples of shell (Ash) scripts for OpenWrt. Using jshn and other tools

Please feel free to add your own scripts there.

Wiki also has many useful articles:

- [Write shell scripts in OpenWrt](https://openwrt.org/docs/guide-developer/write-shell-script)
- [UBUS](https://openwrt.org/docs/techref/ubus) - a message bus to send commands and listen for events.
- [UCI](https://openwrt.org/docs/techref/uci) - a tool to change configuration from a command line
- [JSHN](https://openwrt.org/docs/guide-developer/jshn) a tools to parse JSON in shell scripts
- [Create a sample procd init script](https://openwrt.org/docs/guide-developer/procd-init-script-example)
- [All OpenWrt development articles](https://openwrt.org/docs/guide-developer/start)
