Hirdetés
- Szívós, szép és kitartó az új OnePlus óra
- Honor Magic6 Pro - kör közepén számok
- Samsung Gear S3 - második kör
- A Redmi Turbo 5-ben debütált a Dimensity 8500
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- OnePlus 15 - van plusz energia
- Redmi Note 15 Pro 5G – a szokásosat?
- Nem lesz új Nothing zászlóshajó
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Vivo X200 Pro - a kétszázát!
- Candy: Kossuth Lajos azt üzente, elfogyott a gémergépe
- Meggyi001: Hasznos helyek és tippek Párizsban, amiket jó eséllyel keresni is fogsz...
- Luck Dragon: Asszociációs játék. :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Magga: PLEX: multimédia az egész lakásban
Új hozzászólás Aktív témák
-
Penty
aktív tag
Sziasztok!
A vágólapok tartalmát szeretném X mp-enként kitakarítani, szóval egy egyszerű kis vágólapot törlő scriptre lenne szükségem. Eddig ezt sikerült összehoznom. Az i3wm config indítja a gép indításánál.
Jelenleg ugye úgy működik, hogy ha valami bekerül a vágólap(ok)ra, akkor megszakad a while loop, vár 10 mp-et, majd törli a vágólapok tartalmát.
Az vele a baj, hogy ha pl. 7 mp-nél ismét bekerül valami a vágólapra, akkor nem kezdi újra a számlálást, hanem 3 mp-cel később törli a másodjára bekerült dolgot.
Hogyan lehetne megoldani, hogy ilyenkor újra kezdődjön a visszaszámlálás a törlésekig?
Esetleg valami más egyéb javítani való? Nem vagyok egy nagy bash mágus...#!/bin/bashwhile [ -z "$(xsel -ob)" ] && [ -z "$(xsel -op)" ] && [ -z "$(xsel -os)" ]; dosleep 1donesleep 10xsel -cbxsel -cpxsel -csnotify-send "A vágólap(ok) törölve."$0 & -
Penty
aktív tag
válasz
bambano
#2898
üzenetére
...a tartalmát minden nap áthelyezem egy "archiv" mappába. A mappa neve, amibe áthelyezem az aktuális dátum.
PL:
/media/backup/winscp/trash
/media/backup/winscp/trash_archive/20240628Nekem ebből az jön le, hogy ez nem archívum, hanem egy sima mappa, aminek a trash_archive nevet adta és ezen belül vannak a 20240628, 20240629 stb. nevű almappák és aztán azon belül az aktuális nap trash mentései, akár valami tar.xz, akár csak simán átmásolva, akár más egyéb formában. Így működik az általam vázolt script, mivel törli a legkisebb nevű, vagyis a legrégebbi mappát, benne a cuccokkal.
De lehet, hogy én értelmeztem félre a dolgot, ez esetben elnézést.
-
Penty
aktív tag
válasz
kovbandi82
#2887
üzenetére
Ha jól látom, a trash_archive/ mappában lévő dátum nevű mappanevek lényegében emelkedő számok (és feltételezem, hogy csak ezek vannak benne):
20240625
20240626
20240627
stb.
Megpróbálhatod egyszerűen csak megszámoltatni és az első 14 legnagyobb nevűt megtartani, majd a legkisebb számút (a legrégebbit) mindig töröltetni egy scripttel.COUNT=$(find /media/backup/winscp/trash_archive/* -type d | wc -l)
OLDEST=$(find /media/backup/winscp/trash_archive/* -type d | head -1)
if [ $COUNT -gt 14 ]
then
rm -rf $OLDEST
else
:
fiIntegráld bele a mentés scripted elejére a fentit. Ha jelenleg kevesebb mint 14 mentésed van, akkor nem fogja 14 (két két) fölé engedi a mentések számát. Ha több, akkor a script csak egyet fog törölni a pl. 35-ből, így elsőnek törölnöd kell kézileg pár mentés mappát, hogy 14 alá csökkenjen a számuk.
-
Penty
aktív tag
Sziasztok!
Van egy szöveges fájl, benne dátumok, mögöttük feljegyzések, kb. így:2023-02-23 Valami szöveg a múltból
2023-02-28 Valami szöveg a múltból
2023-03-02 Valami szöveg a múltból
2023-03-15 Valami szöveg a múltból
2023-04-28 Valami szöveg a múltból
2023-05-20 Valami szöveg a múltból
2023-05-28 Mai napi szöveg
2023-06-01 Jövőbeni szöveg
2023-06-03 Jövőbeni szövegCsinálnék egy scriptet, ami a múltbéli sorokat törli a fenti fájlból. Eddig jutottam:
#!/bin/sh
NOTES=~/teszt
A=$(date --date="$(awk 'NR==1{print $1}' $teszt)" +%Y%m%d)
B=$(date +%Y%m%d)
if [ "$A" -lt "$B" ]; then
sed -i '1d' $teszt
elif [ "$A" -eq "$B" ]; then
notify-send "$(awk 'NR==1{print}' $teszt)"
else
notify-send "Üresjárati nap"
fiHa lefuttatom a scriptet, szépen kitöröl egyet a régmúlt dátumú sorok közül, ha sokszor futtatom, akkor előbb-utóbb elfogynak a régi bejegyzések, és a két notify-send sor valamelyikét fogja lefuttatni attól függően, hogy van-e mára valami feljegyzés, vagy nincs.
Hogyan lehetne megoldani azt, hogy csak egyszer kelljen a scriptet futtatni, de akkor az összes régi dátumot kitörölje? Gondolom valami while read line; do bla-bla; done kellene, de kicsit belebonyolódtam.
Új hozzászólás Aktív témák
Hirdetés
- Xbox Series X|S
- Duplázik a NAND is: a Samsung 100%-os áremelésben gondolkodik
- Milyen billentyűzetet vegyek?
- Candy: Kossuth Lajos azt üzente, elfogyott a gémergépe
- A fociról könnyedén, egy baráti társaságban
- OLED TV topic
- Ősszel érkezik a Fable PC-re és konzolokra
- Szívós, szép és kitartó az új OnePlus óra
- Okos Otthon / Smart Home
- A kezdet vége: viszlát, Model S!
- További aktív témák...
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - 15% AKCIÓ
- PC Game Pass előfizetés
- 3,5" Asztali HDD 1TB Seagate
- Lenovo ThinkPad dokkolók: USB-C 40A9/ 40AY/ 40AS/ Thunderbolt 3 40AC/ Hybrid USB-C DisplayLink 40AF
- HIBÁTLAN iPhone 13 Pro Max 128GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS4379, 100% Akkumulá
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RX 9060 XT 16GB GAMER PC termékbeszámítással
- Eladó Apple iPhone 15 Pro Max 256GB / Akku 90% / 12 hó jótállás
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


