Azt a részét nem értettem, ezért nem használtam fel
Köszönöm szépen mindanyiótokban, most már minden úgy működik ahogy kell!
Gyorskeresés
Legfrissebb anyagok
- Bemutató Route 66 Chicagotól Los Angelesig 2. rész
- Helyszíni riport Alfa Giulia Q-val a Balaton Park Circiut-en
- Bemutató A használt VGA piac kincsei - Július I
- Bemutató Bakancslista: Route 66 Chicagotól Los Angelesig
- Tudástár AMD Radeon undervolt/overclock
Általános témák
LOGOUT.hu témák
- [Re:] [Luck Dragon:] Asszociációs játék. :)
- [Re:] [HThomas:] Kia Ceed SW JD vs CD tapasztalatok
- [Re:] [D1Rect:] Nagy "hülyétkapokazapróktól" topik
- [Re:] [Sub-ZeRo:] Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- [Re:] Android másképp: Lineage OS és társai
- [Re:] [gban:] Ingyen kellene, de tegnapra
- [Re:] [ldave:] New Game Blitz - 2024
- [Re:] [eldiablo:] Kioxia XG6, BiCS please
- [Re:] eBay-es kütyük kis pénzért
- [Re:] [ubyegon2:] Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
Szakmai témák
PROHARDVER! témák
Mobilarena témák
IT café témák
Hozzászólások
PistiSan
addikt
Tamy
senior tag
Sziasztok!
Szeretnék beüzemelni egy Zentyal 4.0 szervert, virtuális környezetben összeraktam, a gépektet beléptettem a tartományba, de azt sehogy sem bírom elérni, hogy a felhasználóknak automatikusan felcsatolja a csoport megosztott könyvtárát is. Csináltam egy egyszerű login scriptet, amit betettem a Bejelentkezési parancsfájlhoz, viszont valahogy azt szeretném elérni, ha mindenkinek csak a saját csoportjához tartozó megosztás kerülne felcsatolásra. Azt látom, hogy feltöltéskor a scripthez lehet paramétert megadni, gondolom ide kéne beállítani a megfelelő csoportot, csak sajnos fogalmam sincs hogyan. Tudna valaki segíteni?
Egész életemben azon gondolkodtam, hogy kéne valamit dolgoznom. Ezért aztán a végén nem is maradt rá időm.
Gyb001
senior tag
Sziasztok. Tudtok valami jó könyvet/oldalt ahol leírják hogyan tudok kapcsolókat létrehozni?
Konkrétan a feladatot már megcsináltam. Csak olyat szeretnék hogy ha kapcsoló nélkül hajtódik végre a fájl akkor legyen A eredmény kiírva ha -valami vel akkor legyen a B
A bus station is where a bus stops. A train station is where a train stops. On my desk, I have a work station
Jester01
veterán
man bash
Esetedben a legegyszerűbb utat követve mindösszesen annyit kell megnézni, hogy if [ "$1" = "-valami" ]
[ Szerkesztve ]
Jester
Gyb001
senior tag
kösz
Én is így csináltam. Azt hittem van valami "speciális" csak erre használt megoldás.
A bus station is where a bus stops. A train station is where a train stops. On my desk, I have a work station
Jester01
veterán
Van getopts beépített parancs a bash-ban, de egyfelől az nem szabványos, másfelől csak egy karakteres opciókat kezel (és ráadásul jelen esetben ágyúval verébre).
Jester
Tamy
senior tag
Megpróbálom máshogy leírni a problémámat, hátha könnyebben tudtok segíteni:
Iskolai környezetről lévén szó, minden osztály egy csoport. Legyen az egyik ilyen csoport a 4a, akinek a megosztott mappája szintén a 4a. A megosztással minden rendben, tallózva elérik, csak épp annyit szeretnék, ha ez automatikusan felcsatolódna bejelentkezéskor. Értelemszerűen mindenkinek csak a sajátja.
Csináltam egy batch fájlt az alábbi tartalommal:
net use a: \\server\4a
Ezt webes felületen fel tudom tölteni, illetve paraméterekkel ellátni. Ebből generál egy scriptet az alábbi tartalommal:
[Logon]
0CmdLine=4a.cmd
0Parameters=
Ilyen paraméterezett batch fájlból természetesen többet is fel lehet tölteni. Magyarul ha jól gondolom a paraméter értékkel el lehetne érni, hogy csak akkor futtassa az adott batch fájlt, ha a felhasználó a paramétereknél megadott csoportba tartozik. Csak azt nem tudom miként kellene paraméterezni.
Egész életemben azon gondolkodtam, hogy kéne valamit dolgoznom. Ezért aztán a végén nem is maradt rá időm.
Gyb001
senior tag
Újabb segítséget szeretnék kérni valakitől
String kisbetűssé alakításával van egy kis gondom.
hogyha simán kiiratom a szöveget akkor át alakítja
valtozo="SZOVEG"
echo $valtozo|tr '[A-Z]' '[a-z]'
Viszont ha egy új változóba menteném el akkor nem fut le az átalakítás.
valtozo="SZOVEG"
ujvaltozo = $valtozo|tr '[A-Z]' '[a-z]'
echo "$ujvaltozo"
sor: 3: ujvaltozo: parancs nem található
A bus station is where a bus stops. A train station is where a train stops. On my desk, I have a work station
doc
nagyúr
ujvaltozo =` echo $valtozo|tr '[A-Z]' '[a-z]'`
vagy
ujvaltozo =$( echo $valtozo|tr '[A-Z]' '[a-z]')
[ Szerkesztve ]
lev258
veterán
ujvaltozo = echo $valtozo|tr '[A-Z]' '[a-z]'
Ubuntu MATE 20.04, hobbi cayenne termesztő
Gyb001
senior tag
Köszönöm ismét
A bus station is where a bus stops. A train station is where a train stops. On my desk, I have a work station
prucam
tag
Sziasztok,
most számokkal kapcsolatban kérném segítségetek. Egy *txt fileben vannak vegyesen számok s szöveg.
Vannak:
1, egész számok: 1-1000-ig
2, tizedesjegyű számok: pl.: 1,1827000 stb.
Hogyan lehetne kiszűrni, (pontos találatok kellenek):
1, az összes számot (egész, v. tizedes mind)
2, az egyjegyű-kétjegyű stb. számokat (egész számok)
3, v. csak azokat amelyek tizedesjegyűek (a tizedesjegyek száma nem számít [de később kellhet, ezért azt is szeretném tudni])
Előre is köszönöm a segítséget!
üdv
házifeladat lébecolás szagot érzek...
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
prucam
tag
Negyven évesen már nem kell leckét csinálnom, de a segítség néha jól jön.
[ Szerkesztve ]
Jester01
veterán
Egyszerű regex szűrés, számjegyekre és vesszőkre. Hol akadtál el?
Jester
ok
szerintem tördeld fel a txt-t szavakra, majd grep-pel szedd ki belőle azokat a stringeket, amik számot mutatnak.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
prucam
tag
Még az elején elakadtam.
grep "[0-9]" abc
- ez részben már jó, mert azokat a sorokat mutatja amikben vannak számok
grep -o "[0-9]" abc
1
6
8
4
2
7
0
…
- a soronkénti találatokat kellene csak a számokra szűkíteni. De hogyan?
dabadab
titán
Van a regexpben olyan, hogy sor eleje (^) meg sor vege ($), illetve olyan, hogy "az elozo karakterbol akarmennyi" (*)
Szoval ha jol ertem, neked ez kell:
grep "^[0-9]*$" abc
DRM is theft
szerintem még mindig az a legegyszerűbb, hogy szavanként külön sorba tördeled a fájlt, és ezután grepelsz
pl. cat file | tr ' ' '\n' | grep
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
prucam
tag
Sziasztok,
szótördeléses megoldás lett a nyerő! Köszönöm bambano! Onnan meg már egyszerűbb, mert csak a számokkal kezdödő sorokkal viszgáljuk. Az ötletért köszönet dabadab-nak!
Utána grep-el megcsináltam a "leckét":
Hogyan lehetne kiszűrni, (pontos találatok kellenek):
1, az összes számot (egész, v. tizedes mind)
megoldás: cat abc | tr ' ' '\n' | grep "^[0-9]"
2, az egyjegyű-kétjegyű stb. számokat (egész számok)
megoldás kétjegyű: grep "^[0-9][0-9]" stb.
3, v. csak azokat amelyek tizedesjegyűek (a tizedesjegyek száma nem számít [de később kellhet, ezért azt is szeretném tudni])
megoldás tizedesjegyűek: grep "^[0-9],"
Megint tanultam valamit.
üdv
makro
aktív tag
Picit másként:
echo "Összes szám: "; sed 's/ /\n/g' text.file| grep "^[0-9]";echo;
echo "Egész számok: "; sed 's/ /\n/g' text.file | grep "^[0-9]*$";echo;
echo "Kétjegyű egész számok: "; sed 's/ /\n/g' text.file | grep "^[0-9][0-9]";echo;
echo "Tört számok: "; sed 's/ /\n/g' text.file | grep "^[0-9]*[,].[0-9]*";echo;
echo "Szavak: "; sed 's/ /\n/g' text.file | grep "^[a-zA-Z]*$";echo;
prucam
tag
makro, koszi szepen a sed-es megoldast is.
prucam
tag
sziasztok,
az awk-hoz kérnék most segítséget. *.htm file-kben keresek, itt a parancs:
w3m -dump /mnt/mappa/mappa/mappa/tobb_mappa/1-20/*.htm | awk '/*ty:*/ { print $0 }'
Ez jó megtalálja ami kell a "…/tobb_mappa/1-20/"-ban. De, van több almapa is.
…/tobb_mappa/1-20/
…/tobb_mappa/21-30/
…/tobb_mappa/31-40/
…/tobb_mappa/41-50/
… stb.
Azt hogyan lehetne megcsinálni, hogy ne csak a "…/tobb_mappa/1-20/"-ban, hanem "…/tobb_mappa/" összes almappáiban is kerssen.
üdv
alapvetően több lehetséges megoldás van, mind a find-en alapszik.
vagy megkeresteted az összes könyvtárat:
find kezdokonyvtar -type d
és ezeket feldoldoztatod a w3m-mel csillagozva, vagy megkeresteted az összes html fájlt adott könyvtártól lefelé, és ezeket egyesével dolgozod fel:
find kezdokonyvtar -name '*.html'
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
Jester01
veterán
De sokkal egyszerűbb a w3m -dump /mnt/mappa/mappa/mappa/tobb_mappa/*/*.htm
Jester
ez abban az esetben jó, ha:
- a könyvtárrendszer mélysége pontosan ugyanannyi
- a nevek beleférnek a shell által az argumentumlistának fenntartott memóriába.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
prucam
tag
Sziasztok,
próbálgatom de nem igazán megy. Tudom, egyszerűbb volna ha minden file egy könyvtárban lenne.
Bambano, a könyvtár pontos elérését tudom. Nem értem a "find"-ot hogyan kapcsoljam össze:
find /mnt/mappa/mappa/mappa/tobb_mappa/ -type d | w3m -dump *.htm | awk …
v.
find …/tobb_mappa/ -name '*.htm' | w3m -dump | awk …
Jester01
"De sokkal egyszerűbb a
w3m -dump /mnt/mappa/mappa/mappa/tobb_mappa/*/*.htm"
Ez nekem az első két almappában dolgozik (azt tök jól!), a harmadikba már nem.
üdv
[ Szerkesztve ]
vagy xargs-sal:
find ... | xargs w3m ... | awk
vagy exec-kel:
find .. -name '*.htm' -exec w3m -dump {} \; | awk
fejből írtam, remélem, jók.
szerk: ha szóköz van a könyvtárnevekben, abból baj szokott lenni... akkor a {}-t idézőjelek közé kell tenni.
[ Szerkesztve ]
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
prucam
tag
siker!!!
find … -name '*.htm' | xargs w3m -dump | awk …
köszi szépen
Azt meglehetne-e még "buherálni", hogy az erdménynél lássuk a forrásfile (útvonal v. anélkül; ahogy lehet) nevét is. eredmény pl.:
2.htm …
11.htm …
18. htm …
üdv
mithras91
csendes tag
Üdv!
Egy olyan problémám lenne ,hogy kell írnom egy shell scriptet ami számokat vált át különböző számrendszerekbe. Ez eddig oké, csak van egy olyan kérés,hogy így lehessen futtatni:
&./szamvalt.sh -f 2 -c 10 1001
9
&./szamvalt.sh -f 16 -c 10 FF
255
&./szamvalt.sh -f 10 -c 16 127
7F
Ebben szeretnék egy kis segítséget kérni,hogy ezeket a kapcsolókat miként kéne hozzá adni?
Előre is köszönöm
Jester01
veterán
Az argumentumok a $1,$2,$3 ... változókban érhetők el. Attól függően mennyire kell bonyolult megoldás lehet az egészen egyszerűtől (ami a sorrendre épít és nem ellenőrzi a kapcsolókat) a kifinomultig (getopt) választani megvalósítást.
Jester
mithras91
csendes tag
köszönöm szépen
rafanadal
csendes tag
Sziasztok!
Van egy beadandó feladatom 2hetem van rá, de sajnos bele se tudok kezdeni, mert egyetemi órákon, nem csináltunk ilyen nehézségű feladatokat. A feladat ez lenne
valaki tud segiteni, hogyan induljak el? Vagy hogyan kéne megcsinálni? Tanácstalan vagyok és nem akarom hogy emiatt ne sikerüljön a tárgy a félévben
rafanadal
csendes tag
Na a programot időközben félig elkészítettem. A bruttó része kész. Olyan kérdésem lenne, hogyan tudom azt a funkciót megoldani, hogy ha a felhasználó az n karaktert beviszi akkor átváltson és nettó adatokat kérjen be?
Jester01
veterán
if [ "x$1" = "x-n" ] ...
(a feladatban -n kapcsoló szerepel, nem n karakter bevitel)
[ Szerkesztve ]
Jester
rafanadal
csendes tag
Sziasztok!
Ebben a kis részben, hogy tudnám a scale utáni számítási részt egy x nevű változóban eltárolni, hogy tudjak rá hivatkozni rá később? Aritmetikai hibába kerülök folyton. Később azt az értéket szeretném felhasználni egy feltétel vizsgálatban.
dabadab
titán
x="$( echo ""3+2+$n*12"" | bc )"
[ Szerkesztve ]
DRM is theft
adam24466
újonc
Sziasztok!
Nekem az lenne a kérdésem hogy hogy lehet azt megcsinálni hogy ha a txt fájlon belül talál egy karaktert (pl:@) akkor attól tovább ne írja ki a begépelt szöveget csak addig?
A válaszokat előre is köszönöm!
Jester01
veterán
Az attól függ a @ önmagában van-e egy sorban és azt a sort ki kell-e még írni, illetve a sornak a @ előtti részét.
A legegyszerűbb eset, ha azt a sort még ki lehet írni:
sed -n '1,/@/ p' < in.txt
Jester
Sziasztok!
A beadandom lenne az alabbi script, aminek ket parameter (egy karakterlanc es egy fajlnev) beolvasasa utan meg kenevizsgalnia, hogy szerepel e a beolvasott karakterlanc az adott fajlban.
Azonban valamiert nem talalja a fajlt. Mi lehet a gond? o.O
echo "Kerem a keresendo karakterlancot:\n"
read karlanc
echo "Kerem a fajlnevet:\n"
read fajlnev
if grep $karlanc $fajlnev 1
then
echo "Tartalmazza a fajl a karakterlancot\n"
else
echo "Nem tartalmazza a fajlnev a karakterlancot"
fi
Amivel probaltam, az a valami.txt fajl es az asd szoveg. A txt tartalmazza ezt, kozvetlenul a script fajl melle van elhelyezve.
[ Szerkesztve ]
Everybody lies.
beleszólok
senior tag
Az az "1" mi ott a végén?
Ugyanis ez így egy 1 nevű fájlt keres, arra üzen, hogy nem találja.
Egyébként javasolnám, hogy legalább a keresendő mintát tedd idézőjelek közé, mert ha szóköz vagy egyéb spec. karakter kerül bele, az gondot okozhat.
Ha netán az 1 eredetileg valamiféle átirányításhoz tartozott volna, akkor helyette inkább &>/dev/null lenne célszerű (stdout, stderr átirányítása a null eszközre - feltéve, hogy bash-ről van szó)
Szóval valahogy így:
if grep "$karlanc" $fajlnev &>/dev/null
[ Szerkesztve ]
Tiszavirág: http://youtu.be/YdcsiW0kfso
Az if miatt gondoltam, hogy szukseges valamilyen erteket megadni a grep kereseshez, amit igaznak vesz, de enelkul mar megy, koszonom.
A karakterlancot idezojelbe tettem, a fajlnevet is erdemes gondolom akkor.
Everybody lies.
beleszólok
senior tag
Fájlnév esetében nem egyértelmű: ha idézőjelbe teszed és pl. * kerül a fájlnévbe, mert mondjuk több fájlban akarsz keresni, akkor kap(hat)sz egy hibát, hogy nem találja a fájlt, mert idézőjelek közt a wildcardokat nem bontja ki a shell.
Tiszavirág: http://youtu.be/YdcsiW0kfso
A feladat leirasaban egy fajlnev szerepel, szoval inkabb idezojelekbe teszem.
Két paramétert kap a script, az egyik egy fájlnév, a másik egy karakter minta. Határozza meg, hogy az adott nevű fájlban van-e a paraméterkent
kapott karakterlánc!
Everybody lies.
dabadab
titán
"Fájlnév esetében nem egyértelmű: ha idézőjelbe teszed és pl. * kerül a fájlnévbe, mert mondjuk több fájlban akarsz keresni, akkor kap(hat)sz egy hibát, hogy nem találja a fájlt, mert idézőjelek közt a wildcardokat nem bontja ki a shell."
Ez nem igy megy.
Abban igazad van, hogy az echo "*" egy csillagot fog kiirni, viszont itt nem errol van szo, az idezojelek kozott csak a valtozobehelyettesites zajlik le, a wildcardozas egy masik menet, ez mar megy:
FILE="*"
echo "$FILE"
A lenyeg: tessek csak mindent idezojelek koze rakni.
[ Szerkesztve ]
DRM is theft
beleszólok
senior tag
x='*'
echo $x
Mit kapsz?
Szerintem az aktuális könyvtár tartalmát. (cygwin bash alatt kipróbáltam, mert elbizonytalanodtam)
És erről beszélek: ha inputként csak egyetlen fájl nevét lehet megadni, akkor kell az idézőjel. Ha lehet benne wildcard, akkor nem jó, ha idézőjelbe teszi, mert a read nem fogja behelyettesíteni, idézőjelbe tett változót meg már nem boncol tovább a shell.
Tiszavirág: http://youtu.be/YdcsiW0kfso
BullZeye
veterán
Transmission-höz csináltam egy scriptet régebben, ami bizonyos trackereket külön véve törli transmissionből a torrentet, és áthelyezi egy !Delete mappába a tartalmat. Mikor utoljára hozzányúltam tavaly, akkor csak annyi kellett, hogy a "Morning Show" letöltések amik alapból egy specifikus mappába töltődnek onnan ne kerüljenek ki, így bekerült egy + sor, és ez működött sok sok időn keresztül, aztán jött még 2 sorozat ami egy mappába töltődik rögtön, és nem szeretném, ha onnan átkerülne a !DELETE mappába, és itt jöttek a bajok, csak beleírtam +2 változót, és azóta nem megy egyik sem.
Rátudna valaki nézni, hogy mit rontottam el?
Tökéletesen működik a script, egy bajom van vele, hogy !Delete (MOVEDIR) mappába kerül Fairy Tail || Naruto || Morning Show.
if [ "$MORNING_SHOW" = "" ] || [ "$FAIRY_TAIL" = "" ] || [ "$NARUTO" = "" ]; then
transmission-remote --auth=$USER:$PASSWD --torrent $TORRENTID --move $MOVEDIR
Azaz ha változó=nulla, akkor nem morning show, VAGY fairy tail VAGY naruto, így azt át kell helyezni, ellenben áthelyez ez most mindent
Teljes script:
http://pastebin.com/U9v7tvKB
[ Szerkesztve ]
alaposabb szemrevételezés nélküli vélemény:
normális ember nem ad felkiáltójeles nevet egy mappának, mert ki tudja, melyik shell hogy értelmezi és melyik hiszi, hogy az egy logikai kifejezés, ami tagadással kezdődik.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
egyébként pedig kihagytál két egyenlőségjelet:
ez jó: MORNING_SHOW=`transmission-remote ...
ezek nem:
FAIRY_TAIL`transmission-remote...
NARUTO`transmission-remote
szerk: és szokjunk le a fordított aposztrófról, mert deprecated. $( ) a helyes szerkezet.
[ Szerkesztve ]
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis