歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 5 個在 Linux 中管理文件類型和系統時間的有用命令

5 個在 Linux 中管理文件類型和系統時間的有用命令

日期:2017/2/28 13:57:21   编辑:Linux教程

對於想學習 Linux 的初學者來說要適應使用命令行或者終端可能非常困難。由於終端比圖形用戶界面程序更能幫助用戶控制 Linux 系統,我們必須習慣在終端中運行命令。因此為了有效記憶 Linux 不同的命令,你應該每天使用終端並明白怎樣將命令和不同選項以及參數一同使用。

在 Linux 中管理文件類型和設置時間

請先查看我們 Linux 小技巧系列之前的文章:

  • 5 個有趣的 Linux 命令行技巧
  • 給新手的 10 個有用 Linux 命令行技巧

在這篇文章中,我們打算看看終端中 5 個和文件以及時間相關的提示和技巧。

Linux 中的文件類型

在 Linux 中,一切皆文件,你的設備、目錄以及普通文件都認為是文件。

Linux 系統中文件有不同的類型:

  • 普通文件:可能包含命令、文檔、音頻文件、視頻、圖像,歸檔文件等。
  • 設備文件:系統用於訪問你硬件組件。

這裡有兩種表示存儲設備的設備文件:塊文件,例如硬盤,它們以塊讀取數據;字符文件,以逐個字符讀取數據。

  • 硬鏈接和軟鏈接:用於在 Linux 文件系統的任意地方訪問文件。
  • 命名管道和套接字:允許不同的進程之間進行交互。

1. 用 ‘file’ 命令確定文件類型

你可以像下面這樣使用 file 命令確定文件的類型。下面的截圖顯示了用 file 命令確定不同文件類型的例子。

  1. linuxidc@linuxidc ~/Linux-Tricks $ dir
  2. BACKUP master.zip
  3. crossroads-stable.tar.gz num.txt
  4. EDWARD-MAYA-2011-2012-NEW-REMIX.mp3 reggea.xspf
  5. Linux-Security-Optimization-Book.gif tmp-link
  6. linuxidc@linuxidc ~/Linux-Tricks $ file BACKUP/
  7. BACKUP/: directory
  8. linuxidc@linuxidc ~/Linux-Tricks $ file master.zip
  9. master.zip:Zip archive data, at least v1.0 to extract
  10. linuxidc@linuxidc ~/Linux-Tricks $ file crossroads-stable.tar.gz
  11. crossroads-stable.tar.gz: gzip compressed data,fromUnix,last modified:TueApr515:15:202011
  12. linuxidc@linuxidc ~/Linux-Tricks $ fileLinux-Security-Optimization-Book.gif
  13. Linux-Security-Optimization-Book.gif: GIF image data, version 89a,200 x 259
  14. linuxidc@linuxidc ~/Linux-Tricks $ file EDWARD-MAYA-2011-2012-NEW-REMIX.mp3
  15. EDWARD-MAYA-2011-2012-NEW-REMIX.mp3:Audiofilewith ID3 version 2.3.0, contains: MPEG ADTS, layer III, v1,192 kbps,44.1 kHz,JntStereo
  16. linuxidc@linuxidc ~/Linux-Tricks $ file /dev/sda1
  17. /dev/sda1: block special
  18. linuxidc@linuxidc ~/Linux-Tricks $ file /dev/tty1
  19. /dev/tty1: character special

2. 用 ‘ls’ 和 ‘dir’ 命令確定文件類型

確定文件類型的另一種方式是用 ls 和 dir 命令顯示一長串結果。

ls 命令:15個Linux面試級問題--第一集 http://www.linuxidc.com/Linux/2015-03/114895.htm

用 ls -l 確定一個文件的類型。

當你查看文件權限時,第一個字符顯示了文件類型,其它字符顯示文件權限。

  1. linuxidc@linuxidc ~/Linux-Tricks $ ls-l
  2. total 6908
  3. drwxr-xr-x 2 linuxidc linuxidc 4096Sep911:46 BACKUP
  4. -rw-r--r--1 linuxidc linuxidc 1075620Sep911:47 crossroads-stable.tar.gz
  5. -rwxr-----1 linuxidc linuxidc 5916085Sep911:49 EDWARD-MAYA-2011-2012-NEW-REMIX.mp3
  6. -rw-r--r--1 linuxidc linuxidc 42122Sep911:49Linux-Security-Optimization-Book.gif
  7. -rw-r--r--1 linuxidc linuxidc 17627Sep911:46 master.zip
  8. -rw-r--r--1 linuxidc linuxidc 5Sep911:48 num.txt
  9. -rw-r--r--1 linuxidc linuxidc 0Sep911:46 reggea.xspf
  10. -rw-r--r--1 linuxidc linuxidc 5Sep911:47 tmp-link

