Arquivos e diretórios
Buscando (grep) em arquivos compactados
# -A linhas a mostrar depois da ocorrência
# -B linhas a mostrar antes da ocorrência
zgrep -A 50 -B 50 'command_status: 1281' files-*
# -E usa expressão regular na busca
zgrep -E 'command_status: [1-9]' files-*Quem está escrevendo em um arquivo
fatrace | grep file.logListando extensões de arquivo, recursivamente
find . -type f -printf "%f\n" | awk -F. 'NF > 1 && $NF != "" {print $NF}' | sort -uCriando um arquivo temporário
AlmaLinux
$ mktemp
/tmp/tmp.UHHyLzjCB0Ubuntu Linux
$ tempfile
/tmp/fileR5dt6rRemovendo quebras de linha do Windows
AlmaLinux
sudo dnf install -y dos2unix
dos2unix original.csvUbuntu Linux
sudo apt-get install -y dos2unix
dos2unix original.csvDividindo um arquivo em partes menores
split --verbose --bytes=<size> -d <file> <prefix>onde:
--bytes=<size>é o tamanho máximo de cada parte, em bytes, ou um número inteiro seguido deK,M,G,T,P,E,Z,Y-dadiciona um sufixo numérico no final do nome do arquivo<prefix>o nome de cada parte
um exemplo: um arquivo iso pode ser dividido em vários arquivos de 1Gb:
$ split --verbose --bytes=1G -d imagefile.iso img
creating file "img00"
creating file "img01"
creating file "img02"
creating file "img03"
creating file "img04"para juntar esses arquivos novamente, use
cat img00 img01 img02 img03 img04 > imagem.isoListando apenas uma coluna de um arquivo
um arquivo com colunas separadas por : pode ter seus dados exibidos assim
cat file.log | cut -d":" -f4Exibindo o conteúdo de um arquivo, removendo duplicatas
cat file.log | awk '!a[$0]++'Listando o conteúdo recursivo de um diretório
ls -R /my_path | awk '
/:$/&&f{s=$0;f=0}
/:$/&&!f{sub(/:$/,"");s=$0;f=1;next}
NF&&f{ print s"/"$0 }'além de mostrar o conteúdo recursivamente, esse comando também mostra o caminho completo dos arquivos, não apenas os nomes.
referência: AskUbuntu.com
Obtendo o tipo mime de um arquivo
file --mime-type -b my_fileBuscando arquivo pelo conteúdo
grep -lr "text to fine" *.txt
Rodrigo de Avila