在 Linux 中管理文件类型和系统时间的 5 个有用命令 - 第 3 部分
对于想要学习 Linux 的初学者来说,适应使用命令行或终端可能非常困难。由于终端比 GUI 程序对 Linux 系统提供更多控制,因此必须习惯在终端上运行命令。因此,要记住 Linux 中的不同命令,您应该每天使用终端来了解命令如何与不同的选项和参数一起使用。
请仔细阅读本 Linux 技巧系列的前几部分。
- Linux 中 5 个有趣的命令行提示和技巧 – 第 1 部分
- 对新手来说 10 个有用的命令行技巧 – 第 2 部分
在本文中,我们将介绍使用 10 个命令在终端上处理文件和时间的一些提示和技巧。
Linux 中的文件类型
在Linux中,一切都被视为文件,您的设备、目录和常规文件都被视为文件。
Linux系统中有不同类型的文件:
- 常规文件,可能包括命令、文档、音乐文件、电影、图像、档案等。
- 设备文件:系统使用它们来访问您的硬件组件。
设备文件有两种类型:块文件代表存储设备,例如硬盘,它们以块的形式读取数据,字符文件以逐个字符的方式读取数据。
- 硬链接和软链接:它们用于从 Linux 文件系统上的任何位置访问文件。
- 命名管道和套接字:允许不同的进程相互通信。
1.使用file命令判断文件类型
您可以使用file命令确定文件的类型,如下所示。下面的屏幕截图显示了使用 file 命令确定不同文件类型的不同示例。
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. 使用“ls”和“dir”命令确定文件类型
确定文件类型的另一种方法是使用 ls 和 dir 命令执行长列表。
使用ls -l 确定文件的类型。
查看文件权限时,第一个字符显示文件类型,其他字符显示文件权限。
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
使用ls -l来确定块和字符文件。
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
使用 dir -l 确定文件的类型。
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. 统计特定类型的文件数量
接下来,我们将了解使用 ls、grep 和 wc 命令计算给定目录中特定类型文件数量的技巧。命令之间的通信是通过命名管道实现的。
- grep – 根据给定模式或正则表达式进行搜索的命令。
- wc – 用于计算行数、单词数和字符数的命令。
计算常规文件的数量
在 Linux 中,常规文件由 –
符号表示。
tecmint@tecmint ~/Linux-Tricks $ ls -l | grep ^- | wc -l
7
计算目录数量
在 Linux 中,目录由 d 符号表示。
tecmint@tecmint ~/Linux-Tricks $ ls -l | grep ^d | wc -l
1
计算符号链接和硬链接的数量
在 Linux 中,符号链接和硬链接由 l
符号表示。
tecmint@tecmint ~/Linux-Tricks $ ls -l | grep ^l | wc -l
0
计算块和字符文件的数量
在 Linux 中,块文件和字符文件分别由 b
和 c
符号表示。
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.在Linux系统上查找文件
接下来我们将了解一些可用于在 Linux 系统上查找文件的命令,其中包括 locate、find、whatis 和 >哪个命令。
使用locate命令查找文件
在下面的输出中,我尝试找到我的系统的 Samba 服务器配置。
tecmint@tecmint ~/Linux-Tricks $ locate samba.conf
/usr/lib/tmpfiles.d/samba.conf
/var/lib/dpkg/info/samba.conffiles
使用find命令查找文件
要了解如何在 Linux 中使用 find 命令,您可以阅读我们的以下文章,其中展示了超过 30+ 个 Linux 中 find 命令的实际示例和用法。
- Linux 中“find”命令的 35 个示例
使用whatis命令来定位命令
whatis 命令主要用于定位命令,它很特殊,因为它提供有关命令的信息,它还查找命令的配置文件和手动条目。
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
使用which命令来定位命令
which 命令用于在文件系统上查找命令。
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. 在 Linux 系统上处理时间
在网络环境中工作时,最好保持 Linux 系统上的时间正确。 Linux 系统上的某些服务需要正确的时间才能在网络上高效工作。
我们将研究可用于管理计算机时间的命令。在Linux中,时间以两种方式管理:系统时间和硬件时间。
系统时间由系统时钟管理,硬件时间由硬件时钟管理。
要查看系统时间、日期和时区,请使用 date 命令,如下所示。
tecmint@tecmint ~/Linux-Tricks $ date
Wed Sep 9 12:25:40 IST 2015
使用date -s 或date –set=”STRING” 设置系统时间,如下所示。
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
您还可以按如下方式设置时间和日期。
tecmint@tecmint ~/Linux-Tricks $ sudo date 090912302015
Wed Sep 9 12:30:00 IST 2015
使用 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
使用hwclock命令查看硬件时钟时间。
tecmint@tecmint ~/Linux-Tricks $ sudo hwclock
Wednesday 09 September 2015 06:02:58 PM IST -0.200081 seconds
要设置硬件时钟时间,请使用hwclock –set –date=”STRING”,如下所示。
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
系统时间在启动期间由硬件时钟设置,当系统关闭时,硬件时间重置为系统时间。
因此,当您查看系统时间和硬件时间时,除非您更改系统时间,否则它们是相同的。当 CMOS 电池电量不足时,您的硬件时间可能不正确。
您还可以使用硬件时钟的时间来设置系统时间,如下所示。
sudo hwclock --hctosys
还可以使用系统时钟时间来设置硬件时钟时间,如下所示。
sudo hwclock --systohc
要查看 Linux 系统已运行多长时间,请使用 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
概括
了解 Linux 的文件类型对于初学者来说是一个很好的实践,而且管理时间也至关重要,尤其是在服务器上,以可靠、高效地管理服务。希望本指南对您有所帮助。如果您有任何其他信息,请不要忘记发表评论。与Howtoing保持联系。