Используя GNU awk:
gawk '
BEGIN { RS="\nEND\n"; ORS = RS; FS = "\n" }
{ record[$3] = $0 }
END {
PROCINFO["sorted_in"] = "@ind_num_asc"
for (val in record) print record[val]
}
' file
Основываясь на ваших данных, я предполагаю, что всегда есть одна строка между BEGIN и номер.
Строка PROCINFO
определяет способ обхода массива «записи». См. https://www.gnu.org/software/gawk/manual/html_node/Controlling-Scanning.html
Jobs печатает рабочий каталог, который был в оболочке при запуске связанного задания.
То, что происходит позже, не входит в область действия оболочки.