Hirdetés
- Google Pixel topik
- Apple Watch Sport - ez is csak egy okosóra
- iPhone topik
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Xiaomi 14T Pro - teljes a család?
- Xiaomi 15 - kicsi telefon nagy energiával
- Amazfit Bip 6 - jót olcsón
- Android alkalmazások - szoftver kibeszélő topik
- Samsung Galaxy Watch6 Classic - tekerd!
- Vivo X200 Pro - a kétszázát!
-
Mobilarena
Mára a ProHardver!/IT.News Fórum is nagylétszámú Linuxban jártas taggal büszkélkedhet. Nehéz szinteket felállítani egy olyan rendszer ismeretében, ami annyira sokrétű, hogy teljesen szinte lehetetlen megismerni minden egyes részét. Azt azonban mindenki tudja, hogy kezdő-e vagy sem. Elsősorban nekik szólnak az alábbiak, de érdemes mindenkinek elolvasnia, mint útjelző táblát.
Új hozzászólás Aktív témák
-
Mahesa
tag
válasz
htibi20
#11016
üzenetére
#!/bin/bash
[ -n "$1" ] 2>/dev/null && felhasznalo="$1" || felhasznalo="$USER"
awk -v user="$felhasznalo" 'BEGIN {FS=":"} {if ($1==user || $4==user) {print $1}}' | tr -t "\n" " "
echo
Először megnézi, hogy adsz-e meg felhasználót a parancs után - ha nem, akkor az aktuális felhasználót nézi.
Az awk-nak átadod a $felhasznalo változót, mert az awk programon belül nem lehetne erre hivatkozni. Aztán, ha a group fájl első vagy negyedik mezője megegyezik a user nevével, akkor kiírjuk az első mezőt, mely a csoport nevét tartalmazza.
Ez sztem jó. És ne felejts el végrehajtási jogot is adni a fájlnak chmod +x -el.
-
-
Mahesa
tag
válasz
htibi20
#11008
üzenetére
nah igen, a shell szkriptek a shebang sorral kezdődnek:
#!/bin/bashutána meg jön a többi

grep $USER /etc/group | cut -d ":" -f1 | tr -t "\n" " "
echoElőször grep-el kikeresed azokat a sorokat az /etc/group fájlból, melyek tartalmazzák az aktuális felhasználó nevét - a $USER változóban benne van a bejelentkezett felhasználó neve:
grep $USER /etc/groupEzt pipe-olod a cut parancshoz, aminél a -d után megadod a mezőelválasztót (a group fájlban az egyes mezőket kettőspont választja el egymástól - esetleg nézz bele a fájlba: more /etc/group - a -f1 pedig azt mondja meg, hogy az első mezőre vagyunk kíváncsiak. Nah, így már meg is vannak a csoportnevek, melynek tagja a felhasználó:
grep $USER /etc/group | cut -d ":" -f1Csak az a baj, hogy a groups parancs egy sorban adja ezt vissza, ezért lecseréljük tr-el az újsor karaktereket (\n) szóközre. Ez viszont kiírtja az utolsó újsor karaktert is, ami miatt a prompt ugyanabban sa sorban jönne vissza, mint az eredmény, ezért nyomunk még egy üres echo parancsot.
Próbáld ki lépésről-lépésre a gép előtt. Jah és nyilván van számos más megoldás is, pl. a cut helyett az awk, a tr helyett a sed, stb..........
-
Új hozzászólás Aktív témák
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- MacBook felváráslás!! MacBook, MacBook Air, MacBook Pro
- IKEA Format lámpák eladóak (Egyben kedvezménnyel vihető!)
- ÚJ MSI Katana 15 B13VFK - 15.6" QHD 165Hz - i5-13420H - 16GB - 512GB - RTX 4060 - Win11 - 3 év gari
- OnePlus Pad Green nagy kijelzős, pehelykönnyű tablet 128 GB Wi-Fi Használt, karcmentes 3
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi
nah mindjárt 


