Pesquisa de site

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.

  1. 5 dicas e truques interessantes de linha de comando no Linux – Parte 1
  2. 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:

  1. Arquivos regulares que podem incluir comandos, documentos, arquivos de música, filmes, imagens, arquivos e assim por diante.
  2. 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.

  1. Hardlinks e softlinks: são usados para acessar arquivos de qualquer lugar em um sistema de arquivos Linux.
  2. 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.

  1. grep – comando para pesquisar de acordo com um determinado padrão ou expressão regular.
  2. 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.

  1. 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.