- Alacsony profilú, madzagmentes klaviatúrák jöttek a Razer színeiben
- ASUS ROG csúcslap érkezett, ezúttal a "lopakodó" fajtából
- Átvette a DRAM-piac trónját az SK Hynix a Samsungtól
- Pénztárcabarát, ugyanakkor trendi mikrotorony jött a Jonsbótól
- A Linux támogatását vágja meg leginkább az Intel leépítése
- CPU léghűtés kibeszélő
- iPad topik
- Autós kamerák
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- VR topik (Oculus Rift, stb.)
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Soundbar, soundplate, hangprojektor
- Milyen billentyűzetet vegyek?
- Androidos tablet topic
-
PROHARDVER!
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
Hirdetés
- ÁRGARANCIA!Épített KomPhone i5 13400F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! Apple iPhone 16, Apple iPhone 16e, Apple iPhone 16 Plus, Apple iPhone 16 Pro
- BESZÁMÍTÁS! Asus B450 R7 2700X 16GB DDR4 512GB SSD RTX 2070 8GB Rampage SHIVA Thermaltake 500W
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- AZONNALI SZÁLLÍTÁSSAL Eladó Windows 8 / 8.1 Pro
Állásajánlatok
Cég: FOTC
Város: Budapest