কমান্ড-লাইন থেকে বের না করে আমি কীভাবে tar.gz ফাইলের সামগ্রী দেখতে পারি?


242

আমি কোনও সংরক্ষণাগারের বিষয়বস্তু (ফাইল এবং ফোল্ডারগুলির তালিকা) দেখতে চাই, উদাহরণস্বরূপ কোনও tar.gzফাইল এটি বের না করেই

এটি করার জন্য কোনও পদ্ধতি আছে?

উত্তর:


260

টার্মিনালে নীচের কমান্ডটি চালনা করুন টর্পজ ফাইলের বিষয়বস্তু এটি বের না করে দেখতে:

tar -tf filename.tar.gz

টার্মিনালে সংক্ষেপিত টার্বল ফাইল তালিকাভুক্তির স্ক্রিনশট

-t, --list
একটি সংরক্ষণাগারের বিষয়বস্তু তালিকাভুক্ত করুন। যুক্তিগুলি alচ্ছিক। যখন দেওয়া হয়, তারা তালিকার জন্য সদস্যদের নাম উল্লেখ করে।


1
সংক্ষিপ্ত ফাইলের ভিতরে দেখতে এই সমস্ত উদাহরণগুলিও অন্য ধরণের ফর্ম্যাটে কাজ করে। জিপ, রার, টার ইত্যাদি?
সিয়াস্তো পাইকার্জ

3
tar -tvf xxx.tgzএটি ফাইলগুলির বিশদ বৈশিষ্ট্যগুলিও দেখায়।
এরিক ওয়াং

4
এটি treeকোনও গাছের দর্শন দেখতে পাইপ করুনtar -tf filename.tar.gz | tree
ব্লকলুপ করুন

জিপ / রার ব্যবহারের জন্য unzip -l/unrar -l
পি্লুমো

যদি আপনি নির্দিষ্ট গভীরতা / স্তর পর্যন্ত তালিকাবদ্ধ করতে চান তবে কেবল এখানে দেখুন
হল্জকোহেলিংরিল

119

আপনি ভিএমও ব্যবহার করতে পারেন

vim filename.tar.gz

8
এটা সত্যিই দারুন. আপনি ফাইলের বিষয়বস্তু দেখতে পারেন!
নিকো

1
অথবা প্রাক্তন সম্পাদক ব্যবহার করুন: ex +%p foo.tar.gz
কেনারব

@ নিকো টিজিজেডের মধ্যে থাকা কোনও ফাইলের সামগ্রী দেখতে আপনি এটি কীভাবে ব্যবহার করবেন?
1252748

1
আপনি যখন ভিএম ( vim file.tar.gz) দিয়ে ডি ফাইল খুলবেন তখন এটিতে "কার্সার সহ একটি ফাইল নির্বাচন করুন এবং ENTER টিপুন" বলে says আপনি কেবল এটি করেন, একটি ফাইলের উপর দিয়ে কার্সারটি সরান এবং ENTER টিপুন।
নিকো

2
বিশাল সংরক্ষণাগার সহ আপনার ধৈর্য ধরতে হবে। এটি ফোল্ডার কাঠামো লোড করতে খুব দীর্ঘ হতে পারে। :-)
হুগো এইচ

41

lessgzসংকুচিত এবং সঙ্কুচিত tarসংরক্ষণাগারগুলিও খুলতে পারে । এটি আপনাকে একটি সুন্দর ls -lস্টাইল আউটপুটও দেয় :

$ less ~/src/compiz_0.9.7.8-0ubuntu1.6.debian.tar.gz
drwxrwxr-x 0/0               0 2012-09-21 11:41 debian/
drwxrwxr-x 0/0               0 2012-08-09 13:32 debian/source/
-rw-rw-r-- 0/0              12 2012-08-09 13:32 debian/source/format
-rw-rw-r-- 0/0              25 2012-08-09 13:32 debian/libdecoration0-dev.docs
-rw-rw-r-- 0/0              25 2012-08-09 13:32 debian/compiz-dev.docs
-rw-rw-r-- 0/0             347 2012-08-09 13:32 debian/compiz-core.install
-rw-rw-r-- 0/0             125 2012-08-09 13:32 debian/libdecoration0-dev.install
...

