Gaucho

Gaucho

fazedor de sites 🐘 • tentando ser dataísta 💪

GitHubTwitter

Shell script

buscar arquivos

mp4 maiores que 200M no diretório /opt

find /opt -type f -size +200M -name \*.mp4

cpu

bogomips

cat /proc/cpuinfo | grep bogomips

detalhes da cpu

lscpu

frequência dos núcleos

sudo apt install cpufrequtils -y && cpufreq-info

diff

comparar o código hexadecimal de dois arquivos

xxd file1 > file1.hex
xxd file2 > file2.hex
diff file1.hex file2.hex

ffmpeg

trocar o audio de um mkv

ffmpeg -i in.mkv -i in.mp3 -c:v copy -c:a aac -map 0:v:0 -map 1:a:0 out.mkv

trocar o audio de um mp4

ffmpeg -i 'in.mp4' -i 'in.mp3' -c:v copy -c:a aac -map 0:v:0 -map 1:a:0 -shortest out.mp4

palavras

contar palavras (apenas letras)

grep -o -E '[[:alpha:]]+' file.txt | sort | uniq -i -c | sort -rn

contar palavras (incluindo números)

grep -o -E '\w+' file.txt | sort -f | uniq -c | sort -rn

formatar pendrive & gravar iso (linux mint)

formatar pendrive

sudo setsid mintstick -m format

gravar iso

sudo setsid mintstick -m iso

git

.gitignore

/db/*.sqlite3
/.env
/.idea
/public/test*.php
*.swp
/test*.php
/*.txt
/vendor

linhas

contar o número de linhas

wc -l arquivo.txt

imprimir a apenas a linha 10

cat arquivo.txt | grep -m 10 . | tail -n 1

ler da linha 2 até a 5

gawk 'NR>=2 && NR<=5' arquivo.txt

linhas únicas (filtrar)

cat a.txt b.txt | sort | uniq -u

make

make install

LESS=/usr/bin/lessc
PHP=/usr/bin/php
UGLIFY=/usr/bin/uglifyjs.terser

install: bin/mig.php less/style.less
    clear
    composer install
    composer dump-autoload
    $(PHP) bin/mig.php
    $(LESS) less/style.less public/css/style.css --clean-css
    $(UGLIFY) js/script.js --output public/js/script.js --compress
    echo "pronto!"

metadados

extract <nome do arquivo>

mime

alterar o programa padrão

xdg-mime default smplayer.desktop audio/x-wav

O comando acima irá atualizar o /home/$USER/.config/mimeapps.list

mouse

mapear o botão do meio (2) para o direito (1)

Passo 1) Pegar o id do mouse (do touchpad no caso dos notebooks)

xinput list

Passo 2) Testar se é o id correto

xinput --disable <id>
xinput --enable <id>

Passo 3) Mapear o botão 2 para o botão 1

Coloque o código abaixo no arquivo ~/.profile

xinput --set-button-map <id> 1 1 3 4 5 6 7 8 9 10

parallel

rodando dois comandos em paralelo

parallel --gnu << 'EOF'
date >> out1 && sleep 5
date >> out2 && sleep 5
EOF

Fonte: StackOverwlow

PDF

converter para jpg

pdftoppm -jpeg -r 300 'file.pdf' dir/p

Poppler

rodando comandos em paralelo com argumentos

date && parallel sleep ::: 1 1 1 1 1 1 1 1 1 1 && date

Tempo para rodar o comando acima:

stat

Pra ver a data de modificação de um arquivo:

stat nomeDoArquivo

tar

adicionar um diretório

tar -hcvf arquivo.tar diretório

extrair arquivos

tar -xf arquivo.tar

linhas únicas em 3 listas diferentes

sort <(cat lista1 lista2 lista3) | uniq -d

repetir comando a cada n segundos

watch -n 1 date

tabelas de alocação (ver os nomes)

sudo parted --list

texto

converter para maiúsculo

tr '[:lower:]' '[:upper:]'

converter para minúsculo

tr '[:upper:]' '[:lower:]'

tsv

gerar 2 arquivos

cut -f1 en-pt.txt > en.txt
cut -f2 en-pt.txt > pt.txt

zip

zipar um diretório

zip -r nomeDoZip.zip nomeDoDiretorio

extrair arquivos do zip

unzip nomeDoZip.zip

Página inicial

GitHubTwitter