使用 ls -l 確定塊和字符文件

  1. linuxidc@linuxidc ~/Linux-Tricks $ ls -l /dev/sda1
  2. brw-rw----1 root disk 8,1Sep910:53/dev/sda1
  3. linuxidc@linuxidc ~/Linux-Tricks $ ls -l /dev/tty1
  4. crw-rw----1 root tty4,1Sep910:54/dev/tty1

使用 dir -l 確定一個文件的類型。

  1. linuxidc@linuxidc ~/Linux-Tricks $ dir-l
  2. total 6908
  3. drwxr-xr-x 2 linuxidc linuxidc 4096Sep911:46 BACKUP
  4. -rw-r--r--1 linuxidc linuxidc 1075620Sep911:47 crossroads-stable.tar.gz
  5. -rwxr-----1 linuxidc linuxidc 5916085Sep911:49 EDWARD-MAYA-2011-2012-NEW-REMIX.mp3
  6. -rw-r--r--1 linuxidc linuxidc 42122Sep911:49Linux-Security-Optimization-Book.gif
  7. -rw-r--r--1 linuxidc linuxidc 17627Sep911:46 master.zip
  8. -rw-r--r--1 linuxidc linuxidc 5Sep911:48 num.txt
  9. -rw-r--r--1 linuxidc linuxidc 0Sep911:46 reggea.xspf
  10. -rw-r--r--1 linuxidc linuxidc 5Sep911:47 tmp-link

3. 統計指定類型文件的數目

下面我們來看看在一個目錄中用 ls,grep 和 wc 命令統計指定類型文件數目的技巧。命令之間的交互通過命名管道完成。

Linux正則表達式sed 詳述 http://www.linuxidc.com/Linux/2015-04/116309.htm

Linux正則表達式特性及BRE與ERE的區別 http://www.linuxidc.com/Linux/2014-03/99152.htm

grep使用簡明及正則表達式 http://www.linuxidc.com/Linux/2013-08/88534.htm

正則表達式的用法 http://www.linuxidc.com/Linux/2013-03/81897.htm

正則表達式之零寬斷言 http://www.linuxidc.com/Linux/2013-03/81897.htm

Linux中正則表達式與文件格式化處理命令(awk/grep/sed) http://www.linuxidc.com/Linux/2013-03/81018.htm

  • grep – 用戶根據給定模式或正則表達式進行搜索的命令。
  • wc – 用於統計行、字和字符的命令。

統計普通文件的數目

在 Linux 中,普通文件用符號 - 表示。

  1. linuxidc@linuxidc ~/Linux-Tricks $ ls-l |grep^-|wc-l
  2. 7

統計目錄的數目

在 Linux 中,目錄用符號 d 表示。

  1. linuxidc@linuxidc ~/Linux-Tricks $ ls-l |grep^d |wc-l
  2. 1

統計符號鏈接和硬鏈接的數目

在 Linux 中,符號鏈接和硬鏈接用符號 l 表示。

  1. linuxidc@linuxidc ~/Linux-Tricks $ ls-l |grep^l |wc-l
  2. 0

統計塊文件和字符文件的數目

在 Linux 中,塊和字符文件用符號 bc 表示。

  1. linuxidc@linuxidc ~/Linux-Tricks $ ls -l /dev |grep^b |wc-l
  2. 37
  3. linuxidc@linuxidc ~/Linux-Tricks $ ls -l /dev |grep^c |wc-l
  4. 159

4. 在 Linux 系統中查找文件

下面我們來看看在 Linux 系統中查找文件一些命令,它們包括 locate、find、whatis 和 which 命令。

用 locate 命令查找文件

在下面的輸出中,我想要定位系統中的 Samba 服務器配置文件

  1. linuxidc@linuxidc ~/Linux-Tricks $ locate samba.conf
  2. /usr/lib/tmpfiles.d/samba.conf
  3. /var/lib/dpkg/info/samba.conffiles

用 find 命令查找文件

想要學習如何在 Linux 中使用 find 命令,你可以閱讀我們以下的文章,裡面列出了 find 命令的 30 多個例子和使用方法。

Linux find 命令用法總結 http://www.linuxidc.com/Linux/2015-04/116854.htm

Linux下查找文件find命令 http://www.linuxidc.com/Linux/2014-10/108575.htm

Linux下find命令詳解 http://www.linuxidc.com/Linux/2011-08/40669.htm

文本查找利器find的使用 http://www.linuxidc.com/Linux/2014-03/97559.htm

功能強大的find命令 http://www.linuxidc.com/Linux/2014-01/95236.htm

Linux系統find命令詳解 http://www.linuxidc.com/Linux/2014-06/103232.htm

