萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux下不解壓壓縮文件如何直接查看某個文件大小

Linux下不解壓壓縮文件如何直接查看某個文件大小

  在進行Linux系統操作的時候,有時會遇到壓縮文件過大的情況,解壓不方便,如果只需要其中的某個文件,而又想知道該文件有多大的話,該怎麼辦呢?下面小編就給大家介紹下Linux下在不解壓tar.gz文件的情況下如何查看其中文件的大小,一起來學習下吧。

 Linux下不解壓壓縮文件如何直接查看某個文件大小

  如何不解壓tar.gz文件查看其中的文件大小

  tar tvf my_file.tar.gz

  輸出形如:

  -rwxr-xr-x root/root 2348366 2010-10-26 11:09:46 File_1.txt

  -rwxr-xr-x root/root 2383552 2010-10-26 12:52:45 File_2.txt

  -rw-r–r– root/root 89106866 2010-12-20 14:30:01 File_3.txt

  從左起第三列數據就是文件大小(單位:字節),第6列就是文件名。如果要看得更清楚一點,用awk來過濾一下輸出的結果:

  tar tvf my_file.tar.gz | awk ‘{print $3, $6}’

  這樣就只輸出第3和第6列,輸出形如:

  2348366 File_1.txt

  2383552 File_2.txt

  89106866 File_3.txt

  如果要以KB/MB/GB來顯示文件大小,可以用第3列除N個1024,例如,如果要顯示為GB,則:

  tar tvf my_file.tar.gz | awk ‘{print $3/1024/1024/1024, $6}’

  字節數連除3個1024,就是GB了,輸出形如:

  0.00218708 File_1.txt

  0.00221985 File_2.txt

  0.0829872 File_3.txt

  如果對一個超大的文件(例如,上百G),並且壓縮包裡包含很多文件的話,這個過程將很漫長,讓shell命令在後台執行,並將結果輸出到一個文件中是一個比較合理的做法,如下:

  nohup tar tvf my_file.tar.gz | awk ‘{print $3/1024/1024/1024, $6}’ 》 /root/result.txt &

  nohup 是保證shell命令無中斷(網絡狀況不佳時,SecureCRT等客戶端軟件有可能中斷與服務器的連接,從而命令還沒執行完就被中斷了),重定向符就不用說了,最後結果保存到了/root/目錄下的result.txt文件中。

  上面就是Linux下查看壓縮文件內文件大小的方法介紹了,如果你不知道如何查看壓縮文件中的文件有多大,可以試試本文介紹的方法,希望對你有所幫助。

copyright © 萬盛學電腦網 all rights reserved