এবং কারণ এটি less, আপনি এটির মাধ্যমে স্ক্রোল করতে পারেন, এটি অনুসন্ধান করতে পারেন However তবে এটি অন্যান্য সংক্ষেপণ অ্যালগরিদমের (আমার অভিজ্ঞতার সাথে) খারাপভাবে ব্যর্থ হয়।


4
আমার পক্ষে কাজ করেনি। বাইনারি ফাইল হিসাবে প্রদর্শিত
জেরোজেজে

2
আপনি নিশ্চিত যে এখানে আপনি প্রদর্শন করছেন না তার aliasজন্য বিশেষ বিকল্পগুলির সাথে আপনার একটি lessনেই? আমি এটি দেখার চেষ্টা করেছি, কিন্তু এটি কার্যকর হয়নি। আমার জন্য কোনও এলিয়াস সেটআপ নেই less
কোড_ড্রেড

36

আপনি z- র কমান্ড ব্যবহার করতে পারে: zcat, zless, zgrep

কোনও ফাইলের সামগ্রী দেখতে ব্যবহার করুন:

zcat file.gz   

কিছু ব্যবহার গ্রেপ করতে:

zgrep test file.gz   

ফাইলগুলির মধ্যে পার্থক্য পরীক্ষা করতে ব্যবহার করুন:

zdiff file1.gz file2.gz

এগুলি মাত্র কয়েকটি উদাহরণ, আরও অনেক কিছু রয়েছে।


9

tarএর -tপতাকাটি আপনার জন্য সামগ্রী তালিকাবদ্ধ করবে। যে আপনার অন্য পতাকার যোগ করুন (তাই -tvfzএকটি জন্য tar.gz, -tvfjএকটি জন্য tar.bz2, ইত্যাদি) এবং আপনি আহরণের ছাড়া ব্রাউজ করতে পারেন। সেখান থেকে আপনি খুব সহজেই একক ফাইলগুলি বের করতে পারেন

tar -xvfz mybackup.tar.gz path/to/file

বড় সমস্যাটি tarহ'ল অন্য সমস্ত পতাকা মনে রাখা । তাই আমি আমার সমস্ত সংরক্ষণাগারটি করার 7zজন্য সাধারণত ( p7zip-fullপ্যাকেজটির) উপর নির্ভর করি। আমি এটি পুরোপুরি ভাল বলে দাবি করব না তবে এটি প্রায় সমস্ত কিছু সমর্থন করে (সংক্ষেপণের ধরণ উল্লেখ না করে) এবং যুক্তিগুলি যৌক্তিক।

7z l archive.ext
7z e archive.ext path/to/file

এটা অবশ্যই কম সক্ষম, কিন্তু আপনি না প্রয়োজন এটি ব্যবহার করতে মানুষ পাতা।

মিডনাইট কমান্ডার ( mc)ও আছেন। এটি কোয়াসিফ-গ্রাফিকাল টার্মিনাল ভিত্তিক ফাইল পরিচালনার জন্য একটি চারিদিক ব্যাডাস এবং কিছু হালকা পরীক্ষার সাথে এটি আপনাকে উভয় .tar.gzএবং .7zসংরক্ষণাগারগুলিতে ব্রাউজ করতে দেয় । আমি নিশ্চিত নই যে এটি আরও কতজনকে সমর্থন করে।


টি-এআর ব্যবহৃত হত এবং নামটি প্রকৃতপক্ষে টেপ আর্কিভার হিসাবে দাঁড়িয়ে থাকে , এটি চিৎকার করে তোলে এবং অনেক ক্ষেত্রেই পিআইএ হয়। বিশেষত অনিবার্য ডাবল টার + জিজেড হিসাবে এটি নিষ্ঠুর। এছাড়াও এখন 7zip এ চলেছে।
ফ্র্যাঙ্ক নোক্ক

