linux文件日期
① linux 如何用zip 打包目錄下指定日期內的文件
在Linux系統中,利用zip命令對指定目錄下的文件進行打包是一項常見的任務。通常情況下,我們需要打包的文件具有特定的時間范圍。比如,僅打包2010年12月內的文件。首先,我們需要指定要操作的目錄,可以是相對路徑也可以是絕對路徑。這里假設我們要操作的目錄名為file/,我們使用ll命令列出該目錄下的文件信息。
接著,我們需要篩選出2010年12月內的文件。這里我們利用grep命令兩次篩選,第一次通過grep 2010過濾出2010年的文件,第二次通過grep Dec進一步篩選出12月的文件。為了將這些文件的名稱提取出來,我們使用gawk命令處理輸出結果,提取出第九列的內容,即文件名。
最後一步是使用zip命令將篩選出的文件打包。這里我們使用-r選項遞歸打包指定目錄下的文件,生成的壓縮文件名為201012.zip。整個打包命令可以寫作:zip -r 201012.zip `ll files/|grep 2010|grep Dec|gawk '{print $9}'`。
通過這種方法,我們可以高效地實現對特定時間范圍內文件的打包操作。值得注意的是,在執行上述命令前,確保安裝了zip工具,並且有許可權訪問指定目錄及其文件。
若需要進一步處理特定月份的文件,可以調整grep命令中的篩選條件。例如,若要打包2010年11月的文件,只需將Dec替換為Nov即可。這種方式不僅適用於2010年,還可以用於其他年份,只需修改grep命令中的年份數字即可。
通過這種方式打包文件,可以有效管理文件,方便後續的備份或傳輸工作。同時,這種方式也適用於其他時間范圍的文件篩選,只需調整命令中的日期條件即可實現。
② 在Linux中如何查看文件的修改日期
在Linux中,查看文件的修改日期有多種方法,以下是幾種常用的方式:
使用”stat”命令:
- 輸入stat filename,可以顯示文件的詳細信息,包括訪問日期和修改日期。
- 若僅需查看修改日期,可使用c選項配合%y標志,即stat c '%y' filename,這樣可以只顯示文件的最後修改日期,同樣適用於文件夾。
使用”date”命令:
- 輸入date r filename,可以直接顯示文件的最後修改時間。
使用”ls l”命令結合”t”選項:
- 輸入ls lt,可以列出長格式的文件信息,並按照修改日期進行排序,最新的文件會排在最前面。
對於網路文件:
- 首先確保安裝了httpie工具。在CentOS/RHEL系統中,使用pip install httpie安裝;在Ubuntu/Deepin/Debian系統中,使用sudo aptget install httpie安裝。
- 安裝完畢後,可以通過httpie命令查看網路上文件的修改時間,例如httpie https://www.example.com/file.png,將file.png替換為實際文件地址即可。
這些方法提供了靈活多樣的手段來查看Linux系統中文件的修改日期,無論是本地文件還是網路文件,都能輕松應對。
③ 在Linux中如何查看文件的修改日期
有時候可能需要檢查有關文件的詳細信息,例如文件的修改日期。當你要檢查文件的最後編輯時間時,本文可能會派上用場。在本文將學習4種方法查看文件的修改日期。
使用stat 命令
stat 命令 可以顯示文件屬性的詳細信息,比如最近一次訪問和修改文件的時間、文件大小等信息,使用起來比較簡單,命令後面只需要加上文件名就可以:
[root@localhost ~]# stat hello_script.sh
File: 『hello_script.sh』
Size: 31 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 67169379 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2020-10-15 19:13:24.628009932 +0800
Modify: 2020-10-15 19:07:18.266426499 +0800
Change: 2020-10-15 19:11:48.227856412 +0800
Birth: -
從上面的輸出中,我們可以看到文件的訪問日期、文件的修改日期、文件許可權的修改日期以及其他參數。
如果只希望查看文件的修改日期,而不考慮所有其他信息,運行以下命令:
[root@localhost ~]# stat -c %y hello_script.sh
2020-10-15 19:07:18.266426499 +0800
-c選項用於指定自定義格式代替默認的輸出,而'%y'標志顯示上次修改時間。對於文件夾,語法保持不變。只需將文件名替換為文件夾名稱即可。
使用date命令
date命令的用法是顯示當前日期。但是當與-r選項一起使用時,可以顯示文件的最後修改日期,如下所示:
[root@localhost ~]# date -r hello_script.sh
Thu Oct 15 19:07:18 CST 2020
使用ls -l命令
ls -l命令通常用於使用長列表顯示有關文件的其他信息,例如文件許可權和所有者,大小和創建日期。可以添加-t選項,這樣就可以按照文件的修改時間來排列:
[root@localhost ~]# ls -lt
或者
[root@localhost ~]# ll -t
total 288
drwxr-xr-x. 2 root root 177 Oct 16 14:36 b
drwxr-xr-x. 2 root root 177 Oct 16 14:36 a
-rwxr-xr-x. 1 root root 119 Oct 15 19:20 backup_script.sh
-rwxr-xr-x. 1 root root 31 Oct 15 19:07 hello_script.sh
-rw-r--r--. 1 root root 227 Oct 13 16:39 content.txt
-rw-r--r--. 1 root root 277159 Oct 12 14:37 a.txt
drwxr-xr-x. 2 root root 195 Aug 6 14:12 Files
-rw-------. 1 root root 1284 Dec 29 2019 anaconda-ks.cfg
使用httpie工具
另一種檢查文件的修改日期的方法是使用httpie ,是HTTP命令行客戶端工具。該工具通常用於與HTTP伺服器和API交互,還可以檢查駐留在web伺服器上文件的修改時間。
首先需要確保安裝了python的pip包管理工具,然後安裝httpie工具:
在 Centos 7/RHEL7中,運行以下命令安裝httpie:
[root@localhost ~]# yum -y install python-pip
[root@localhost ~]# pip install --upgrade pip
[root@localhost ~]# pip install httpie
在Ubuntu / Deepin / Debian中運行以下命令安裝httpie:
$ sudo apt install httpie
安裝完成之後,那麼如何查看web伺服器上文件的修改時間呢?語法如下:
http -h [url] | grep 'Last-Modified'
例如,從www. linux probe.com網站中,查看一張.png格式的圖片修改時間:
[root@localhost ~]# http -h https://www.linuxprobe.com/wp-content/uploads/2020/06/6-1.png | grep -i 'Last-Modified'
Last-Modified: Fri, 05 Jun 2020 14:26:11 GMT
總結
在本文中,介紹了各種方法,可以使用這些方法列出文件的最後修改日期,甚至可以使用httpie工具列出web伺服器上的文件的最後修改日期。