Portál AbcLinuxu, 2. května 2025 07:18

Jak v Bashi získat z výstupu jen potřebné?

Jak ve výstupu nahradit mezery novými řádky

$ echo "První, druhý, další ..."
První, druhý, další ...

$ echo "První, druhý, další ..." | sed "s/ /\n/g"
První,
druhý,
další
...
Samozřejmě by to šlo i pomocí parametru -e u echa a místo mezer psát rovnou \n, ale je to jen příklad. Tady je lepší:
$ dmesg | grep -i ext3 | head -n 2
EXT3-fs: INFO: recovery required on readonly filesystem.
EXT3-fs: write access will be enabled during recovery.

$ echo `dmesg | grep -i ext3 | head -n 2`
EXT3-fs: INFO: recovery required on readonly filesystem. EXT3-fs: write access will be enabled during recovery.

Odkazy

$ cat example
Bla bla http://www.kom/ ham
  ftp://ftp.woops.ext/ &&  

$ grep tp:// example | sed "s/ /\n/g" | grep tp://
http://www.kom/
ftp://ftp.woops.ext/
... a v HTML ...
$ sed -n 's/.*href="\([^"]\+\).*/\1/gp' /var/www/localhost/htdocs/dev/web/uvod.html
/omne
http://www.gentoo.org/
/guest

$ echo '<a href="http://foo.bar/">FooBar</a>' | sed -n 's/.*href="\([^"]\+\).*/\1/gp'
http://foo.bar/

Zakomentované řádky

$ grep CONSOLE /usr/src/linux/.config
# CONFIG_NETCONSOLE is not set
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_SERIAL_8250_CONSOLE is not set
# CONFIG_LP_CONSOLE is not set
CONFIG_VGA_CONSOLE=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y

$ grep CONSOLE /usr/src/linux/.config | grep ^#
# CONFIG_NETCONSOLE is not set
# CONFIG_SERIAL_8250_CONSOLE is not set
# CONFIG_LP_CONSOLE is not set

$ grep CONSOLE /usr/src/linux/.config | grep -v ^#
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_VGA_CONSOLE=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y

Jak odstranit prázdné řádky

$ tail /etc/X11/xorg.conf
# "SendCoreEvents".

    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"

EndSection

### EOF ###

$ tail /etc/X11/xorg.conf | grep -v ^$
# "SendCoreEvents".
    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"
EndSection
### EOF ###
Z konfiguračního souboru dostaneme jen podstatné takto
$ grep -v ^# /etc/conf.d/net | grep -v ^$
config_eth1=( "10.27.142.13 broadcast 10.27.142.255 netmask 255.255.255.0" )
gateway="eth1/10.27.142.1"

Související dokumenty

Dotaz v diskusi (diskuse)
Další dotaz v diskusi (diskuse)

Dokument vytvořil: David Watzke, 2.1.2006 00:51 | Poslední úprava: David Watzke, 14.1.2006 01:10 | Další přispěvatelé: Käyttäjä 11133 | Historie změn | Zobrazeno: 1107×

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.