Hasznos parancssori eszkozok

From berki WIKI
Revision as of 08:13, 26 March 2020 by Adam (talk | contribs)

Jump to: navigation, search

Midnight commander

Select all

Crtl + Shfit + (hármas gomb, amin a '+' van). Ekkor megjelenik egy pattern alapján választó. Ide ha '*'-ot írunk be, akkor kijelöli az összes fájlt.


Screenshot aktív menüről

Az a baj, hogy ha aktív egy felugró menü, akkor a PrtScrn gomb nem működik. Ekkor késleltetéssel parancssorból meg tudjuk hívni a gnome-screenshot programot, amia PtrScrn gomb megnyomásakor is lefut. Meg lehet neki adni egy késleltetést, ami alatt meg tudjuk nyitni a kívánt menü elemet:

$ gnome-screenshot -d 5

A végeredmény a felhasználó Images mappájába fog kerülni.

Flash plugin

Az adobe-nak van egy saját repozitorija Fedora-hoz:

# dnf install http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm

# dnf install flash-plugin

Indítsuk újra a firefox-ot. Telepítés után ne töröljük le a repót, mert állítólag rendszeresen jönnek hozzá frissítések a Windows-os verzióval párhuzamosan.

Tesztoldal: http://www.adobe.com/software/flash/about/

Zip/Unzip

A WinZip 9 -el (és újabb) készült ZIP eket a linuxos unzip nem tudja kitömöríteni, pláne ha azok jelszóval vannak védve. Ehhez a 7z-t kell feltelepíteni

# dnf install p7zip p7zip-plugins

Használata:

$ 7z file.zip

Hálózat

Port

Ki hallgatózik egy porton

# netstat -tulpn | grep :9998
tcp        0      0 0.0.0.0:9998                0.0.0.0:*                   LISTEN      13156/java

Elérhető a port

# nc -vz host.example.hu 8042

Média manipuláció

Kép átméretezés

$ mogrify -quality 70% *.jpg
$ mogrify -resize 80% *.JPG


Video forgatás és méretezés

$ ffmpeg -i in.mp4 -c copy -metadata:s:v:0 rotate=180 out.mp4
$ find . -name "*.mp4" -exec sh -c 'ffmpeg -i {} -filter:v scale=800:-1 -c:a copy {}_1.mp4' \;

Video konvertálás

$ mencoder Rust And Bone.2012.BRRip.x264-VLiS.mp4 -oac pcm -ovc copy -o Rust And Bone.2012.BRRip.x264-VLiS.avi

File/mappa manipuláció/keresés

Fájl/mappa dátumok

Részletes fájl létrehozási dátum:

ls -l --time-style=long-iso <filenév>


Mappa méret

# du -sh *


Interaktív fájl browser, ami kiírja a mappa méretét. Rendezni és törölni is lehet vele. Ráadásul alapból méret szerint rendezi. Zseniális!

# ncdu

Fájlok csoportos átnevezése

Az összes .bak fájlt átnevezi txt-re

$ rename .bak .txt *.bak

CD ROM mount

# mount /dev/sr0  /mnt

PDF

Dock konvertálása PDF-re

# libreoffice --headless --convert-to pdf *.doc

PDF átméretezés

# convert -density 120x120 -quality 60 -compress jpeg TSZ.pdf output.pdf

Keresés PDF-ben

A PDF-ek belsejében a pdftotext programmal keresünk. Ez a " poppler-utils" csomagban van.

$ find . -name '*.pdf' -exec echo {} \; -exec pdftotext {} - \; | grep "pattern\|pdf"

Azért kell a végére a pattern után a |pdf, hogy a fájlok nevét is kiírja a találat elé, hogy tudjuk, hogy hol találta meg a patternt. pl:

./CPFM-F2RCash-StockManagement-290816-1600-104_questionsByAdam.pdf

./F2RCash-Interfacedescriptions v06_by_adam.pdf
7. IOL Interface
7. IOL Interface
forwarded immediately to the Customer (IOL Channel).

