5 comandos úteis para gerenciar tipos de arquivos e hora do sistema no Linux - Parte 3
Adaptar-se ao uso da linha de comando ou terminal pode ser muito difícil para iniciantes que desejam aprender Linux. Como o terminal oferece mais controle sobre um sistema Linux do que os programas GUI, é necessário se acostumar a executar comandos no terminal. Portanto, para memorizar diferentes comandos no Linux, você deve usar o terminal diariamente para entender como os comandos são usados com diferentes opções e argumentos.
Por favor, leia nossas partes anteriores desta série de truques do Linux.
- 5 dicas e truques interessantes de linha de comando no Linux – Parte 1
- 10 truques úteis de linha de comando para iniciantes – Parte 2
Neste artigo, veremos algumas dicas e truques para usar 10 comandos para trabalhar com arquivos e hora no terminal.
Tipos de arquivo no Linux
No Linux, tudo é considerado um arquivo, seus dispositivos, diretórios e arquivos normais são todos considerados arquivos.
Existem diferentes tipos de arquivos em um sistema Linux:
- Arquivos regulares que podem incluir comandos, documentos, arquivos de música, filmes, imagens, arquivos e assim por diante.
- Arquivos de dispositivo: que são usados pelo sistema para acessar seus componentes de hardware.
Existem dois tipos de arquivos de dispositivo, arquivos de bloco que representam dispositivos de armazenamento, como discos rígidos, eles leem dados em blocos e arquivos de caracteres leem dados caractere por caractere.
- Hardlinks e softlinks: são usados para acessar arquivos de qualquer lugar em um sistema de arquivos Linux.
- Tubos e soquetes nomeados: permitem que diferentes processos se comuniquem entre si.
1. Determinando o tipo de arquivo usando o comando ‘file’
Você pode determinar o tipo de arquivo usando o comando file da seguinte forma. A captura de tela abaixo mostra diferentes exemplos de uso do comando file para determinar os tipos de arquivos diferentes.
tecmint@tecmint ~/Linux-Tricks $ dir
BACKUP master.zip
crossroads-stable.tar.gz num.txt
EDWARD-MAYA-2011-2012-NEW-REMIX.mp3 reggea.xspf
Linux-Security-Optimization-Book.gif tmp-link
tecmint@tecmint ~/Linux-Tricks $ file BACKUP/
BACKUP/: directory
tecmint@tecmint ~/Linux-Tricks $ file master.zip
master.zip: Zip archive data, at least v1.0 to extract
tecmint@tecmint ~/Linux-Tricks $ file crossroads-stable.tar.gz
crossroads-stable.tar.gz: gzip compressed data, from Unix, last modified: Tue Apr 5 15:15:20 2011
tecmint@tecmint ~/Linux-Tricks $ file Linux-Security-Optimization-Book.gif
Linux-Security-Optimization-Book.gif: GIF image data, version 89a, 200 x 259
tecmint@tecmint ~/Linux-Tricks $ file EDWARD-MAYA-2011-2012-NEW-REMIX.mp3
EDWARD-MAYA-2011-2012-NEW-REMIX.mp3: Audio file with ID3 version 2.3.0, contains: MPEG ADTS, layer III, v1, 192 kbps, 44.1 kHz, JntStereo
tecmint@tecmint ~/Linux-Tricks $ file /dev/sda1
/dev/sda1: block special
tecmint@tecmint ~/Linux-Tricks $ file /dev/tty1
/dev/tty1: character special
2. Determinando o tipo de arquivo usando os comandos ‘ls’ e ‘dir’
Outra forma de determinar o tipo de arquivo é realizar uma listagem longa usando os comandos ls e dir.
Usando ls -l para determinar o tipo de arquivo.
Ao visualizar as permissões do arquivo, o primeiro caractere mostra o tipo de arquivo e os outros caracteres mostram as permissões do arquivo.
tecmint@tecmint ~/Linux-Tricks $ ls -l
total 6908
drwxr-xr-x 2 tecmint tecmint 4096 Sep 9 11:46 BACKUP
-rw-r--r-- 1 tecmint tecmint 1075620 Sep 9 11:47 crossroads-stable.tar.gz
-rwxr----- 1 tecmint tecmint 5916085 Sep 9 11:49 EDWARD-MAYA-2011-2012-NEW-REMIX.mp3
-rw-r--r-- 1 tecmint tecmint 42122 Sep 9 11:49 Linux-Security-Optimization-Book.gif
-rw-r--r-- 1 tecmint tecmint 17627 Sep 9 11:46 master.zip
-rw-r--r-- 1 tecmint tecmint 5 Sep 9 11:48 num.txt
-rw-r--r-- 1 tecmint tecmint 0 Sep 9 11:46 reggea.xspf
-rw-r--r-- 1 tecmint tecmint 5 Sep 9 11:47 tmp-link
Usando ls -l para determinar arquivos de blocos e caracteres.
tecmint@tecmint ~/Linux-Tricks $ ls -l /dev/sda1
brw-rw---- 1 root disk 8, 1 Sep 9 10:53 /dev/sda1
tecmint@tecmint ~/Linux-Tricks $ ls -l /dev/tty1
crw-rw---- 1 root tty 4, 1 Sep 9 10:54 /dev/tty1
Usando dir -l para determinar o tipo de arquivo.
tecmint@tecmint ~/Linux-Tricks $ dir -l
total 6908
drwxr-xr-x 2 tecmint tecmint 4096 Sep 9 11:46 BACKUP
-rw-r--r-- 1 tecmint tecmint 1075620 Sep 9 11:47 crossroads-stable.tar.gz
-rwxr----- 1 tecmint tecmint 5916085 Sep 9 11:49 EDWARD-MAYA-2011-2012-NEW-REMIX.mp3
-rw-r--r-- 1 tecmint tecmint 42122 Sep 9 11:49 Linux-Security-Optimization-Book.gif
-rw-r--r-- 1 tecmint tecmint 17627 Sep 9 11:46 master.zip
-rw-r--r-- 1 tecmint tecmint 5 Sep 9 11:48 num.txt
-rw-r--r-- 1 tecmint tecmint 0 Sep 9 11:46 reggea.xspf
-rw-r--r-- 1 tecmint tecmint 5 Sep 9 11:47 tmp-link
3. Contando o número de arquivos de um tipo específico
A seguir veremos dicas sobre como contar o número de arquivos de um tipo específico em um determinado diretório usando os comandos ls, grep e wc. A comunicação entre os comandos é obtida por meio de tubulação nomeada.
- grep – comando para pesquisar de acordo com um determinado padrão ou expressão regular.
- wc – comando para contar linhas, palavras e caracteres.
Contando o número de arquivos regulares
No Linux, os arquivos regulares são representados pelo símbolo –
.
tecmint@tecmint ~/Linux-Tricks $ ls -l | grep ^- | wc -l
7
Contando o número de diretórios
No Linux, os diretórios são representados pelo símbolo d
.
tecmint@tecmint ~/Linux-Tricks $ ls -l | grep ^d | wc -l
1
Contando o número de links simbólicos e físicos
No Linux, links simbólicos e físicos são representados pelo símbolo l
.
tecmint@tecmint ~/Linux-Tricks $ ls -l | grep ^l | wc -l
0
Contando o número de arquivos de blocos e caracteres
No Linux, os arquivos de blocos e caracteres são representados pelos símbolos b
e c
respectivamente.
tecmint@tecmint ~/Linux-Tricks $ ls -l /dev | grep ^b | wc -l
37
tecmint@tecmint ~/Linux-Tricks $ ls -l /dev | grep ^c | wc -l
159
4. Encontrando arquivos em um sistema Linux
A seguir, veremos alguns comandos que podem ser usados para localizar arquivos em um sistema Linux, incluindo locate, find, whatis e >quais comandos.
Usando o comando localizar para localizar arquivos
Na saída abaixo, estou tentando localizar a configuração do servidor Samba para o meu sistema.
tecmint@tecmint ~/Linux-Tricks $ locate samba.conf
/usr/lib/tmpfiles.d/samba.conf
/var/lib/dpkg/info/samba.conffiles
Usando o comando find para localizar arquivos
Para aprender como usar o comando find no Linux, você pode ler nosso artigo a seguir, que mostra mais de 30+ exemplos práticos e o uso do comando find no Linux.
- 35 exemplos de comando ‘find’ no Linux
Usando o comando whatis para localizar comandos
O comando whatis é usado principalmente para localizar comandos e é especial porque fornece informações sobre um comando, também encontra arquivos de configuração e entradas manuais para um comando.
tecmint@tecmint ~/Linux-Tricks $ whatis bash
bash (1) - GNU Bourne-Again SHell
tecmint@tecmint ~/Linux-Tricks $ whatis find
find (1) - search for files in a directory hierarchy
tecmint@tecmint ~/Linux-Tricks $ whatis ls
ls (1) - list directory contents
Usando qual comando para localizar comandos
O comando qual é usado para localizar comandos no sistema de arquivos.
tecmint@tecmint ~/Linux-Tricks $ which mkdir
/bin/mkdir
tecmint@tecmint ~/Linux-Tricks $ which bash
/bin/bash
tecmint@tecmint ~/Linux-Tricks $ which find
/usr/bin/find
tecmint@tecmint ~/Linux-Tricks $ $ which ls
/bin/ls
5. Trabalhando com o tempo em seu sistema Linux
Ao trabalhar em um ambiente de rede, é uma boa prática manter a hora correta em seu sistema Linux. Existem certos serviços em sistemas Linux que requerem tempo correto para funcionar de forma eficiente em uma rede.
Veremos os comandos que você pode usar para gerenciar o tempo em sua máquina. No Linux, o tempo é gerenciado de duas maneiras: tempo do sistema e tempo do hardware.
A hora do sistema é gerenciada por um relógio do sistema e a hora do hardware é gerenciada por um relógio do hardware.
Para visualizar a hora, data e fuso horário do sistema, use o comando date da seguinte maneira.
tecmint@tecmint ~/Linux-Tricks $ date
Wed Sep 9 12:25:40 IST 2015
Defina a hora do sistema usando date -s ou date –set=”STRING” como segue.
tecmint@tecmint ~/Linux-Tricks $ sudo date -s "12:27:00"
Wed Sep 9 12:27:00 IST 2015
tecmint@tecmint ~/Linux-Tricks $ sudo date --set="12:27:00"
Wed Sep 9 12:27:00 IST 2015
Você também pode definir a hora e a data da seguinte maneira.
tecmint@tecmint ~/Linux-Tricks $ sudo date 090912302015
Wed Sep 9 12:30:00 IST 2015
Visualizando a data atual de um calendário usando o comando cal.
tecmint@tecmint ~/Linux-Tricks $ cal
September 2015
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Veja a hora do relógio do hardware usando o comando hwclock.
tecmint@tecmint ~/Linux-Tricks $ sudo hwclock
Wednesday 09 September 2015 06:02:58 PM IST -0.200081 seconds
Para definir a hora do relógio do hardware, use hwclock –set –date=”STRING” como segue.
tecmint@tecmint ~/Linux-Tricks $ sudo hwclock --set --date="09/09/2015 12:33:00"
tecmint@tecmint ~/Linux-Tricks $ sudo hwclock
Wednesday 09 September 2015 12:33:11 PM IST -0.891163 seconds
A hora do sistema é definida pelo relógio do hardware durante a inicialização e quando o sistema é desligado, a hora do hardware é redefinida para a hora do sistema.
Portanto, quando você visualiza a hora do sistema e a hora do hardware, elas são iguais, a menos que você altere a hora do sistema. A hora do seu hardware pode estar incorreta quando a bateria do CMOS está fraca.
Você também pode definir a hora do sistema usando a hora do relógio do hardware da seguinte maneira.
sudo hwclock --hctosys
Também é possível definir a hora do relógio do hardware usando a hora do relógio do sistema da seguinte forma.
sudo hwclock --systohc
Para ver há quanto tempo o seu sistema Linux está em execução, use o comando uptime.
tecmint@tecmint ~/Linux-Tricks $ uptime
12:36:27 up 1:43, 2 users, load average: 1.39, 1.34, 1.45
tecmint@tecmint ~/Linux-Tricks $ uptime -p
up 1 hour, 43 minutes
tecmint@tecmint ~/Linux-Tricks $ uptime -s
2015-09-09 10:52:47
Resumo
Compreender os tipos de arquivo no Linux é uma boa prática para iniciantes, e também gerenciar o tempo é fundamental, especialmente em servidores, para gerenciar serviços de maneira confiável e eficiente. Espero que este guia seja útil. Se você tiver alguma informação adicional, não esqueça de postar um comentário. Fique conectado ao Tecmint.