Hirdetés

2024. április 20., szombat

Gyorskeresés

Hozzászólások

(#2151) spammer válasza vargalex (#2150) üzenetére


spammer
veterán

Erőforrás szempontjából valóban nem számít ennél a példánál, de ettől még jobb, ha a megfelelőbb/hatékonyabb módszert tanulja meg (hiszen most tanulja), elkerülve a felesleges lépéseket.

„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."

(#2152) vargalex válasza spammer (#2151) üzenetére


vargalex
félisten

Ez igaz. Viszont az is lehet, hogy ő konkrétan a file tartalmát akarja módosítani (és nem kiíratni a módosított változatot), akkor pedig már ezt tanulja meg :) :

sed -i 's/\b19\([0-9]\{2\}\)\b/20\1/g' a

ahol a végén szereplő "a" természetesen a file neve, amit a példájából néztem.

Alex

(#2153) spammer válasza vargalex (#2152) üzenetére


spammer
veterán

Így van, a -i nagy jóság. :)

„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."

(#2154) beloadjoker


beloadjoker
őstag

Köszönöm szépen a sok hsz.-t átnyálazom őket! :)

:R

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

(#2155) dabadab válasza spammer (#2151) üzenetére


dabadab
titán

A megfelelő módszer a pipe-olás. Erőforrás szempontjából majdnem teljesen mindegy, viszont a kód átláthatóbb és modulárisabb.
(Persze az "attól függ" mindig ott van, de az esetek nagy részében így van.)

[ Szerkesztve ]

DRM is theft

(#2156) spammer válasza dabadab (#2155) üzenetére


spammer
veterán

Mitől átláthatóbb és modulárisabb? Van bármi gyakorlati haszna, előnye annak, hogy cat-ból pipe-olod?

„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."

(#2157) dabadab válasza spammer (#2156) üzenetére


dabadab
titán

A tapasztalat azt mutatja, hogy ezek a pipe-ok a valós életben gyakran módosulnak, bővülnek, stb.
Ha bármit módosítani kell rajta, vagy egy részét kell tesztelni, stb, akkor mindig sokkal egyszerűbb az, ha magukhoz a parancsokhoz nem kell hozzányúlni, hanem simán lehet toldani-vágni.

DRM is theft

(#2158) vargalex válasza spammer (#2156) üzenetére


vargalex
félisten

Annyi, hogy a cat-et bármikor lecserélheted másra, a sed-et változatlanul hagyhatod. Így pl. echo-ra, nc-re, de bármilyen parancsra, aminek a kimenetét akarod feldolgozni.
Persze ebben a konkrét esetben mindegy, de valóban úgy általánosabb.

Alex

(#2159) Fecogame


Fecogame
veterán

Van egy user, aminek a nevébe szeretnék átjelentkezni a shell scriptem futtatásakor. Hogyan tudom ezt megtenni?

su - username

Idáig oké, de a hozzá tartozó jelszót hogyan iratom be vele?

Lassú a mobilinterneted? 4G/LTE antennák, közvetlenül raktárról ---> http://bit.ly/LTE_Antennak

(#2160) BoB válasza Fecogame (#2159) üzenetére


BoB
veterán

Sehogy.

su - <felhasználó> -c "
<parancs1>
<parancs2>
<parancsx>
"

[ Szerkesztve ]

You may corrupt the souls of men, but I am steel. I am doom.

(#2161) Rimuru válasza Fecogame (#2159) üzenetére


Rimuru
veterán

Ha benne van a scirpten ez a sor akkor bekeri a jelszot es atjelentkezik, szoval nincs itt gond, majd ha kileptel onnan akkor fut tovabb a script. ;]
De gondolom az kell amit bob irt, csak nem jol fogalmaztad meg a kerdest.
Amugy nagyon csunya es nem biztosansog megoldas (ne is hasznald csak megmutatom), de siman athadhatod neki a jelszot is.
echo "passwrod" | su - user
Ha ilyesmit szeretnel akkor inkabb sudo-t hasznalnam normalisan bekonfolva.

Vigyázat, csalok!

(#2162) vargalex válasza Fecogame (#2159) üzenetére


vargalex
félisten

Csak bizonyos parancsokat szeretnél a nevében futtatni, vagy másról van szó? Mert előbbi esetben sudo-val (és megfelelő sudoers bejegyzéssel) megoldható.

Alex

(#2163) bambano válasza Fecogame (#2159) üzenetére


bambano
titán
LOGOUT blog

felrakod az ssh kulcsodat hozzá és ssh masikuser@localhost scriptnév.

Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis

(#2164) Fecogame


Fecogame
veterán

Köszönöm a válaszokat!

bob.zxr: Ez esetben nem kérne jelszót? Gyanítom, hogy de :)

colomb2: Próbáltam, ezt a hibát kaptam:

standard in must be a tty

vargalex: Olyan szerverről van szó, ahol nem vagyok root és nincs is jogom szerkeszteni a sudoers fájlt. Csak az adott user jelszavát tudom, akinek a nevében a parancsokat kellene futtatni.

bambano: Pontosabban mire gondoltál? :)

[ Szerkesztve ]

Lassú a mobilinterneted? 4G/LTE antennák, közvetlenül raktárról ---> http://bit.ly/LTE_Antennak

(#2165) makro válasza Fecogame (#2164) üzenetére


makro
aktív tag

Esetleg expect? :U

(#2166) BoB válasza Fecogame (#2164) üzenetére


BoB
veterán

Ha root joggal inditod nem ker :)

Mond meg az illetonek hogy futtassa maganak ha akarja :D

[ Szerkesztve ]

You may corrupt the souls of men, but I am steel. I am doom.

(#2167) Geripapa


Geripapa
aktív tag

Hasonlóval küzdök én is.

Rasbian alatt rootal futtatok egy skriptet aminek meg kellene hivnia egy másik skriptet amit nem kellene hogy a root futason.

[Itt irok rola bövebben

Rátudnátok nézni hogy hogy kellene inkább csinálni?

Segítségkéréshez: NSA320+FFP; Raspberry Pi2 Openelec/Kodi ;

(#2168) bambano válasza Geripapa (#2167) üzenetére


bambano
titán
LOGOUT blog

el kellene dönteni, hogy angolul vagy magyarul beszélsz. ha magyarul, akkor szkript. ha angolul, akkor script.
felhasználó váltásra a su parancs való. a sudo betegséget ki kellene kezelni végre.

tehát vagy
su - -c szkriptnev usernev
vagy
su - usernev szkriptnev

Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis

(#2169) Fecogame válasza Fecogame (#2159) üzenetére


Fecogame
veterán

Közben megoldottam kicsit másképp. Saját gépemről futtatom a scriptet, a jelszót pedig AutoHotKey nevű programmal iratom be :)

Lassú a mobilinterneted? 4G/LTE antennák, közvetlenül raktárról ---> http://bit.ly/LTE_Antennak

(#2170) Geripapa válasza bambano (#2168) üzenetére


Geripapa
aktív tag

Működik, köszönöm!

Segítségkéréshez: NSA320+FFP; Raspberry Pi2 Openelec/Kodi ;

(#2171) DrojDtroll


DrojDtroll
addikt

Ebből a kimenetből kellene egy ip cím. Egy előre meghatározott mac címhez tartozó ip kellene.

Hogyan lehet ezt a legkönnyebben megoldani?

arp-scan -q --interface=wlp2s0 --localnet
Interface: wlp2s0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.8.1 with 512 hosts (http://www.nta-monitor.com/tools/arp-scan/)
192.168.204.1 00:27:19:b3:e4:06
192.168.204.22 20:1a:06:d2:1d:03
192.168.204.38 1c:6f:65:30:ba:72
192.168.204.89 00:15:65:8b:77:ad
192.168.204.124 00:15:65:8b:77:5e
192.168.204.132 00:15:65:8b:77:27
192.168.204.146 00:13:95:16:65:82
192.168.204.249 90:2b:34:74:3a:37
192.168.205.50 00:18:f3:09:e1:f6
192.168.205.137 20:1a:06:d2:1d:03
192.168.205.148 64:66:b3:a1:92:89
192.168.205.165 d0:50:99:26:c4:9b
192.168.205.168 44:d9:e7:74:97:8c
192.168.205.239 00:15:65:8b:76:dd
192.168.205.248 00:08:9b:e3:c3:01

15 packets received by filter, 0 packets dropped by kernel
Ending arp-scan 1.8.1: 512 hosts scanned in 2.212 seconds (231.46 hosts/sec). 15 responded

(#2172) bambano válasza DrojDtroll (#2171) üzenetére


bambano
titán
LOGOUT blog

arpscan ... | grep "${mac}\$" | cut -f 1 -d\<szóköz>

Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis

(#2173) Jester01 válasza DrojDtroll (#2171) üzenetére


Jester01
veterán

Vagy arping (persze a kibányászást nem úszod meg, de nem kell mindenkit végigpingelni)

[ Szerkesztve ]

Jester

(#2174) spammer válasza DrojDtroll (#2171) üzenetére


spammer
veterán

arp-scan -q --interface=wlp2s0 --localnet | awk '/mac cím/{print $1}'

?

„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."

(#2175) DrojDtroll válasza Jester01 (#2173) üzenetére


DrojDtroll
addikt

Most akkor melyik pinggel végig mindent?

(#2176) Jester01 válasza DrojDtroll (#2175) üzenetére


Jester01
veterán

A tiéd, hiszen látod a halom eredményt. Meg a neve is scan. Az arping meg pontosan azt az egyet fogja amit megadsz neki. Hogy ez érdekel-e téged azt nem tudom :N

[ Szerkesztve ]

Jester

(#2177) DrojDtroll válasza Jester01 (#2176) üzenetére


DrojDtroll
addikt

Akkor az arping lesz a befutó. Mert az nem dolgozik feleslegesen.

(#2178) Fecogame


Fecogame
veterán

Lehet olyan shell scriptet írni, hogy megvizsgálja a legutóbb kiadott parancs kimenetét, és ha adott szöveg van benne, akkor továbbengedi, míg ha nincs benne, akkor megáll / kiír egy szöveget?

Ha igen, hogyan? Milyen kulcsszavakra kellene keresnem? :)

Lassú a mobilinterneted? 4G/LTE antennák, közvetlenül raktárról ---> http://bit.ly/LTE_Antennak

(#2179) dabadab válasza Fecogame (#2178) üzenetére


dabadab
titán

Persze, ez tök alap shellscriptes működés.

A pipe az, amivel egyik parancs kimenetét a másikébe irányítod, de kb. valami ilyesmi kell neked (az "echo hello" az a parancs, amit lefuttatsz, a grep utáni hello meg az, amit keresel):

if [ -z "$(echo hello | grep hello)" ] ; then
echo nincs benne
exit 1
else
echo benne van
fi

DRM is theft

(#2180) Jester01 válasza dabadab (#2179) üzenetére


Jester01
veterán

Vagy
if echo hello | grep -q hello

Attól függően, hogy a vizsgálni kívánt parancs kimenetével mit is kell kezdeni.

[ Szerkesztve ]

Jester

(#2181) prucam


prucam
tag

Sziasztok,

az awk-hoz kérnék segtséget.Ezt kellene tovább bonyolítani:

awk 'NR==1 {print $0}' file

Az első sorban az összes mezőt mutatja.

PL.
egy ketto harom negy ot

Nekem az is kellene, hogy x.-ik mezőben mi van.

Ezt szeretném:

1 egy
2 ketto
3 harom
4 negy
5 ot

(#2182) Jester01 válasza prucam (#2181) üzenetére


Jester01
veterán

bash megoldás:

read -a fields
for((i=0;i<${#fields[*]};i+=1))
do
echo $((i+1)) ${fields[i]}
done

Jester

(#2183) bambano válasza prucam (#2181) üzenetére


bambano
titán
LOGOUT blog

emlékeim szerint az awk az NF változóba teszi bele, hogy hány mezőre bontotta a sort, így egy ciklussal bármelyiket ki tudod iratni vagy hozzá lehet férni. [link]

[ Szerkesztve ]

Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis

(#2184) Headless válasza prucam (#2181) üzenetére


Headless
őstag

Szimplán $0 helyett $1,$2,$3 stb-ket használsz, persze a field separator nem mindegy, hogy ; szóköz vagy mi. Pl

Fájl:
11;12;13;14
21;22;23;24

awk -F";" '{print $3}' path
13
23

Persze a field separatort magában az awk-ban is tudod változtatni az FS változóként ahogy a kimeneti elválasztót is az OFS-t.

LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/

(#2185) prucam


prucam
tag

Jester

itt a script:

#!/bin/bash
b=abc
read -a fields $b
for((i=0;i<${#fields[*]};i+=1))
do
echo $((i+1)) ${fields}
done

az abc file-ben:
egy ketto harom negy ot

Mit csináltam rosszul? Nekem nem csinál semmit a script.

___________________________________________________________________

bambano

Megnyitottam az oldalt, de ez én szerény angol tudásommal nem sokra juttotam…
___________________________________________________________________

Headless

nekem nem az x.mező ({print $3}), hanem az összes kell, s azt szeretném tudni hogy melyikben mi van.

Közben eszembe jutott egy másik lehetőség (ha más nem lesz akkor megpróbáljuk azt), de az "awk"-ás tetszik.

Köszi mindenkinek az eddigi segtíséget.

(#2186) Jester01 válasza prucam (#2185) üzenetére


Jester01
veterán

read -a fields < "$b"

Jester

(#2187) Fecogame


Fecogame
veterán

Van egy szerver, amin szeretnék crontabbal futtatni egy shell scriptet egy adott userrel. Azonban nem megy.

Ha a scriptet önmagában lefuttatom ( ./ezazascript.sh ), akkor sikeresen lefut.
Ha beírom crontabba, akkor nem fut le.
Viszont ha ugyanebbe a crontabba beírok pl. egy touch-ot, akkor az lefut.

Ilyen jogai vannak a scriptnek, ez elég?

-rwxr-x--- 1 user group 318 Aug 18 10:35 ezazascript.sh

Mi lehet a gond?

[ Szerkesztve ]

Lassú a mobilinterneted? 4G/LTE antennák, közvetlenül raktárról ---> http://bit.ly/LTE_Antennak

(#2188) Geripapa válasza Fecogame (#2187) üzenetére


Geripapa
aktív tag

Hogy van beirva a crontabba?

Segítségkéréshez: NSA320+FFP; Raspberry Pi2 Openelec/Kodi ;

(#2189) Fecogame válasza Geripapa (#2188) üzenetére


Fecogame
veterán

36 11 * * * /tmp/ezazascript.sh

Lassú a mobilinterneted? 4G/LTE antennák, közvetlenül raktárról ---> http://bit.ly/LTE_Antennak

(#2190) Fecogame válasza Fecogame (#2189) üzenetére


Fecogame
veterán

Közben rájöttem... A mailban láttam logot róla, hogy lefutott, csak maga a script nem volt jól megírva. Azt pedig már megoldom :)

Köszönöm a segítséget :)

Lassú a mobilinterneted? 4G/LTE antennák, közvetlenül raktárról ---> http://bit.ly/LTE_Antennak

(#2191) prucam válasza Jester01 (#2186) üzenetére


prucam
tag

# ./awk
1 egy
2 ketto
3 harom
4 negy
5 ot

Köszi!!! :C

(#2192) Headless válasza prucam (#2191) üzenetére


Headless
őstag

Szerintem részletesebb leírást kéne írnod, hogy milyen végcélt akarsz pontosan (milyen forrásból), de amúgy, amit bambano írt az így néz ki.

awk 'NR==1{for(i=1;i<=NF;i++){if($i=="Egy")print $i}}'

átláthatóbban...

awk 'NR==1{
for(i=1;i<=NF;i++)
{
if($i=="Egy") print $i
}
}'

[ Szerkesztve ]

LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/

(#2193) prucam válasza Headless (#2192) üzenetére


prucam
tag

Rendben. Egy kis magyarázat. Elnézést kérek.

Weblapokból, *txt-ékből, file-kből stb. szoktam az awk-val infót gyűjteni, főleg mondatkból. Néha olyan hosszúak a sorok (v. mondatok), hogy nincs kedvem "totozni" az awk-val, hogy most mezőben (mezőkben) van az info.
Ezért gondoltam arra, hátha van az awk-nak olyan funkciója, hogy mutassa meg melyik hányadik mezőben mi van.

Saját egyszerű mondat pl.:

egy ketto harom negy ot

Végeredmény ez legyen:

1 egy
2 ketto
3 harom
4 negy
5 ot

[egyszeru read]

A "read"-es megoldás jó nekem. Persze az adott sort nekem kell bemásolni a file-be. De mindig jobb mintha nekem kell számolgatni.

Az awk-nál meg van "NR==x" is, csak az adott sor számát kell "kitalálni":

Ennyi a magyarázat. Most érthetőbb?

[ Szerkesztve ]

(#2194) Jester01 válasza prucam (#2193) üzenetére


Jester01
veterán

Nyilván a shell script is meg tudná számolni a sorokat. Mivel mindenhol csak első sorról beszéltél így nem tudtuk, hogy az is igény :U

Jester

(#2195) bambano válasza prucam (#2193) üzenetére


bambano
titán
LOGOUT blog

az awk a beolvasott sort a mezőelválasztó jeleknél szavakra tördeli és belerakja a $1,$2,... tömbbe.
mire van még szükséged?

Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis

(#2196) prucam válasza bambano (#2195) üzenetére


prucam
tag

"Nyilván a shell script is meg tudná számolni a sorokat. Mivel mindenhol csak első sorról beszéltél így nem tudtuk, hogy az is igény"

Az awk-nak nem kell a sort számolni!!!. Egyszerűbb ha bemásolom az adott sort egy üres file-be, azért NR==1.

1 az
2 awk
3 a
4 beolvasott
5 sort
6 a
7 mezőelválasztó
8 jeleknél
9 szavakra
10 tördeli
11 és
12 belerakja
13 a
14 $1,$2,...
15 tömbbe.
16 mire
17 van
18 még
19 szükséged?

Hogy ezt csinálja az awk, mutassa a "tömböket". Másképp már nem tudom leírni. :F

[ Szerkesztve ]

(#2197) bambano válasza prucam (#2196) üzenetére


bambano
titán
LOGOUT blog

amit ide bemásoltál, az most a kérdés, a válasz, vagy micsoda?
mit hablatyolsz itt?

az, hogy kiírja a mező sorszámát és a benne levő sort, már megválaszolták neked vagy háromszor.
nem értem, mi a kérdés még?

Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis

(#2198) Keeperv85


Keeperv85
nagyúr

Sziasztok!

kicsit (na jó nagyon... :B) elakadtam...

Android lokalizálás mellé szeretnék valami kis segéd scriptet létrehozni.

Van már egy ilyenem:

for i in *.apk; do echo $i; apktool d -s $i; done;

Ez szépen kibontja az apk fájlokat a nevüknek megfelelő mappába, kivétel nélkül.

Most azt szeretném, hogy ez után (az apk fájlok törlése nem gond nyilván) a kész mappákból csak az

apk_neve/res/values/

...mappa maradjon meg. Ezekben van a szöveg ugye, ezekhez diffelem majd a frissítését, a többi tartalom érdektelen számomra most.

(#2199) Jester01 válasza Keeperv85 (#2198) üzenetére


Jester01
veterán

Nem teljesen egyértelmű mit akarsz de kiindulási alapnak valami ilyesmi:

find . -mindepth 2 -maxdepth 2 -type d \! -path /res/values/ -delete

Jester

(#2200) Keeperv85 válasza Jester01 (#2199) üzenetére


Keeperv85
nagyúr

Ez így azért nem jó, mert a könyvtárak nem üresek. 3 fájl után így néz ki a tree:

├── agnes_service
│   ├── AndroidManifest.xml
│   ├── apktool.yml
│   ├── classes.dex
│   ├── original
│   │   ├── AndroidManifest.xml
│   │   └── META-INF
│   │   ├── CERT.RSA
│   │   ├── CERT.SF
│   │   └── MANIFEST.MF
│   ├── res
│   │   ├── drawable-hdpi-v4
│   │   │   └── ic_launcher.png
│   │   ├── drawable-ldpi-v4
│   │   │   └── ic_launcher.png
│   │   ├── drawable-mdpi-v4
│   │   │   └── ic_launcher.png
│   │   ├── drawable-xhdpi-v4
│   │   │   └── ic_launcher.png
│   │   ├── layout
│   │   │   └── main.xml
│   │   └── values
│   │   ├── public.xml
│   │   └── strings.xml
│   └── unknown
│   ├── AUTHORS
│   ├── changelog.txt
│   ├── com
│   │   └── letv
│   │   └── agnes
│   │   └── core
│   │   └── agnes.properties
│   ├── LICENSE
│   ├── lombok
│   │   └── installer
│   │   ├── eclipse
│   │   │   ├── eclipse.png
│   │   │   ├── jbds.png
│   │   │   └── STS.png
│   │   ├── loading.gif
│   │   ├── lombokIcon.png
│   │   ├── lombok.png
│   │   ├── lombok.svg
│   │   ├── lombokText.png
│   │   ├── lombokText.svg
│   │   ├── WindowsDriveInfo-i386.dll
│   │   └── WindowsDriveInfo-x86_64.dll
│   └── release-timestamp.txt
├── AntHalService
│   ├── AndroidManifest.xml
│   ├── apktool.yml
│   ├── original
│   │   ├── AndroidManifest.xml
│   │   └── META-INF
│   │   ├── CERT.RSA
│   │   ├── CERT.SF
│   │   └── MANIFEST.MF
│   └── res
│   ├── drawable
│   │   └── icon.png
│   └── values
│   ├── public.xml
│   └── strings.xml
└── ApplicationsProvider
├── AndroidManifest.xml
├── apktool.yml
├── original
│   ├── AndroidManifest.xml
│   └── META-INF
│   ├── CERT.RSA
│   ├── CERT.SF
│   └── MANIFEST.MF
└── res
├── drawable
│   └── default_app_icon.png
├── drawable-mdpi-v4
│   └── default_app_icon.png
├── layout
│   └── application_list_item.xml
├── values
│   ├── ids.xml
│   ├── public.xml
│   └── strings.xml
├── values-en-rUS
│   └── strings.xml
├── values-hu
│   └── strings.xml
├── values-zh-rCN
│   └── strings.xml
├── values-zh-rHK
│   └── strings.xml
├── values-zh-rTW
│   └── strings.xml
└── xml
└── searchable.xml

Nekem csak a fökönyvtár/res/values/fájlok tartalom kell megmaradjon, de a főkönyvtárakkal együtt. A többit szanálnám, hogy a meld pl. ne olvassa össze a másik ilyen fával. Ott vannak a strings.xml-ek, azoknak a frissítéseit kéne elvégezzem most csak.

[ Szerkesztve ]

Copyright © 2000-2024 PROHARDVER Informatikai Kft.