Linux Commands

Inhalt

Problem

Anwendung diverser Linux Commands.

top

Analyse

top

Loesung

vim

 
" ~/.vimrc
hi CursorLine   cterm=NONE ctermbg=darkred ctermfg=white guibg=darkred guifg=white
" highlight current line
map <F9> :set cursorline!<CR>
imap <F9> <ESC>:set cursorline!<CR>
""""""""""""""""""""""""""""""""""""

:vsplit <file>  #  vertikal split, zweites file oeffnen
ctlr-w/ctrl-w  # zwische fenstern wechseln
ctr-w =        # fenster gleich gross

# ersetzen im vim
gUU ; ganze zeile in uppercase
guu ; ganze zeile in lowercase
gUiw # wort in uppercase
guiw # wort in lowercase
: %s/[[:space:]]/\r/g           ; leerzeichen durch <return> ersetzen
: 0,$s/string/string2/g
: 0,$s/string/\U&/g             string in Uppercase wandeln
: %s/^\([A-Z]\{3\}\)\(.*\)/\1/g  ; jede zeile wird mit dem Inhalt des 1. Suchmusters ersetzt

:%s/\([0-9][0-9].dbf\)/_&/g
replaces the numbers yy.dbf with _yy.dbf

:%s/PERMANENT;$/PERMANENT\r    SEGMENT SPACE MANAGEMENT AUTO\r;/g
replaces
PERMANENT;<CR> with
PERMANENT<CR>
    SEGMENT SPACE MANAGEMENT AUTO<CR>
;

:%s/\(CM_.*[0-9][0-9].DBF\)/\L&/g
replaces all strings beginning with CM_ and ending with yy.DBF by it
lowercase representation
#
:g/^$/d

# Leerzeilen loeschen
:%s#\s\+$##

# leerzeichen am zeilenende entfernen \s = space  \+ >=1 vorkommen
#
:1,$s/<C-V><C-M>//<return>
^M entfernen
#
:%!sort
zeilen sortieren
suchen nach einer 6-stelligen Zahl, die 1. != 0
?c=[^0][0-9][0-9][0-9][0-9][0-9]
?c=[^0][0-9]\{5\}
/,e=[^0][0-9][0-9][0-9][0-9][0-9][0-9]
/,e=[^0][0-9]\{,6\}
/,e=[^0][0-9]\{6\}
/,e=[^0][0-9]\{6,\}

# mit \( \) das pattern merken und dann als \1 \2 ... benutzen
# suche string ausser ':' bis : -> \1
# suche string ausser ':' bis : -> \2
:%s/\([^:]*\):\([^:]\):/A: \1  B: \2/g

# einzelne Worte bz String hervorheben
:hi Elapsed term=bold cterfg=red gui=bold guifg=red
:mat Elapsed /,e=[0-9]*\|ela= [0-9]*/

iostat

 
iostat -mx 5 | grep -E "dm\-50|Dev"
iostat -mx 5 | grep -E "Device:|sd[abcdef]"

iostat -mx 5 | grep -E "dm\-7|Dev"
iostat -mx | grep -E "Dev" ; iostat -mx 5 | grep -E "dm\-9"
iostat mx | grep Dev ; iostat -mx 5 | grep -E "dm-[234]"

systemctl

 
systemctl get-default
systemctl set-default multi-user.target
systemctl set-default graphical.target
systemctl list-unit-files --type=target

systemctl
systemctl list-units
systemctl list-units --all --state=inactive
systemctl restart network
systemctl is-active ...
systemctl is-enabled ...

systemctl status ...
systemctl start ...
systemctl stop ...
systemctl enable ...
systemctl disable ...

systemctl reboot
systemctl halt
systemctl rescue

iproute2

 
ip addr show
ip addr show dev enp0s8
ip addr add 192.168.58.123/24 dev enp0s8
ip addr add 192.168.58.123/24 dev enp0s8 label enp0s8:1

ip link set dev enp0s8 down
ip link set dev enp0s8 up

ip route show

sed stream editor

 
# text einfuegen/insert, wichtig ist der \ nach dem i
cat <<EOF > t.sed
/-Djava.net.preferIPv4Stack=true/ {
  i \\
-Dsyrius.WebserviceEndpointConfig=file:/opt/user_projects/applications/syrius/\$SERVER_NAME/wls_config/jee_EndpointConfig.xml \\\\
 }
EOF

# Statt einem / kann ein beliebiges Zeichen verwendet werden, um das Such Pattern abzugrenzen.
cat <<EOF_ > t.sed
s+<SID>+ORCL1+g
s+<HOST>+oel21+g
s+<DOMAIN>+dammeyer.local+g
EOF_

sed -f t.sed test

sed '//d' ${V_FILE:?Wert?}
sed -ibak -e 's/c4ApplicationServer/c4OutputServer/' Server/mffoox.pro
sed -ibak -e 's/c4ApplicationServer/c4OutputServer/' Server/mffpdf.pro
sed -ibak -e 's/t00sm2/t00sdw/'  inst_env
sed -ibak -e 's/faGuM2r7pA/**********/'  zzz02f_add_objects*
sed -e 's#-Dsyrius.migration.boidfactory=syrius.modul_bl.migration.common.util.MigrationBOIdFactory##g' # string loeschen
tssyr03501

for datei in $(ls config_tssyr025??/.inst_env); do
  ls -l $datei
  sed -ibak -e 's/t00sdw/T00SDW/g' $datei # $dateibak file anschliessend loeschen
done

for datei in $( ls tssyr025[01][0-9] ); do
  ls -l $datei
  sed -ibak -e 's/2048/8192/g' $datei # $dateibak file anschliessend loeschen
done

find

 
find /opt/domains -type f -a -name \*.log -exec dirname {} \; | sort | uniq
# logfile der RMAN Sicherungen
find /9i01/app/oracle -name nsr\*.log -ls

# Dateien finden die nicht neuer sind als bestimmtes File
touch -t 1701301700 test_bis
find . -name \*.arc ! -newer test_bis
find . -name \*.arc ! -newer test_bis -print0 | xargs -0 ls -l

find . -name \*.arc \( -newer <file1> -a ! -newer <file2> \) -ls


# files mit uid 7113 finden ;
find / -path '/proc' -prune -o -uid 7113 -ls

find . -name '*xml' | while read file; do  grep -l -i farm_ ${file}; done;

top

Fazit

top

Referenzen

top