Příroda se směje našim potížím s integrací. (Pierre Simon Laplace, francouzský matematik a fyzik)

Uživatelské nástroje


Sidebar

bash.md

Skripty a příkazy pro bash a Linux

Zmenšení PDF pomocí přesamplování vložených obrázků

Podle http://www.peteryu.ca/tutorials/publishing/pdf_manipulation_tips

gs -sDEVICE=pdfwrite -dMaxSubsetPct=100 -dPDFSETTINGS=/ebook -sOutputFile="outfile.pdf" -dNOPAUSE -dBATCH input.pdf
Podobně podle http://www.ehow.com/how_6823473_reduce-pdf-file-size-linux.html:
gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=setting -sOutputFile=output.pdf input.pdf

Quality level settings are "/screen," the lowest resolution and lowest file size, but fine for viewing on a screen; "/ebook," a mid-point in resolution and file size; "/printer" and "/prepress," high-quality settings used for printing PDFs.

Ořezání PDF bez zvětšení velikosti výsledného souboru

Podle http://tex.stackexchange.com/questions/42236/pdfcrop-generates-larger-file. Použito ve fancy-preview :http://user.mendelu.cz/marik/fancy-preview/fancy-pdfcrop

#!/bin/bash
 
(
    gs -dNOPAUSE -q -dBATCH -sDEVICE=bbox $1 2>&1 | grep '%%BoundingBox'
    pdftk $1 output - uncompress
) | perl -w -n -e '
    if (/BoundingBox:\s+(\d+\s+\d+\s+\d+\s+\d+)/) {
        push @bbox, $1; next;
    }
    elsif (/pdftk_PageNum\s+(\d+)/) {
        print "/MediaBox [$bbox[$1-1]]\n";
    }
    elsif (/MediaBox/) {next;}
    print;
' | pdftk - output $2 compress

Výpis adresářů setříděný podle velikosti

du | grep -i -e '.(/[^/]+)\?$' | sort -n | less

Spojení více samostatných PDF do jednoho souboru

Např. spojení dvou souborů do jednoho:

pdftk pg_0002.pdf pg_0009.pdf cat output out.pdf

Hromadné přejmenování souborů

Příkaz přidá na konec názvu všech pdf souborů text "_p", tj. třeba soubor "soubor.pdf" je přejmenován na "soubor_p.pdf"

for i in *.pdf; do mv $i ${i/.pdf/_p.pdf}; done

Grep + editor

Příkaz zajistí otevření souborů v podadresářích první úrovně, které obsahují slovo black

grep black */??????.tex | cut -d: -f1 | sort| uniq | xargs emacs

Najdi + nahrad pomoci vimu

vim -c "%s/stare/nove/gc|wq" soubor.tex
Volba set fencs=cp1250 ve .vimrc zajisti otevirani v cp1250.

Vymaz vseho krome *.tex, *.png, *.jpg

ls | grep -v -E "png|jpg|tex|pdf" | xargs rm
rm !(.png|.jpg|.tex|.pdf)

LVM (zvetseni oddilu)

lvextend --size 5G /dev/vg00/tmplv
resize2fs /dev/mapper/vg00-tmplv

Tisk oboustranny z prikazove radky

lpr -P LaserJet-p2015d -o InputSlot=Default -o PageSize=A4 -o Duplex=DuplexNoTumble soubor.pdf

Vypis radku z textoveho souboru, ktere maji lichy pocet uvozovek

export IFS=$'\n'
filename=a.txt; for i in $(grep \" $filename); do pocet=$(grep -o \" <<<"$i" | wc -l); if  [ $((pocet%2)) -eq 1 ]; then grep --color=always \" <<< "$i"; echo $pocet; fi; done | less -R

Otočení PDF nastojato

Například pro zobrazování PDF s prezentací ve čtečce bez nutnosti otáčet PDF ve čtečce.

pdftk talk.pdf cat -E output DFDE_2014.pdf
nebo
pdf270 talk.pdf --frame true

Spojení videostopy a audiostopy

avconv -i audio.mp3 -i video.webm -c copy output.avi

Spojení videostopy a audiostopy, zpoždění audiostopy o 0.4s

avconv -i video.webm -itsoffset 0.4 -i audio.wav vysledek.webm

Nahrávka obrazovky

Viz http://ubuntuforums.org/showthread.php?t=1392026, předtím přesměrovat audiovstup a výstup pomocí pavucontrol

ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 -s 1280x800 -i :0.0 -acodec flac -vcodec libx264 -preset ultrafast -crf 0 -threads 0 output.mkv
nebo
recordmydesktop --width 640 --height 480 -x 1400 -y 320 --device=pulse --no-cursor --full-shots --fps 20 --overwrite -o output.ogv

Vypnutí gest rukou na tabletu

Aby tablet reagoval jenom na dotek perem

xsetwacom -v --set 'Wacom Intuos PT M Finger touch' gesture off
anebo
xsetwacom -v --set 'Wacom Intuos PT M Finger touch' Touch off

Velká písmena ve jménech souborů na malá

Podle http://www.tecmint.com/rename-multiple-files-in-linux/

rename 'y/A-Z/a-z/' *.JPG

Automatické spuštění příkazu při změně souboru

Podle https://superuser.com/questions/181517/how-to-execute-a-command-whenever-a-file-changes

while inotifywait -e close_write slidy.md; do bash prikaz; done
Automatické spuštění příkazu při změně souboru a refresh pomocí F5 v jiném okně. Před spuštěním je potřeba zjistit id okna, kde je potřeba autoamticky stisknout F5 pomocí xdotool selectwindow
id=56623134; while inotifywait -e close_write slidy.md; do bash prikaz; SAVE=</span>xdotool getactivewindow<span class="sy0">; xdotool windowactivate $id; xdotool key F5; xdotool windowactivate $SAVE; done

Tečka vedle kurzoru

Vedle kurzoru tečka v barvách LDF pro sdílení obrazovky v MS Teams, kdy není vidět kurzor. Program find-cursor.

find-cursor --repeat 0 --follow --distance 1 --line-width 10 --size 10 --color '#0A5028'

Wacom a citlivost pera

Nastavení rozumné citlivosti pera, pokud má člověk rád lehkou ruku při psaní, ale chce mít citlivost na tlak. Podle ArchWiki.

xsetwacom set "Wacom Intuos PT M Pen eraser" PressureCurve 0 30 60 100
bash.md.txt · Poslední úprava: 2020/05/20 08:41 (upraveno mimo DokuWiki)