Creating a self-defining menu
While the previous menu is very useful for defining the most common commands and functions we may use when running the Raspberry Pi, we will often change what we are doing or develop scripts to automate complex tasks.
To avoid the need to continuously update and edit the menu.ini
file, we can create a menu that can list installed scripts and dynamically build a menu from it. Refer to the following screenshot:
How to do it…
Create the menuadv.py
script using the following code:
#!/usr/bin/python3 #menuadv.py import os from subprocess import call SCRIPT_DIR="." #Use current directory SCRIPT_NAME=os.path.basename(__file__) print ("Start Menu:") scripts=[] item_num=1 for files in os.listdir(SCRIPT_DIR): if files.endswith(".py"): if files != SCRIPT_NAME: print ("%s:%s"%(item_num,files)) scripts.append(files) item_num+=1 running = True while (running): print ("Enter script number to run...