用 whatis 命令定位命令

whatis 命令通常用於定位命令,它很特殊,因為它給出關於一個命令的信息,它還能查找配置文件和命令的幫助手冊條目。

  1. linuxidc@linuxidc ~/Linux-Tricks $ whatisbash
  2. bash(1)- GNU Bourne-AgainSHell
  3. linuxidc@linuxidc ~/Linux-Tricks $ whatisfind
  4. find(1)- search for files in a directory hierarchy
  5. linuxidc@linuxidc ~/Linux-Tricks $ whatisls
  6. ls(1)-list directory contents

用 which 命令定位命令

which 命令用於定位文件系統中的命令。

  1. linuxidc@linuxidc ~/Linux-Tricks $ which mkdir
  2. /bin/mkdir
  3. linuxidc@linuxidc ~/Linux-Tricks $ which bash
  4. /bin/bash
  5. linuxidc@linuxidc ~/Linux-Tricks $ which find
  6. /usr/bin/find
  7. linuxidc@linuxidc ~/Linux-Tricks $ $ which ls
  8. /bin/ls

5.處理 Linux 系統的時間

在聯網環境中,保持你 Linux 系統時間准確是一個好的習慣。Linux 系統中有很多服務要求時間正確才能在聯網條件下正常工作。

讓我們來看看你可以用來管理你機器時間的命令。在 Linux 中,有兩種方式管理時間:系統時間和硬件時間。

系統時間由系統時鐘管理,硬件時間由硬件時鐘管理。

要查看你的系統時間、日期和時區,像下面這樣使用 date 命令。

  1. linuxidc@linuxidc ~/Linux-Tricks $ date
  2. WedSep912:25:40 IST 2015

像下面這樣用 date -s 或 date -set=“STRING” 設置系統時間。

  1. linuxidc@linuxidc ~/Linux-Tricks $ sudodate-s "12:27:00"
  2. WedSep912:27:00 IST 2015
  3. linuxidc@linuxidc ~/Linux-Tricks $ sudodate--set="12:27:00"
  4. WedSep912:27:00 IST 2015

你也可以像下面這樣設置時間和日期。

  1. linuxidc@linuxidc ~/Linux-Tricks $ sudodate090912302015
  2. WedSep912:30:00 IST 2015

使用 cal 命令從日歷中查看當前日期。

  1. linuxidc@linuxidc ~/Linux-Tricks $ cal
  2. September2015
  3. SuMoTuWeThFrSa
  4. 12345
  5. 6789101112
  6. 13141516171819
  7. 20212223242526
  8. 27282930

使用 hwclock 命令查看硬件時鐘時間。

  1. linuxidc@linuxidc ~/Linux-Tricks $ sudohwclock
  2. Wednesday09September201506:02:58 PM IST -0.200081 seconds

要設置硬件時鐘時間,像下面這樣使用 hwclock –set –date=“STRING” 命令。

  1. linuxidc@linuxidc ~/Linux-Tricks $ sudo hwclock --set --date="09/09/201512:33:00"
  2. linuxidc@linuxidc ~/Linux-Tricks $ sudo hwclock
  3. Wednesday 09 September 2015 12:33:11 PM IST -0.891163 seconds

系統時間是由硬件時鐘時間在啟動時設置的,系統關閉時,硬件時間被重置為系統時間。

因此你查看系統時間和硬件時間時,它們是一樣的,除非你更改了系統時間。當你的 CMOS 電量不足時,硬件時間可能不正確。

你也可以像下面這樣使用硬件時鐘的時間設置系統時間。

  1. $ sudohwclock--hctosys

也可以像下面這樣用系統時鐘時間設置硬件時鐘時間。

  1. $ sudohwclock--systohc

要查看你的 Linux 系統已經運行了多長時間,可以使用 uptime 命令。

  1. linuxidc@linuxidc ~/Linux-Tricks $ uptime
  2. 12:36:27 up 1:43,2users, load average:1.39,1.34,1.45
  3. linuxidc@linuxidc ~/Linux-Tricks $ uptime-p
  4. up 1 hour,43 minutes
  5. linuxidc@linuxidc ~/Linux-Tricks $ uptime-s
  6. 2015-09-0910:52:47

總結

對於初學者來說理解 Linux 中的文件類型是一個好的嘗試,同時時間管理也非常重要,尤其是在需要可靠有效地管理服務的服務器上。希望這篇指南能對你有所幫助。如果你有任何反饋,別忘了給我們寫評論。和我們保持聯系。


via: http://www.linuxidc.com/manage-file-types-and-set-system-time-in-linux/

作者:Aaron Kili 譯者:ictlyh 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

Copyright © Linux教程網 All Rights Reserved