9

ঠিক আছে, এটি ফাইলের উপর নির্ভর করে। বেশিরভাগ (ডি) সংক্ষেপণ প্রোগ্রামগুলিতে একটি পতাকা থাকে যা একটি সংরক্ষণাগারগুলির বিষয়বস্তু তালিকাভুক্ত করে।

  1. tar/ tar.gz/ tgz/ tar.xz/ tar.bz2/ tbzফাইল

    $ tar tf foo.tgz 
    dir1/
    dir1/subdir1/
    dir1/subdir1/file
    dir1/subdir2/
    dir1/subdir2/file
    dir2/
    
  2. zip নথি পত্র

    $ zip -sf foo.zip 
    Archive contains:
      dir1/
      dir2/
      dir1/subdir1/
      dir1/subdir1/file
      dir1/subdir2/
      dir1/subdir2/file
    Total 6 entries (0 bytes)
    
  3. 7zip নথি পত্র

    $ 7z l foo.7z 
    
    7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
    p7zip Version 9.20 (locale=en_US.utf8,Utf16=on,HugeFiles=on,4 CPUs)
    
    Listing archive: foo.7z
    
    --
    Path = foo.7z
    Type = 7z
    Solid = -
    Blocks = 0
    Physical Size = 168
    Headers Size = 168
    
       Date      Time    Attr         Size   Compressed  Name
    ------------------- ----- ------------ ------------  ------------------------
    2015-03-30 19:00:07 ....A            0            0  dir1/subdir1/file
    2015-03-30 19:00:07 ....A            0            0  dir1/subdir2/file
    2015-03-30 19:07:32 D....            0            0  dir2
    2015-03-30 19:00:07 D....            0            0  dir1/subdir2
    2015-03-30 19:00:07 D....            0            0  dir1/subdir1
    2015-03-30 19:00:06 D....            0            0  dir1
    ------------------- ----- ------------ ------------  ------------------------
                                         0            0  2 files, 4 folders
    
  4. rar নথি পত্র

     $ rar v foo.rar 
    
    RAR 4.20   Copyright (c) 1993-2012 Alexander Roshal   9 Jun 2012
    Trial version             Type RAR -? for help
    
    Archive foo.rar
    
    Pathname/Comment
                      Size   Packed Ratio  Date   Time     Attr      CRC   Meth Ver
    -------------------------------------------------------------------------------
     dir1/subdir1/file
                         0        8   0% 30-03-15 19:00 -rw-r--r-- 00000000 m3b 2.9
     dir1/subdir2/file
                         0        8   0% 30-03-15 19:00 -rw-r--r-- 00000000 m3b 2.9
     dir1/subdir1
                         0        0   0% 30-03-15 19:00 drwxr-xr-x 00000000 m0  2.0
     dir1/subdir2
                         0        0   0% 30-03-15 19:00 drwxr-xr-x 00000000 m0  2.0
     dir1
                         0        0   0% 30-03-15 19:00 drwxr-xr-x 00000000 m0  2.0
     dir2
                         0        0   0% 30-03-15 19:07 drwxr-xr-x 00000000 m0  2.0
    -------------------------------------------------------------------------------
        6                0       16   0%
    

এটি বেশিরভাগ জনপ্রিয় সংরক্ষণাগার ফর্ম্যাটগুলির। এই সমস্ত বিষয় মাথায় রেখে আপনি একটি ছোট স্ক্রিপ্ট লিখতে পারেন যা আপনি যে ফাইলটি দিয়েছেন তার প্রসারণের উপর নির্ভর করে উপযুক্ত কমান্ড ব্যবহার করে:

#!/usr/bin/env bash

