Предположим, у нас есть эти обычные отсортированные файлы в папке unix / linux.
A.txt
B.txt
C.txt
D.txt
a.txt
b.txt
c.txt
command D.txt
должно быть отсортировано как:
D.txt -> begin with selected file
a.txt
b.txt
c.txt
A.txt -> append remaining files in order
B.txt
C.txt
command b.txt
должно быть отсортировано as:
b.txt
c.txt
A.txt
B.txt
C.txt
D.txt
a.txt
Я попробовал такие сценарии ниже, но, похоже, awk не переупорядочивает вывод так, как мне хотелось. Команда всегда сортирует обычный порядок.
#!/bin/sh
export fname="$1"
find . -maxdepth 1 -type f | sort | awk -v ref="./$fname" '($0 > ref) {print $0} ($0 < ref) {print $0}'