Egy txt fájlban csak epoch idők vannak egymás alatt. Fel tudom dolgozni őket. De én színesben szeretném, és akkor már lassú, mert így már 4-szer kell konvertálnia a date parancsnak. Mivel mind az 5 oszlop más színű.
Azon is agyalok, hogy miként lehetne áttekinthetőbbé tenni. Ezt:
4 - 1642687800 - 2022-01-20 - 15:10:00 - csütörtök
4 - 1642711200 - 2022-01-20 - 21:40:00 - csütörtök
4 - 1642719000 - 2022-01-20 - 23:50:00 - csütörtök
5 - 1642774200 - 2022-01-21 - 15:10:00 - péntek
5 - 1642797600 - 2022-01-21 - 21:40:00 - péntek
5 - 1642805400 - 2022-01-21 - 23:50:00 - péntek
Valami ilyesmire:
4 - 1642687800 - 2022-01-20 - csütörtök 15:10:00
4 - 1642711200 21:40:00
4 - 1642719000 23:50:00
5 - 1642774200 - 2022-01-21 - péntek 15:10:00
5 - 1642797600 21:40:00
5 - 1642805400 23:50:00
Esetleg...
2022-01-20 - csütörtök
4 - 1642687800 - 15:10:00
4 - 1642711200 - 21:40:00
4 - 1642719000 - 23:50:00
2022-01-21 - péntek
5 - 1642774200 - 15:10:00
5 - 1642797600 - 21:40:00
5 - 1642805400 - 23:50:00
Jelenleg ez működik.
while read -r Epoch; do
HN="$(date --date @"${Epoch}" +'%u')"
yhn="$(date --date @"${Epoch}" +'%F')"
op="$(date --date @"${Epoch}" +'%T')"
nap="$(date --date @"${Epoch}" +'%A')"
echo "${NC}${HN} - ${Yellow}${Epoch} - ${Green}${yhn} - ${Cyan}${op} - ${White}${nap}"
done <<< "epoch.txt
A date parancsba nem tudom beilleszteni a színeket. Persze gyorsabb színek nélkül, de így is összefolyik. Létezik valami megoldás?
Hozzászólások
splitDate() {
if [ $# -eq 1 ]; then
IFS=" " read HN yhn op nap <<< $1
fi
}
splitDate "$(date +"%u %F %T %A" --date @$Epoch)"
echo "${NC}${HN} - ${Yellow}${Epoch} - ${Green}${yhn} - ${Cyan}${op} - ${White}${nap}"
Vááó. Köszi. Azért érnek még meglepetések. Csak most próbálom meg is érteni. Tehát egy while cikluson belüli szubrutin. (Nem is tudtam hogy lehet.) Amely egy adatbázisba gyűjti az adatokat az IFS mezőhatárolóval beállított szóközzel elválasztva. Eddig jutottam. A többihez kis segítség még nem ártana. Lecserélhető-e az a $1?
Ugyanis a nehézséget majd az okozza, hogy a szkript amibe bele szeretném rakni, az már lefoglalta a $1 -et, mivel az csak "paraméterrel, (argumentummal, kapcsolóval)" indul . S ez alapból ugye a $1. Futtatása program -a, program -d, program -s, program-h. Paraméter nélkül súgó jön be.
a $1 a functionon belül, az a function argumentje, de lényeg hogy ennek az értéke legyen ott: "$(date +"%u %F %T %A" --date @$Epoch)"
sry, dupla
> A date parancsba nem tudom beilleszteni a színeket.
Miért nem?
Ok. Balga fejemmel mindenhová odatettem a + jelet. Ezért nem működött, amikor ezzel kísérleteztem. (Arany igazság: Ha túl sokat foglalkozol egy problémával, akkor összefolynak a dolgok. Ezért kell aludni rá egyet. Vagy megkérdezni mást.)