for file in "$@"
do
    printf "\n-----\nArchive '%s'\n-----\n" "$file"
    ## Get the file's extension
    ext=${file##*.}
    ## Special case for compressed tar files. They sometimes
    ## have extensions like tar.bz2 or tar.gz etc.
    [[ "$(basename "$file" ."$ext")" =~ \.tar$ ]] && ext="tgz"

    case $ext in
        7z)
            type 7z >/dev/null 2>&1 && 7z l "$file" || 
            echo "ERROR: no 7z program installed"
            ;;
        tar|tbz|tgz)
            type tar >/dev/null 2>&1 && tar tf "$file"|| 
            echo "ERROR: no tar program installed"
            ;;
        rar)
            type rar >/dev/null 2>&1 && rar v "$file"|| 
            echo "ERROR: no rar program installed"
            ;;
        zip)
            type zip >/dev/null 2>&1 && zip -sf "$file"|| 
            echo "ERROR: no zip program installed"
            ;;
        *)
            echo "Unknown extension: '$ext', skipping..."
            ;;
    esac
done

আপনার মধ্যে সেই স্ক্রিপ্টটি সংরক্ষণ করুন PATHএবং কার্যকর করুন ut তারপরে আপনি যে কোনও আর্কাইভের বিষয়বস্তু তালিকাভুক্ত করতে পারেন:

$ list_archive.sh foo.rar foo.tar.bz foo.tar.gz foo.tbz foo.zip

-----
Archive 'foo.rar'
-----

RAR 4.20   Copyright (c) 1993-2012 Alexander Roshal   9 Jun 2012
Trial version             Type RAR -? for help

Archive foo.rar

Pathname/Comment
                  Size   Packed Ratio  Date   Time     Attr      CRC   Meth Ver
-------------------------------------------------------------------------------
 dir1/subdir1/file
                     0        8   0% 30-03-15 19:00 -rw-r--r-- 00000000 m3b 2.9
 dir1/file
                     0        8   0% 30-03-15 19:29 -rw-r--r-- 00000000 m3b 2.9
 dir1/subdir1
                     0        0   0% 30-03-15 19:00 drwxr-xr-x 00000000 m0  2.0
 dir1
                     0        0   0% 30-03-15 19:29 drwxr-xr-x 00000000 m0  2.0
 dir2
                     0        0   0% 30-03-15 19:07 drwxr-xr-x 00000000 m0  2.0
-------------------------------------------------------------------------------
    5                0       16   0%


-----
Archive 'foo.tar.bz'
-----
dir1/
dir1/subdir1/
dir1/subdir1/file
dir1/file
dir2/

-----
Archive 'foo.tar.gz'
-----
dir1/
dir1/subdir1/
dir1/subdir1/file
dir1/file
dir2/

-----
Archive 'foo.tbz'
-----
dir1/
dir1/subdir1/
dir1/subdir1/file
dir1/file
dir2/

-----
Archive 'foo.zip'
-----
Archive contains:
  dir1/
  dir1/subdir1/
  dir1/subdir1/file
  dir1/file
  dir2/
Total 5 entries (0 bytes)

এবং যেহেতু কেউ উল্লেখ করেছেন যে কম সম্পাদক, স্বাভাবিকভাবেই, ইমাকগুলিও এটি করতে পারেন:

একটি সংরক্ষণাগারের বিষয়বস্তু দেখাচ্ছে ইম্যাকস


6

vimআপনার সংরক্ষণাগারটি ব্রাউজ করতে এবং ফাইলগুলি খুলতে (কমপক্ষে পাঠ্যের মতো ফাইলগুলি) ব্যবহার করবেন না কেন :

vim archive.tar.gz

এখানে চিত্র বর্ণনা লিখুন

স্ক্রোল Enterকরতে এবং একটি ফাইল খোলার জন্য তীর কী টিপুন ।


4

মধ্যরাত্রি কমান্ডার ( mc) ও যদিও আমি এই প্রতারণার যেহেতু MC একটি বিট বিবেচনা, একটি ভাল সংকুচিত ফাইল ভিউয়ার হয়েছে হয় একটি ফাইল ম্যানেজার, যদিও একটি টেক্সট-ভিত্তিক এক।

