Używanie przypadku dla zakresu liczb w Bash
Próbuję wykonać następujące czynności za pomocącase
w Bash (w Linuksie).
Jeśli X wynosi od 460 do 660, wyświetl informacje X.
Jeśli X wynosi od 661 do 800, zrób coś innego.
Itp.
Właśnie teraz mam to:
case $MovieRes in
[461-660]*) echo "$MovieName,480p" >> moviefinal ;;
[661-890]*) echo "$MovieName,720p" >> moviefinal ;;
[891-1200]*) echo "$MovieName,1080p" >> moviefinal ;;
*) echo "$MovieName,DVD" >> moviefinal ;;
esac
Ale jakoś wiele z tych 480p, 720p lub 1080p kończy się na DVD. Zmienna$MovieRes
to prosta lista, która pokazuje dla każdej linii liczbę od 1 do 1200. W zależności od wartości,case
decyduje, który „przypadek” należy zastosować.
Chciałbym wiedzieć, jak właściwie korzystaćcase
aby to osiągnąć, ponieważ jest to nieco mylące, gdy mamy do czynienia z takimi zakresami.