The file to be sent is in pdf format:
: GCAE_DIFFPROT_<GRID-ID>_<parcel-ID>_<date-time>.pdf
: copy of the pdf in the AcceptProtocol sent by the CIT
: <Name of the pdf file> <GRID-ID of customer involved> separated by a space (multiple entries are

./F2RCash-GenericServices v0.5.pdf

Láthatjuk, hogy minden PDF fájlt kiír, amit megvizsgált, de és ott ahol a tartalomban megtalálta a pattern-t ott kiírta azt a sort, amiben volt egyezés.

Összes fájl rekurzív másolása egy közös mappába

Ha egy adott típusú fájlból az összeset össze szeretnénk rekurzívan gyűjteni, akkor:

find . -name \*.jar -exec cp {} /home/adam/Projects/ING/Programs/findbugs-3.0.1/extra_alecash_libs/ \;


Base64

Az echo parancs rárak a string végére egy fájl vége karaktert. Ha jelszót kell base64-esre kódolni, akkor fontos, hogy ezt levágjuk róla mielőtt meghívjuk a base64-es parancsot, különben ha a jelszót kezelő rendszerben nincs trim, nem fogja elfogadni.

echo "this is the text" | head --bytes=-1 | base64 > valami.txt



Alapértelmezetten 76 karakterenként új sort kezd. Ha egy sorba akarjuk kiírni a base64-et, akkor a -w (wrap) -el meg kell mondani milyen hosszú legyen a sor. 0 esetén nem töri meg a sort:

echo "this is the text" | base64 -w 0 > valami.txt


Magyar helyesírás ellenőrző

A helyesírást az aspell programmal fogjuk ellenőrizni. Telepítsük fel az aspell-t:

# dnf install aspell

Majd fel kell rakni az aspell magyar szótárát. Ez nincs benne a repóba, innen letölthető: ftp://ftp.gnu.org/gnu/aspell/dict/0index.html vagy innen: http://mirrors.ibiblio.org/gnu/ftp/gnu/aspell/dict/hu/

Ezt kell letölteni: aspell6-hu-0.99.4.2-0

Ezt tömörítsük ki és másoljuk a programok közé, majd:

# ./configure
Finding Dictionary file location ... /usr/lib64/aspell-0.60
Finding Data file location ... /usr/lib64/aspell-0.60
# make
# make install

Ezután még szükség lesz a enchant-aspell telepítésére is, ami inegrálja az aspell szótáráakat a enchant szótárakba, amit az Evolution is használ:

# dnf install enchant-aspell 

Indítsuk újra az Evolution-t, majd a Preferences -> Conposer preferences -> Spell checker fülön pipáljuk be, hogy a magyart is ellenőrizze, így egyszerre fogja az angolt és a magyart kezelni.

Listázása az elérhető szótáraknak:

# aspell dump dicts
hu


Fedora 31:

# dnf install hunspell-hu

Wine-2.0

Fedora 22 és újabb esetében a dnf -el fel lehet telepíteni. Az attól régebbi rendszeren sajnos kézzel kell, ami elég gyötrelmes. Az alábbi csomagokat az alábbi sorrendben le kell tölteni, és lefordítani (./configure, make, make isntall). A make install-t mindig root-ként. Ahol trükkös a fordítás, ott külön kiemeltem. Ahol nem, ott csak ezt a hármat ki kell sorban adni.

Függőségek telepítése

  1. libxml2-2.9.4
  2. libxslt-1.1.28 (függőség: libxml2)
  3. nettle-3.3
  4. libtasn1-4.9
  5. gnutls-3.5.8 (függőség: libtasn1, nettle)
  6. libtool-2.4
  7. json-c-master
  8. pulseaudio-9.0 (függőség: libtool, json-c-master)


nettle

root-ként:

# ./configure --prefix=/usr --disable-static &&
make

# make install &&
chmod   -v   755 /usr/lib/lib{hogweed,nettle}.so &&
install -v -m755 -d /usr/share/doc/nettle-3.3 &&
install -v -m644 nettle.html /usr/share/doc/nettle-3.3

gnutls

root-ként:

# ./configure --prefix=/usr             --with-default-trust-store-file=/etc/ssl/ca-bundle.crt --with-included-libtasn1 --with-included-unistring --without-p11-kit

json-c-master

# sh autoreconf --force --install

# ./configure
# make  ---->>>>>> ez itt elszáll, és enélkül nem lesz hang :(
# make install

pulseaudio-9.0 (hang)

# ./configure --prefix=/usr                    --sysconfdir=/etc                --localstatedir=/var             --disable-bluez4                 --disable-rpath    --without-caps
# make
# make install

WIN telepítése

64 bites rendszeren:

# ./configure --enable-win64
# make

# make install

OCR

# dnf install gimagereader*

Email szerver tesztelése

 mailx -v -S smtp=192.168.10.1 -r berki.adam@alerant.hu -s test-v farkas.zsuzsanna@alerant.hu < body.txt 

RPM műveletek

Rpm csomag dependenciáinak átírása

Főként ha alien-el deb csomagot forgatunk át RPM-be, előállhat, hogy az abban lévő file művelet ütközni fognak az operációs rendszer mappáival, mert már léteznek:

Error: Transaction check error:
  file / from install of kitematic-0.13.1-2.x86_64 conflicts with file from package filesystem-3.2-40.fc26.x86_64
  file /usr/bin from install of kitematic-0.13.1-2.x86_64 conflicts with file from package filesystem-3.2-40.fc26.x86_64

Ehhez az rpmrebuild eszközzel át kell írni a fájl/mappa létrehozó szekciót az RPM-en belül. Elsőnek állítsuk be, hogy az editor az mcedit legyen, majd indítsuk el:

$ export EDITOR=mcedit
$ rpmrebuild -pe kitematic-0.13.1-2.x86_64.rpm

In the '%files' section remove these lines:

%dir %attr(0755, root, root) "/"
%dir %attr(0755, root, root) "/usr"
%dir %attr(0755, root, root) "/usr/bin"
%dir %attr(0755, root, root) "/usr/share"

Majd mentsük el a fájlt. Ekkor rá fog kérdezni, hogy folytatjuk e, mondjuk hogy igen. Ekkor elszöszöl egy darabig, amíg újra fordítja, majd a végeredményt beteszi ide: /home/adam/rpmbuild/RPMS/x86_64


Debian csomagok átforgatása

# alien -r boostnote-0.11.9-2.x86_64.deb

Töröljük ki a konfliktáló sorokat a %file szekcióból:

# export EDITOR=mcedit

# rpmrebuild -pe boostnote-0.11.9-2.x86_64.rpm

Ez újra fogja csomagolni, és ide fogja rakni: /root/rpmbuild/RPMS/x86_64/


WhatsApp desktop

[Desktop Entry]
Type=Application
Name[en_US.UTF-8]=WhatsApp
X-GNOME-FullName[en_US.UTF-8]=WhatsApp
Comment[en_US.UTF-8]=WhatsApp desktop client
Icon=/home/adam/Programs/whatsApp/whatsApp.png
NoDisplay=false
Exec=google-chrome --app=https://web.whatsapp.com/ --window-size=800,600 --user-data-dir=/home/adam/.config/chromium-whatsapp --class=chromium-whatsapp %U
Path=
Terminal=false
X-GNOME-UsesNotifications=true
Categories=Network;
StartupWMClass=web.whatsapp.com



Gnome ikon probléma

Ha a Baloldali Dash-to-dock -ban ronda az ikonja a futó alkalmazásnak, akkor meg kell szerezni az alkalmazás osztályát

$ xprop WM_CLASS

Ekkor keresztre változik a pointer. Kattintsunk a futó alkalmazás ablakára, a whatsapp esetén valahol a belsejébe az ablaknak. Ekkor a xprog ki fogja írni az alkalmazás osztályait:

$ xprop WM_CLASS
WM_CLASS(STRING) = "web.whatsapp.com", "chromium-whatsapp"

A .desktop fájl végére írjuk ezt:

...
StartupWMClass=web.whatsapp.com




CPU frekvencia beállítása

CPU profil listázása:

# cpupower frequency-info
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency:  Cannot determine or is not supported.
  hardware limits: 400 MHz - 4.80 GHz
  available cpufreq governors: performance powersave
  current policy: frequency should be within 400 MHz and 1.90 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 800 MHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes
  • Jelenlegi fogyasztás: 800 Mhz
  • Tartomány: 400 - 4800 Mhz


Elérhető profilok listázása:
A profil a min és a max frekvenciát határozza meg. Azt láthatjuk, hogy az elsődleges a performance, a másodlagos a powersave. A Perofmance engedi a maximumig felvinni a fogyasztást. Ez nem feltétlen praktikus, mert nagyon hamar lemeríti az akut.

# cpupower frequency-info --governors
analyzing CPU 0:
  available cpufreq governors: performance powersave


Profil váltás: (ennek szerintem semmi hatása)

# cpupower frequency-set --governor powersave


Hogyan szabályozzuk:
Ehhez egy gnome plugin-t kell feltenni, amit a software installer-el is fel tudunk tenni: CPU Power Manager

ClipCapIt-200303-181323.PNG

Be lehet állítani, hogy az elérhető négy profil-ban milyen tartományban legyen a CPU. Ezen felül, hogy mi legyen a profil ha aksiról megy illetve ha töltőn van. A jobb felső sarokba megjelenik a pillanatnyi fogyasztás, ahol egy mozdulattal át is állíthatjuk.



Remarkable markdown editor

Add RPM Fusion repositories to your system
Download latest rpmsphere-release rpm from
https://github.com/rpmsphere/noarch/tree/master/r
Install rpmsphere-release rpm:
# rpm -Uvh rpmsphere-release*rpm
Install remarkable rpm package:
# dnf install remarkable

dnf install gtksourceview3


Billentyűzet parancsok (keyboard)

Ha elromlik a kiosztás

$ setxkbmap hu

Nyelv váltás

Special + Space