Igen. Köszi. De az csak ott lehet?
Lássuk egészben. Ahogy a bevezetőben írtam, van egy fájl időpontokkal teli. A szkript amit szándékozok lefuttatni, az a következőket teszi.
Először is megkeresi a fájlt.
wake_path=$(/usr/bin/find $HOME/ -maxdepth 3 -name "rectime.txt" -exec dirname {} \; 2>/dev/null)
wake_file="rectime.txt"
Az aktuális dátumhoz képest letörli a régieket.
awk -v _now="${actualtime}" '$1 > _now {print $1}' < "${wake_path}/${wake_file}" > /tmp/"${wake_file}"
Majd ezt a tisztított fájlt mv-vel visszateszem a helyére. Utána kiveszem az aktuális időhöz legközelebb eső időpontot amikor be kell kapcsolnia a gépnek.
nextTime=$(head -n1 < "${wake_path}/${wake_file}" | sort)
Majd az így kapott időt átadom az rtcwake-nak. Nos itt gyenge pont az az, hogy a wake_path és a wake_file a felhasználó valamelyik mappájában van. S emiatt, mivel a felhasználó bárki lehet, muszáj változóba tenni az útvonalat. Esetleg milyen más alternatívák lehetnek? /usr/local/etc/ s ide tenni a wake_filet-? Akkor lehetne abszolút útvonalat használni. S nem kell törődni a felhasználókkal, ellenben hozzáférést kell biztosítani a felhasználó részére az /usr/share/etc fájlhoz. Ha itt harapom meg itt fáj, ha ott akkor ott. Ötletek? Esetleg más megközelítés?