Portál AbcLinuxu, 14. května 2025 02:08
ps aux | kdedma spravny vystup, napr.
blizzard 4863 0.0 0.0 10520 924 pts/2 S+ 23:02 0:00 grep --color=auto kded. Na 1 PC vsak po pridani dalsieho
grep
, napr. prikazom
ps aux | grep kded | grep kdeinit
je vystup prazdny, na druhom spravny.
Nie som (zatial? :) ) tak hlboko v Linuxovych systemoch, aby som vedel, kde vobec zacat tento problem riesit. Dotazy do sudruha Gooogela v style "double pipe not working" apod. nenasli asi nic relevantne, resp. nepodarilo sa mi najst podobny problem, preto prosim o pomoc tu.
ps aux
prostě není.
Pokud má obsahovat buď "kded" nebo "kdeinit", pak můžeš zkusit
ps aux |grep -E "kded|kdeinit"
ps aux | grep k[d]eda problém, který neexistuje, nebude ani vidět.
kded4
asi tak 1x za den (s KDE iny vaznejsi problem nemam).
Tentokrat sa mi vsak zjavne kded4
niekedy spusti bez kdeinit4
(co uplne nechapem) a z toho vznikla tato situacia, problem je teda vyrieseny (prinajhorsom login-logoff) alebo vobec neexistuje :)
Dakujem za odpovede, cosi som sa znova naucil.
ps
(prohledáváš procesy), můžeš a často zachytíš sám sem tedy ten proces, kterým prohledáváš.
Pokud nahradíš:
ps -ef | grep nejakytextza
ps -ef | grep n[e]jakytexttak už si nezachytíš sám sebe, protože hranaté závorky znamenají výčet povolených znaků a pokud je mezi nimi jen jeden znak, tak je to pro grep jako by tam nebyly, ale v procesech jsou vidět i ty závorky, což neodpovídá hledanému textu, takže najdeš opravdu jen to co jsi hledal a ne sám sebe.
Místo podobných triků bych spíš doporučil
ps -fC name
protože na rozdíl od grepování výstupu udělá to, co tazatel (s největší pravděpodobností) opravdu chce. Tedy najde instance určitého programu, ne všechno, co má name jako substring jména nebo parametru.
ps -ef | grep -e 'socket://192\.168\.[0-9]\{1,3\}\.[0-9]\{1,3\}:9100' | sed …
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.