linux中管理文件类型和系统时间的5个有用命令

2022-06-02 15:01:06 浏览数 (1)

Linux 中的文件类型在 Linux 中,一切都被视为文件,您的设备、目录和常规文件都被视为文件。Linux 系统中有不同类型的文件:

  • 常规文件,可能包括命令、文档、音乐文件、电影、图像、档案等。
  • 设备文件:系统用于访问您的硬件组件。

表示硬盘等存储设备的设备文件有两种类型的块文件,它们以块为单位读取数据,字符文件以逐个字符的方式读取数据。

  • 硬链接和软链接:它们用于从 Linux 文件系统上的任何位置访问文件。
  • 命名管道和套接字:允许不同的进程相互通信。

1. 使用'file'命令确定文件的类型

您可以使用file命令来确定文件的类型,如下所示。下面的屏幕截图显示了使用 file 命令确定不同文件类型的不同示例。

代码语言:javascript复制
>  dir
BACKUP          master.zip
rumenz.tar.gz       num.txt
rumenz.mp3   reggea.xspf
rumenz.gif  tmp-link

>  file BACKUP/
BACKUP/: directory 

>  file rumenz.zip 
rumenz.zip: Zip archive data, at least v1.0 to extract

>  file rumenz.tar.gz
rumenz.tar.gz: gzip compressed data, from Unix, last modified: Tue Apr  5 15:15:20 2011

>  file rumenz.gif 
rumenz.gif: GIF image data, version 89a, 200 x 259

>  file rumenz.mp3 
rumenz.mp3: Audio file with ID3 version 2.3.0, contains: MPEG ADTS, layer III, v1, 192 kbps, 44.1 kHz, JntStereo

>  file /dev/sda1
/dev/sda1: block special 

>  file /dev/tty1
/dev/tty1: character special

2. 使用'ls' 和'dir' 命令确定文件类型

确定文件类型的另一种方法是使用ls命令执行长列表。

使用ls -l来确定文件的类型。

查看文件权限时,第一个字符显示文件类型,其他字符显示文件权限。

代码语言:javascript复制
>  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 rumenz.tar.gz
-rwxr----- 1 tecmint tecmint 5916085 Sep  9 11:49 rumenz.mp3
-rw-r--r-- 1 tecmint tecmint   42122 Sep  9 11:49 rumenz.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

使用ls -l来确定字符文件。

代码语言:javascript复制
>  ls -l /dev/sda1
brw-rw---- 1 root disk 8, 1 Sep  9 10:53 /dev/sda1

>  ls -l /dev/tty1
crw-rw---- 1 root tty 4, 1 Sep  9 10:54 /dev/tty1

使用dir -l来确定文件的类型。

代码语言:javascript复制
>  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 rumenz.tar.gz
-rwxr----- 1 tecmint tecmint 5916085 Sep  9 11:49 rumenz.mp3
-rw-r--r-- 1 tecmint tecmint   42122 Sep  9 11:49 rumenz.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. 统计特定类型的文件数

接下来,我们将查看使用lsgrep命令计算给定目录中特定类型文件数量的技巧。命令之间的通信是通过命名管道实现的。

  • grep– 根据给定的模式或正则表达式进行搜索的命令。
  • wc– 计算行数、单词数和字符数的命令。

计算常规文件的数量, 在 Linux 中,常规文件由符号表示。

代码语言:javascript复制
>  ls -l | grep ^- | wc -l
7

计算目录数,在 Linux 中,目录由d符号表示。

代码语言:javascript复制
>  ls -l | grep ^d | wc -l
1

计算符号和硬链接的数量,在 Linux 中,l符号链接和硬链接由符号表示。

代码语言:javascript复制
>  ls -l | grep ^l | wc -l
0

计算块和字符文件的数量,在 Linux 中,块文件和字符文件分别用bc符号表示。

代码语言:javascript复制
>  ls -l /dev | grep ^b | wc -l
37
>  ls -l /dev | grep ^c | wc -l
159

4. 在 Linux 系统上查找文件

接下来我们将看看一些可以用来在 Linux 系统上查找文件的命令,包括locatefindwhatiswhich命令。

使用 locate 命令查找文件

代码语言:javascript复制
>  locate samba.conf
/usr/lib/tmpfiles.d/samba.conf
/var/lib/dpkg/info/samba.conffiles

使用 find 命令查找文件

要了解如何在 Linux 中使用 find 命令,您可以阅读我们的以下文章,该文章展示了30多个Linux 中 find 命令的实际示例和用法。

使用 whatis 命令定位命令

whatis命令主要是用来定位的命令,这是特殊的,因为它提供了有关命令的信息,它也发现配置文件和手动输入的命令。

代码语言:javascript复制
>  whatis bash
bash (1)             - GNU Bourne-Again SHell

>  whatis find
find (1)             - search for files in a directory hierarchy

>  whatis ls
ls (1)               - list directory contents

使用 which 命令来定位命令,在命令用于在文件系统中找到的命令。

代码语言:javascript复制
>  which mkdir
/bin/mkdir

>  which bash
/bin/bash

>  which find
/usr/bin/find

>  $ which ls
/bin/ls

5. 在 Linux 系统上处理时间在网络环境中工作时,最好在 Linux 系统上保持正确的时间。Linux 系统上的某些服务需要正确的时间才能在网络上有效工作。

我们将研究可用于管理机器时间的命令。在 Linux 中,时间有两种管理方式:系统时间硬件时间。该系统时间由系统时钟管理和硬件时间由硬件时钟管理。要查看系统时间、日期和时区,请使用 date 命令,如下所示。

代码语言:javascript复制
>  date
Sun Jul 25 22:53:59 CST 2021

使用date -sdate –set=”STRING”设置系统时间,如下所示。

代码语言:javascript复制
> date -s "12:27:00"
Sun Jul  25 12:27:00 IST 2021

> date --set="12:27:00"
Sun Jul  25 12:27:00 IST 2021

您还可以如下设置时间和日期。

代码语言:javascript复制
> date 072612302021
Sun Jul  26 12:30:00 IST 2021

使用cal命令查看日历中的当前日期。

代码语言:javascript复制
>  cal
   July 2021     
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 31

使用hwclock命令查看硬件时钟时间。

代码语言:javascript复制
> hwclock
Sun 25 Jul 2021 10:50:48 PM CST  -1.003347 seconds

要设置硬件时钟时间,请使用hwclock –set –date=”STRING”如下。

代码语言:javascript复制
> hwclock --set --date="07/25/2021 12:33:00"

> hwclock
Sun 25 Jul 2021 2021 12:33:11 PM IST  -0.891163 seconds

系统时间在启动时由硬件时钟设置,当系统关闭时,硬件时间被重置为系统时间。

因此,当您查看系统时间和硬件时间时,除非您更改系统时间,否则它们是相同的。当CMOS电池电量不足时,您的硬件时间可能不正确。

您还可以使用硬件时钟的时间设置系统时间,如下所示。

代码语言:javascript复制
>  hwclock --hctosys

也可以使用系统时钟时间设置硬件时钟时间,如下所示。

代码语言:javascript复制
>  hwclock --systohc

要查看您的 Linux 系统运行了多长时间,请使用uptime命令。

代码语言:javascript复制
>  uptime
12:36:27 up  1:43,  2 users,  load average: 1.39, 1.34, 1.45

>  uptime -p
up 1 hour, 43 minutes

>  uptime -s
2021-01-08 17:02:18

相关文章

Linux之file命令

Linux之ls命令

Linux之grep命令

Linux之date命令

Linux之cal命令

0 人点赞