- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Aliexpress tapasztalatok
- Hálózati / IP kamera
- DIGI internet
- Videó stream letöltése
- Álláskeresés, interjú, önéletrajz
- Vodafone otthoni szolgáltatások (TV, internet, telefon)
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- SkyShowtime
- Erőszakos tartalomba fut a gyerek, ha internetezik
Új hozzászólás Aktív témák
-
Jester01
veterán
-
olivera88
veterán
Na most melyik ami a legjobb? Jester első megoldása végül is? Most valamiért nem lett jó, nem írta felül a régi grib fájlt, és megcsinálta tegnapiból. A letöltésbe még nem tettem bele az ellenőrzést.
[ Szerkesztve ]
LG Velvet 5G Android 11 - Windows 10 Pro x64 & Debian 11 Bullseye - WoWS unsinkable_sam_
-
olivera88
veterán
Jester01 írta nekem pár napja ezt a fájl ellenőrzést scriptet.
while true
do
size=$(stat -c39845888 \%s ARPEGE_SP1_72H.grib2)
if [ $size -lt -o $size -gt 45088768 ]
then
# hiba, varj 5 percet
sleep 5m
# probald ujra
continue
fi
#csinald meg amit kell
...
# kész nem kell újra
exit 0
doneNa és az lenne a kérdésem hogy a méret ellenőrzésnél meglehetne e adni több fájl nevet, és ha igen hogyan? Mert többet szeretnék letölteni és több fájlt kellene ellenőrizni.
LG Velvet 5G Android 11 - Windows 10 Pro x64 & Debian 11 Bullseye - WoWS unsinkable_sam_
-
olivera88
veterán
válasz olivera88 #2104 üzenetére
Ez megoldva.
Egymás után beraktam ugyanezt többi fájlok nevével. És jó.
De lenne egy másik dolog.Ezt hogy kellene kijavítani h működjön?
#!/bin/sh
while true
dosize=$(stat -c \%s ARPEGE_SP1_12H.grib2)
size=$(stat -c \%s ARPEGE_SP1_24H.grib2)
if [ $size -lt 38797312 -o $size -gt 45088768 ]
then
# hiba, varj 5 percet
sleep 5m
# probald ujra
continue
fi
python /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_00_12.py
python /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_13_24.pySZERVER='x'
FELHASZNALO='x'
JELSZO='x'ftp -n -v $SZERVER << EOF
ascii
user $FELHASZNALO $JELSZO
prompt
cd ARPEGE
bin
send ARPEGEPCP06.png
send ARPEGEPCP12.png
send ARPEGEPCP18.png
send ARPEGEPCP24.pngEOF
while true
dosize=$(stat -c \%s ARPEGE_SP1_36H.grib2)
size=$(stat -c \%s ARPEGE_SP1_48H.grib2)
if [ $size -lt 38797312 -o $size -gt 45088768 ]
then
# hiba, varj 5 percet
sleep 5m
# probald ujra
continue
fipython /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_25_36.py
python /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_37_48.pySZERVER='x'
FELHASZNALO='x'
JELSZO='x'ftp -n -v $SZERVER << EOF
ascii
user $FELHASZNALO $JELSZO
prompt
cd ARPEGE
bin
send ARPEGEPCP30.png
send ARPEGEPCP36.png
send ARPEGEPCP42.png
send ARPEGEPCP48.pngEOF
while true
dosize=$(stat -c \%s ARPEGE_SP1_60H.grib2)
size=$(stat -c \%s ARPEGE_SP1_72H.grib2)
if [ $size -lt 38797312 -o $size -gt 45088768 ]
then
# hiba, varj 5 percet
sleep 5m
# probald ujra
continue
fipython /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_49_60.py
python /home/oliver/Magics_PCP_T_script/arpegepcpmslvhu_61_72.pySZERVER='x'
FELHASZNALO='x'
JELSZO='x'ftp -n -v $SZERVER << EOF
ascii
user $FELHASZNALO $JELSZO
prompt
cd ARPEGE
bin
send ARPEGEPCP54.png
send ARPEGEPCP60.png
send ARPEGEPCP66.png
send ARPEGEPCP72.png
exitEOF
Ezt a hibaüzenetet kapom így.
/Run_model3.sh: 120: ./Run_model3.sh: Syntax error: end of file unexpected (expecting "done")Ha kiszedem az EOF okat a feltöltés végéről akkor lefut a script de nem jó, mert invalid commandokat ir a többi python script futtatására.
LG Velvet 5G Android 11 - Windows 10 Pro x64 & Debian 11 Bullseye - WoWS unsinkable_sam_
-
dabadab
titán
válasz olivera88 #2105 üzenetére
A while-ok végén kimaradtak a done-ok, azt reklamálja.
A formázási lehetőség között van olyan, hogy "Programkód", kód beírásakor használd azt, mert az megőrzi a formázást meg a speciális karaktereket (szögletes zárójelek, meg zárójel elé tett kettőspontból sem lesz smiley).
[ Szerkesztve ]
DRM is theft
-
olivera88
veterán
válasz dabadab #2106 üzenetére
Közben megoldódott done , + exit helyett break. Done + exittel mintha nem működött volna úgy emlékszem.
De a több fájlos ellenőrzés még se működik.
Jók a méretek, és mégis újra kezdi a letöltést.
Ez lenne az.#!/bin/sh
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=00H12H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_12H.grib2
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=13H24H&referencetime=$(date +"%Y-%m-%d")T06:00:00Z" -O ARPEGE_SP1_24H.grib2
# új letöltés
sleep 6m
continue
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=25H36H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_36H.grib2
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=37H48H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_48H.grib2
# új letöltés
sleep 5m
continue
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=49H60H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_60H.grib2
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=61H72H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_72H.grib2
while true
do
size=$(stat -c \%s ARPEGE_SP1_12H.grib2 )
size=$(stat -c \%s ARPEGE_SP1_24H.grib2 )
size=$(stat -c \%s ARPEGE_SP1_36H.grib2 )
size=$(stat -c \%s ARPEGE_SP1_48H.grib2 )
size=$(stat -c \%s ARPEGE_SP1_60H.grib2 )
size=$(stat -c \%s ARPEGE_SP1_72H.grib2 )
if [ $size -lt 38797312-o $size -gt 45088768 ]
then
# hiba, varj 10 percet
sleep 5m
# probald ujra
continue
fi
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=00H12H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_12H.grib2
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=13H24H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_24H.grib2
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=25H36H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_36H.grib2
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=37H48H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_48H.grib2
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=49H60H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_60H.grib2
wget "http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=__xxx__&model=ARPEGE&grid=0.1&package=SP1&time=61H72H&referencetime=$(date +"%Y-%m-%d")T12:00:00Z" -O ARPEGE_SP1_72H.grib2
exit 0
done[ Módosította: dabadab ]
LG Velvet 5G Android 11 - Windows 10 Pro x64 & Debian 11 Bullseye - WoWS unsinkable_sam_
-
dabadab
titán
válasz olivera88 #2107 üzenetére
Aha, ez így nagyon nem jó Az alapvető hiba az, hogy a size változó függvényét simán felülírod anélkül, hogy az előző értékét vizsgálnád, aztán ha jó, akkor újra azonnal letöltöd, ha meg nem, akkor vársz és újra megnézed (az azóta nyilván változatlan file méretet )
Megcsináltam belőle egy normális változatot (a tokent írd bele vissza, azt töröltem az eddigi hozzászólásaidból is, mert az szerintem nem publikus információ):
szerk: észrevettem benne egy kis hibát, javítottam
#!/bin/bash
# access token
TOKEN="__5yLVTdr-sGeHoPitnFc7TZ6MhBcJxuSsoZp6y0leVHU__"
# file size min and max values - if the file's size falls outside of this range it is considered faulty
MIN_SIZE="38797312"
MAX_SIZE="45088768"
# time range - how many hour's data a single file contains
RANGE=12
function download_file()
{
# end time
TO="$1"
# start time - it is calculated a little oddly
FROM=$((${TO}-${RANGE}))
if [ $FROM -gt 0 ] ; then
FROM=$(($FROM+1))
fi
# add leading zeroes if needed
FROM="$(printf "%02d" "${FROM}")"
RANGE="$(printf "%02d" "${RANGE}")"
# url of the data
URL="http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=${TOKEN}&model=ARPEGE&grid=0.1&package=SP1&time=${FROM}H${TO}H&referencetime=$(date +'%Y-%m-%d')T${RANGE}:00:00Z"
# output file name
OUT_FILE="ARPEGE_SP1_${TO}H.grib2"
while true ; do
# get the file
wget "${URL}" -O "${OUT_FILE}"
# check the filesize
size=$(stat -c \%s "${OUT_FILE}" )
if [ $size -ge "${MIN_SIZE}" -a $size -le "${MAX_SIZE}" ] ; then
# size is OK, leave loop
break
else
# something went wrong, wait a little and retry
sleep 5m
fi
done
}
for TO in 12 24 36 48 60 72 ; do
download_file "${TO}"
done[ Szerkesztve ]
DRM is theft
-
olivera88
veterán
válasz dabadab #2108 üzenetére
Nincs semmi gond a tokennel, mert publikus mindenki számára a letöltés. Úgyhogy az első sor törölhető akkor ugye? Meg amúgy se tudnának semmit se kezdeni a grib2 fájlokkal.
Ezt hogy érted hogy size változó értékét felül írom? Mivel? Amúgy nem így akartam megoldani, hanem úgy hogy szétbontom az összes fájl ellenőrzést, és berakom a letöltések után, nem mint most hogy a végén ellenőrzi az egészet csak.
Nem működik a letöltés. Csak egy HTML fájl töltődik le a gribek helyett. Meg ez hogy van beállítva? Hogy egyszerre töltse le az összes fájlt? Mert úgy nem lehet, vagyis lehet, de én fokozatosan akarom, mivel nem egyszerre frissülnek a szerveren a fájlok, hanem fokozatosan.[ Szerkesztve ]
LG Velvet 5G Android 11 - Windows 10 Pro x64 & Debian 11 Bullseye - WoWS unsinkable_sam_
-
dabadab
titán
válasz olivera88 #2109 üzenetére
"Úgyhogy az első sor törölhető akkor ugye?"
Nem, ott meg kell adni a tokent, mert anélkül a jelek szerint nem megy, azért kapsz html file-t. Akkor azt visszarakom.
"Ezt hogy érted hogy size változó értékét felül írom? Mivel?"
A következő file méretével, amikor ott van egymás után sokszor a "size=" kezdetű sor, akkor minden sorban új értéket adsz a size-nak és csak a legutolsód ellenőrzöd.
"Amúgy nem így akartam megoldani, hanem úgy hogy szétbontom az összes fájl ellenőrzést, és berakom a letöltések után, nem mint most hogy a végén ellenőrzi az egészet csak."
Ami scriptet írtam, az így van, minden egyes file-t a letöltése után vizsgál meg, nem pedig egyben a végén.
"Meg ez hogy van beállítva? Hogy egyszerre töltse le az összes fájlt? Mert úgy nem lehet, vagyis lehet, de én fokozatosan akarom, mivel nem egyszerre frissülnek a szerveren a fájlok, hanem fokozatosan."
Vagyis várni akarsz az egyes file-ok letöltése után? Ha erről van szó, akkor azt a külső ciklusban gond nélkül megteheted:
for TO in 12 24 36 48 60 72 ; do
download_file "${TO}"
donehelyett az kell, hogy (ha pl. 10 percet akarsz várni):
for TO in 12 24 36 48 60 72 ; do
download_file "${TO}"
sleep 10m
done[ Szerkesztve ]
DRM is theft
-
olivera88
veterán
válasz dabadab #2110 üzenetére
Értem. Köszi. De a letöltés most se akar jó lenni valamiért. Most is HTML fájl töltődik.
#!/bin/bash
# access token
TOKEN="__5yLVTdr-sGeHoPitnFc7TZ6MhBcJxuSsoZp6y0leVHU__"
# file size min and max values - if the file's size falls outside of this range it is considered faulty
MIN_SIZE="38797312"
MAX_SIZE="45088768"
# time range - how many hour's data a single file contains
RANGE=12
function download_file()
{
# end time
TO="$1"
# start time - it is calculated a little oddly
FROM=$((${TO}-${RANGE}))
if [ $FROM -gt 0 ] ; then
FROM=$(($FROM+1))
fi
# add leading zeroes if needed
FROM="$(printf "%02d" "${FROM}")"
RANGE="$(printf "%02d" "${RANGE}")"
# url of the data
URL="http://dcpc-nwp.meteo.fr/services/PS_GetCache_DCPCPreviNum?token=${__5yLVTdr-sGeHoPitnFc7TZ6MhBcJxuSsoZp6y0leVHU__}&model=ARPEGE&grid=0.1&package=SP1&time=${FROM}H${TO}H&referencetime=$(date +'%Y-%m-%d')T${RANGE}:00:00Z"
# output file name
OUT_FILE="ARPEGE_SP1_${TO}H.grib2"
while true ; do
# get the file
wget "${URL}" -O "${OUT_FILE}"
# check the filesize
size=$(stat -c \%s "${OUT_FILE}" )
if [ $size -ge "${MIN_SIZE}" -a $size -le "${MAX_SIZE}" ] ; then
# size is OK, leave loop
break
else
# something went wrong, wait a little and retry
sleep 5m
fi
done
}
for TO in 12 24 36 48 60 72 ; do
download_file "${TO}"
sleep 5m
done[ Szerkesztve ]
LG Velvet 5G Android 11 - Windows 10 Pro x64 & Debian 11 Bullseye - WoWS unsinkable_sam_
-
DrojDtroll
addikt
Google keresési javaslatokhoz hasonlót meg lehetne valósítani?
Mondjuk egy fájl soraiban akarunk keresni, vagy egy mappa fájljaiban.
-
spammer
veterán
válasz DrojDtroll #2113 üzenetére
awk, grep, ilyesmikkel megoldható.
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
spammer
veterán
válasz DrojDtroll #2115 üzenetére
Izé, lehet, hogy félreértettem. Keresési találatokra gondoltam, hogy a talált kulcsszavak esetén a kulcsszó környezetében írjon még ki mondjuk 1-2 sort.
Ha arra gondolsz, hogy elkezdesz gépelni valamit és közben dob fel találatokat és minden billentyű leütésnél frissül, azt passzolom.
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
Jester01
veterán
-
DrojDtroll
addikt
válasz Jester01 #2118 üzenetére
Akkor javítok rajta.
Van kb 600 kisebb program. Amelyekből el kell indítanom az egyiket.
Az elképzelés az lenne hogy ha leütök egy betűt akkor az olyan betűvel kezdődő fájlok kerüljenek kilistázásra. Max 10 darab. Ha még egy betűt betűt leütök akkor az előző két betűvel kezdődő fájlok kerüljenek kilistázásra ugyan azon a helyen ahol az előző találatok. És így tovább.
Ha fájlok helyett egy fájl soraival is működik a dolog az még jobb.
[ Szerkesztve ]
-
spammer
veterán
válasz DrojDtroll #2119 üzenetére
bash+python kombóval van ilyesmi: pmenu
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
Jim-Y
veterán
Sziasztok, egy unix shell reguláris kifejezésre lenne szükségem, de nem tudom összehozni :/
Egy csomó mindent próbáltam amiket nem fogok belinkelni, de ezt szeretném:^(backend)*(.js)$
Tehát "backend" -el kezdődjön és ".js"-re végződjön. Nem sikerül összehozni :/
Edit: na mire leírtam úgy tűnik, hogy ez működik: '^(backend).*(.js)$
Üdv
[ Szerkesztve ]
-
-
unix shell reguláris kifejezést keresett, nem szabvány regexpet.
tehát jó.
bambano@bruti:/tmp/3$ touch back.js
bambano@bruti:/tmp/3$ touch backe.js
bambano@bruti:/tmp/3$ touch backen.js
bambano@bruti:/tmp/3$ touch backend.js
bambano@bruti:/tmp/3$ touch backend-.js
bambano@bruti:/tmp/3$ touch backend-3.js
bambano@bruti:/tmp/3$ touch backend-3.js
bambano@bruti:/tmp/3$ touch backend-34.js
bambano@bruti:/tmp/3$ touch backend34.js
bambano@bruti:/tmp/3$ touch backend345.js
bambano@bruti:/tmp/3$ ls -l backend*.js
-rw-r--r-- 1 bambano bambano 0 ápr 13 13:41 backend345.js
-rw-r--r-- 1 bambano bambano 0 ápr 13 13:41 backend-34.js
-rw-r--r-- 1 bambano bambano 0 ápr 13 13:41 backend34.js
-rw-r--r-- 1 bambano bambano 0 ápr 13 13:41 backend-3.js
-rw-r--r-- 1 bambano bambano 0 ápr 13 13:41 backend-.js
-rw-r--r-- 1 bambano bambano 0 ápr 13 13:41 backend.jsa második kérdésében a grep -E-t kérdezte, az nem unix shell regexp, hanem extended szabvány regexp.
tehát az első kérdésére az én válaszom helyes. hogy a második kérdéséből az derült ki, hogy nem is ezt akarta kérdezni, az mvpEgy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
doc
nagyúr
válasz bambano #2126 üzenetére
nincs olyan hogy 'unix shell regexp', amire te annak hivsz az sima glob expression
egyebkent az altala adott peldabol is egyertelmu volt hogy regexpet keres nem pedig shell filemaskot
MOD: amennyiben utobbi csak utolag kerult bele a valaszom utan, akkor a fenti termeszetesen targytalan
[ Szerkesztve ]
-
beloadjoker
őstag
Hali srácok egy paranccsal lenne problémám vagyis egy feladattal tudnátok segíteni?
Adott a nevek.txt állomány. Mely paranccsal tudná a fájlban található magyarosan írt neveket /nagybetűvel kezdődő utána kisbetű majd ismét/ angolosan megjeleníteni /felcserélni az első és a második nevet/?
Próbálkoztam de enm jön össze idáig jutottam:
cat nevek.txt | egrep '[A-Z][a-z]+' | awk '{print $2 $1}'
Oneplus One 64gb S. Black + nokia N900 + Xperia Mini + Lenovo y510p i7 SLI 16Gb 256 ssd 1tb ext. hdd + Lenovo x200 + Nexus 7 grouper 16gb + Nexus 7 flo 32gb
-
spammer
veterán
válasz beloadjoker #2128 üzenetére
Felesleges a cat és a grep. awk érti a regexet és tud bementeni fájlt olvasni.
Valami ilyesmi, de a konkrét fájltól is függ.
awk '/[a-zA-Z]+/{print $2" "$1}' nevek.txt
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
beloadjoker
őstag
válasz spammer #2129 üzenetére
Köszönöm, esetleg kis magyarázatot adnál?
Főleg ez a része nem tiszta:
/[a-zA-Z]+/
de az sem hogy $2 után $1 elé miért kell "-jel+Ha már így benne vagyunk lenne még egy feladat:
Hogyan tudná a valami.txt fájl tartalmát megjeleníteni awk segítségével úgy hogy minden sor elejére írja ki a
sorok és az aktuális sorban szereplő szavak számát is?Oneplus One 64gb S. Black + nokia N900 + Xperia Mini + Lenovo y510p i7 SLI 16Gb 256 ssd 1tb ext. hdd + Lenovo x200 + Nexus 7 grouper 16gb + Nexus 7 flo 32gb
-
spammer
veterán
válasz beloadjoker #2130 üzenetére
Te írtad a regexet, én csak beraktam awk-ba. Ha csak simán nevek vannak a fájlban felsorolva egymás alá, akkor nem is kell. Például:
$ cat nevek.txt
Kiss Béla
Nagy Józsi
Takács Endre
$ awk '{print $2" "$1}' nevek.txt
Béla Kiss
Józsi Nagy
Endre TakácsA " " az egy szóköz, különben ez lesz:
awk '{print $2 $1}' nevek.txt
BélaKiss
JózsiNagy
EndreTakácsszerk: a házi feladat többi rész rád vár. Sok példa van neten, meg tutorialok is, nulláról nem írja meg helyetted senki, főleg konkrét példa/feladat nélkül.
[ Szerkesztve ]
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
beloadjoker
őstag
válasz spammer #2131 üzenetére
jaj tényleg a szóköz
egyébként rendben de és ha nem csak az van benne?
Pl itt ahogy látom nem is jó: első kettő elmegy "névnek" de harmadik már nem mivel a második szó nem nagybetűvel kezdődik mégis kiírtaj@ubuntu:~/Documents$ cat nevek.txt
Kis András
Asdfs Psdfsd
SDFsdf sdfsdfsdf
j@ubuntu:~/Documents$ awk '/[a-zA-Z]+/{print $2" "$1}' nevek.txt
András Kis
Psdfsd Asdfs
sdfsdfsdf SDFsdf* Jó pár feladat mögöttem van már de ezek nem mentek azért írtam hátha tudtok segíteni
[ Szerkesztve ]
Oneplus One 64gb S. Black + nokia N900 + Xperia Mini + Lenovo y510p i7 SLI 16Gb 256 ssd 1tb ext. hdd + Lenovo x200 + Nexus 7 grouper 16gb + Nexus 7 flo 32gb
-
spammer
veterán
válasz beloadjoker #2132 üzenetére
Valami ilyesmi esetleg:
awk '/^[A-Z]+/{print $2" "$1}'
szerk: és a $2 és $1 ugye két mezőt printel, ha valakinek 3 részből áll a neve (pl. Kiss Elemér Géza), akkor az bukta, erre figyelj majd.
[ Szerkesztve ]
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
Headless
őstag
válasz beloadjoker #2134 üzenetére
awk '/^[A-Z][a-z]+ [A-Z][a-z]+/{print "Sorszám: "NR" szavak száma: "NF" "$2" "$1}'
Persze az még mindig kérdéses mi van a 3 nevűekkel. ott a 3.-kat elveszted vagy simán kiprinteled, a 3.-kat is.
Idézőjel azért kell, hogy a print tudja hogy nem változót akarsz használni, hanem egyszerű stringet.
ahogy látszik a mintában vannak beépített változók awk-ban, azokat használhatod
googleben hamar megtalálhatod őket.[link]Vagy esetleg még a filed numberre is szűrhetsz
awk 'NF>2&&NF<3&&/^[A-Z]/{print ....}'
mondjuk persze mindig lehet finomítani.
[ Szerkesztve ]
LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/
-
Headless
őstag
válasz beloadjoker #2136 üzenetére
jah most nézem akkora ellentmondás van a field numberes szűrésemben...
nagyobb 2-nél és kisebb 3-nál... mindegy a lényeget gondolom értetted.
[ Szerkesztve ]
LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/
-
beloadjoker
őstag
válasz beloadjoker #2138 üzenetére
Hali srácok ezt szeretném megcsinálni:
Elírás történt egy fájlban. Hogyan cserélné le a 19-cel kezdődő évszámokat 20-val kezdődőre. (évszám 4 karakter!):
pl.:1908 --> 2008sed 's/\(19\)\([0-9][0-9]\)/20\2/g' a
Az a bajom hogy nem csak a 4 számból állókat írja át szóval szerintem be kéne szúrni valahova ezt: {4} de nem sikerül, tudnátok segíteni?
Oneplus One 64gb S. Black + nokia N900 + Xperia Mini + Lenovo y510p i7 SLI 16Gb 256 ssd 1tb ext. hdd + Lenovo x200 + Nexus 7 grouper 16gb + Nexus 7 flo 32gb
-
spammer
veterán
válasz beloadjoker #2139 üzenetére
$ cat evszamok.txt
1908
1922
1938
1522
2012
$ awk '/^19[0-9]{2}$/{sub("19","20");print}' evszamok.txt
2008
2022
2038Biztos van egyszerűbb megoldás is, de nekem most még korán van, elsőre ez jött.
„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."
-
Headless
őstag
válasz beloadjoker #2139 üzenetére
Ez attól függ mi a környezet, az évszámok utáni részt is rakd be a \2-be. szóköz, end line, field separator, stb az 19 elé meg szintén berakhatod ezeket.
Viszont én a te megoldásodon annyit javítanék, hogy a 19 után nem engedném hogy 0-9 legyen mert akkor az 1993-at is át fogja írni, ami valószínű nem elírás... Ezért én maximum [0-1][0-9]-et engednék meg. Még ígyis 2019-ig fogja változtatni
Szerk: azért elég furcsa egy adatbázis ez... Semmi rendszeresség...
[ Szerkesztve ]
LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/
-
beloadjoker
őstag
válasz spammer #2140 üzenetére
Köszi bár nem teljesen jó:
j@ubuntu:~$ cat a
19 1923 132323 192323
1982
Barbara Jozsi Bela bela jozsi barbara
1999 AsdfgsdfgZ Asfgsdfgsd1Z
Asd asd bbbb
ccccc
cccccc
j@ubuntu:~$ awk '/^19[0-9]{2}$/{sub("19","20");print}' a
2082de már sejtem hol a gond
Oneplus One 64gb S. Black + nokia N900 + Xperia Mini + Lenovo y510p i7 SLI 16Gb 256 ssd 1tb ext. hdd + Lenovo x200 + Nexus 7 grouper 16gb + Nexus 7 flo 32gb
-
beloadjoker
őstag
válasz Headless #2141 üzenetére
Még most sem sikerült, leírnád hogy kellene?
Túl nagy évszám nem gond tanár adja a feladatot persze ha kapok ilyet zh-n, nem írta hogy nem lehet nagyobb az évszám valamennyinél
*igen csak én csináltam gyors nyilván hogy keressem a megoldásban a hibát
[ Szerkesztve ]
Oneplus One 64gb S. Black + nokia N900 + Xperia Mini + Lenovo y510p i7 SLI 16Gb 256 ssd 1tb ext. hdd + Lenovo x200 + Nexus 7 grouper 16gb + Nexus 7 flo 32gb
-
ZCoyote
őstag
Sziasztok,
Lehet, hogy ez a kérdés nem ide tartozik de hátha...
Hogyan lehet egy parancs lefutásakor kiíratni a dátumot a terminálban?
Előre is köszi!
Romani ite domum.
-
beloadjoker
őstag
válasz ZCoyote #2144 üzenetére
Hát lehet hogy nem a legjobb megoldás de:
date && és_ide_a_parancs_amit_akarsz
/így az elején lesz persze ha fordítva csinálod akkor a végére írja ki a dátumot/
[ Szerkesztve ]
Oneplus One 64gb S. Black + nokia N900 + Xperia Mini + Lenovo y510p i7 SLI 16Gb 256 ssd 1tb ext. hdd + Lenovo x200 + Nexus 7 grouper 16gb + Nexus 7 flo 32gb
-
Headless
őstag
válasz beloadjoker #2143 üzenetére
Hát ez egy összetetteb ha így mindenre gondolni kell...
Első körben vegyük azokat amik a sor közepén helyezkednek el, 4 szám egymás után, előtte utána bármi ami nem szám, az már évszám
sed "s/\([^0-9]\)\(19\)\([0-9]\{2\}[^0-9]\)/\120\3/g" /evszam.txt
Előtte nincs semmi (sorkezdés) utána van bármi ami nem szám.
sed "s/^\(19\)\([0-9]\{2\}[^0-9]\)/20\2/" /evszam.txt
Előtte bármi ami nem szám, utána semmi (sorvég).
sed "s/\([^0-9]\)\(19\)\([0-9]\{2\}\)$/\120\3/" /evszam.txt
előtte utána semmi (csak az évszám van).
sed "s/^\(19\)\([0-9]\{2\}\)$/20\2/" /evszam.txt
Persze ezt besűrítheted egy nagy átláthatatlan parancsba.
sed "s/^\(19\)\([0-9]\{2\}\)$/20\2/;s/\([^0-9]\)\(19\)\([0-9]\{2\}\)$/\120\3/;s/^\(19\)\([0-9]\{2\}[^0-9]\)/20\2/;s/\([^0-9]\)\(19\)\([0-9]\{2\}[^0-9]\)/\120\3/g" /evszam.txt
Minden eshetőségre könnyebbet nem találtam. Persze a szövegelválasztókat cserélheted bármi másra. [^0-9] hogy ne ugorjon bármire, ami nem szám. pl nem szám és nem betű. [^0-9a-zA-Z] vagy csak szóköz és vessző [ ,]
Az &&-el óvatosan, ha mindenképp le kell futni, mert ha így adod ki, akkor csak akkor fog lefutni, ha az első parancs lefutott és a return értéke 0.
vagyis ha mondjuk grep nem talál semmit akkor nem fog végrehajtódni a && után jövő parancs. Ha már 1 sorba kell tömöríteni használjuk a ";"-et parancsok elválasztásához.
[ Szerkesztve ]
LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/
-
ZCoyote
őstag
-
vargalex
félisten
válasz beloadjoker #2142 üzenetére
Szia!
Én ezt tenném:
cat a | sed 's/\b19\([0-9]\{2\}\)\b/20\1/g'
Alex
Új hozzászólás Aktív témák
- Napelem
- PlayStation 5
- Apple iPhone XR - amikor az olcsóbb is drága
- Xiaomi Mi 9 SE - csúcsimitátor
- Megjöttek az M3 szilíciummal felturbózott Apple MacBook Airek
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Azonnali fáradt gőzös kérdések órája
- Megérkezett a Google Pixel 7 és 7 Pro
- Netfone
- Politika
- További aktív témák...
- Steam, Windows, Origin kulcsok, előfizetések közvetlenül a kiadótól, a LEGJOBB ÁRON!
- Windows 10 Home COA fizikai licencek kiárusítás ingyenes szállítással
- Bontatlan - BATTLEFIELD 1 Collectors Edition - Játékszoftver nélkül
- Eladó aktív domain nevek, weboldal tartalommal együtt
- Adobe Creative Cloud - 2024. 04. 05 - 2025. 04. 05-ig