এছাড়াও, যদি আপনি যা চান তা হ'ল সংকুচিত আর্কাইভগুলির ভিতরে কী রয়েছে তা যদি আপনি দেখতে চান তবে প্রতিটি সংক্ষেপকের জন্য আপনি "ভিউ" কমান্ড শিখতে পারেন। tar tzvfট্যারি ফাইলের সামগ্রীগুলি আপনাকে প্রদর্শন করবে, unzip -lএটি একটি জিপ ফাইলের জন্য করবে এবং আরও অনেক কিছু।


2

ব্যবহার view filename.tar.gz করাও কাজ করবে। অনেকটা একইভাবে ভিম করে, তবে লেখার অনুমতি ছাড়াই।


2

lesspipelessপ্যাকেজের অংশ হিসাবে ডিফল্টরূপে ইনস্টল করা শেল স্ক্রিপ্ট যা tar.gzআর্কাইভের বিষয়বস্তুগুলির পাশাপাশি বিভিন্ন সাধারণ সংরক্ষণাগার ফাইল ফর্ম্যাটগুলির একটি তালিকাও তালিকাভুক্ত করতে পারে ।

$ lesspipe example.tar.gz
drwxrwxr-x ubuntu/ubuntu     0 2018-11-16 05:32 example/
-rw-rw-r-- ubuntu/ubuntu     7 2018-11-16 05:32 example/ask.txt
-rw-rw-r-- ubuntu/ubuntu     7 2018-11-16 05:32 example/ubuntu.txt

পরিবেশের পরিবর্তনশীল যথাযথভাবে সেট করা থাকলে এটি ইনপুট প্রিপ্রোসেসর হিসাবে lessকমান্ড দ্বারা ( অলির উত্তর দেখুন ) বলা হয় $LESSOPEN

যদি দুঃসাহসী বোধ হয় তবে vi /usr/bin/lesspipeএটি কী আদেশ ব্যবহার করে তা দেখার জন্য শিখর করুন । tar.gzএক্সটেনশনের সাথে মিলে যাওয়া ফাইলগুলির জন্য , আমরা দেখতে পাচ্ছি যে এটি tar tzvfহুডের নীচে --force-localএকটি অস্পষ্ট বৈশিষ্ট্যটি অক্ষম করার বিকল্পের সাথে ব্যবহার করে tarঅন্যথায় দূরবর্তী টেপ ড্রাইভ ব্যবহার করার জন্য একটি কমান্ড দিয়ে ফাইলের নামগুলিতে কলোনকে বিভ্রান্ত করবে :

*.tar.gz|*.tgz|*.tar.z|*.tar.dz)
        tar tzvf "$1" --force-local

নোট করুন যেহেতু এটি প্রাথমিকভাবে প্রিপ্রোসেসর হিসাবে ডিজাইন করা হয়েছে তাই এটি lessফাইলের ধরণটি স্বীকৃতি না দিলে কিছুই আউটপুট দেয় না। আমি লক্ষ্য করেছি যে .tar.gzডাউনলোড করা কিছু ফাইল কাজ করবে না কারণ তারা ফাইলের নাম সত্ত্বেও প্রকৃতপক্ষে gzip সংক্ষেপণ ব্যবহার করে নি।


0

আপনি যদি সংরক্ষণাগারটি বের করে না ফেলে বা কোনওভাবেই ডিস্কে না লিখে কোনও সংরক্ষণাগারের মধ্যে কোনও নির্দিষ্ট ফাইলের বিষয়বস্তু দেখতে চান তবে কোনও ফাইলের পরিবর্তে স্টাডাউটে লিখতে -O (মূলধন) পতাকা ব্যবহার করুন।

tar -Oxvf gerald.tar.gz /path/to/sandra.txt | less

নিশ্চিত হয়ে নিন যে ও এর আগে আসবে বা এটি ফাইলের নাম হিসাবে ওকে পার্স করার চেষ্টা করবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.