This is a silly program that blinks the green and red LEDs lights on Rasberry Pi 3 models (probably works for RPI 4 too). It is written in perl, but frankly, you don’t need anything more than shell commands.

#!/usr/bin/env perl
use strict;
use warnings;

# https://www.raspberrypi.org/forums/viewtopic.php?p=136266#p136266
main();

sub main {
if ($> != 0) {
die("Must run as root\n");
}

unset_led0_mode();
unset_led1_mode();
for (1..3) {
led0_on(); print STDOUT "on\n";
led1_off();
sleep 1;
led0_off();
led1_on();
print STDOUT "off\n";
sleep 2;
}

reset_default_led0_mode();
reset_default_led1_mode();
}

sub set_led_trigger_mode {
my ($led, $mode) = @;
$led //= ‘led0’;

do {
local $|;
open(my $out, ">", "/sys/class/leds/$led/trigger") || warn($!);
select $out; $|++;
print $out $mode;
close $out;
};
}

sub unset
led0_mode {
set_led_trigger_mode(‘led0’, ‘none’);
}

sub unset_led1_mode {
set_led_trigger_mode(‘led1’, ‘node’);
}

sub reset_default_led0_mode {
set_led_trigger_mode(‘led0’, ‘mmc0’);
}

sub reset_default_led1_mode {
set_led_trigger_mode(‘led1’, ‘default-on’);
}

sub change_led {
my ($led, $state) = @;
$led //= ‘led0’;
$state = $state ? 1 : 0;

do {
local $|;
open(my $out, ">", "/sys/class/leds/$led/brightness") || warn($!);
select $out; $|++;
printf $out "%d\n", $state;
close $out;
};
}

sub led0
on {
change_led(‘led0’, 1);
}

sub led0_off {
change_led(‘led0’, 0);
}

sub led1_on {
change_led(‘led1’, 1);
}

sub led1_off {
change_led(‘led1’, 0);
}