คำถามติดแท็ก tar

รูปแบบไฟล์เก็บถาวร tar และ / หรือยูทิลิตี้บรรทัดคำสั่งสำหรับการทำงานกับไฟล์ tar

3
เครื่องสกัดอเนกประสงค์
ด้วยจำนวนที่เพิ่มขึ้นของรูปแบบไฟล์เก็บถาวร / ไฟล์บีบอัดมีเครื่องมือบรรทัดคำสั่งฟรี / โอเพนซอร์สเดียวที่ใช้ควบคุมกฎทั้งหมดหรือไม่ บางทีสิ่งที่มีชุดของธงที่สอดคล้องกัน / รวมกัน? (บันทึกการอ้างอิงโดยนัยของฉันที่เป็นมิตรกับ tar ) ฉันเคยพบเจอในนามแฝงชุดหนึ่งซึ่งหมายถึงการลดความซับซ้อนของงานการบีบอัด / ยกเลิกการบีบอัดไฟล์ด้วยการเชื่อมโยงtarและอุปกรณ์อื่น ๆ แต่ฉันไม่สามารถหามันได้อีกต่อไป อัปเดต: ฉันจะกำหนดค่าบางอย่างatoolที่ไม่ต้องการใช้unzipเพื่อแยกไฟล์ zip (ซึ่งเห็นได้ชัดว่าไม่สามารถจัดการไฟล์ที่มีขนาดใหญ่กว่า 4GB) และใช้gunzipแทนได้อย่างไร $ aunpack large_file.zip error: Zip file too big (greater than 4294959102 bytes) Archive: large_file.zip warning [large_file.zip]: 1491344848 extra bytes at beginning or within zipfile (attempting to process anyway) …

3
พารามิเตอร์ -f ทำอะไรในคำสั่ง tar
เมื่อใช้tarฉันมักจะรวม-fไว้ในพารามิเตอร์ แต่ฉันไม่รู้ว่าทำไม ฉันเงยหน้าขึ้นมองชายคนนั้นและมันก็พูดว่า; -f, --file [HOSTNAME:]F use archive file or device F (default "-", meaning stdin/stdout) แต่พูดตามตรงฉันไม่รู้ว่ามันแปลว่าอะไร ทุกคนสามารถหลั่งน้ำตาแสงบนมันได้หรือไม่
19 tar 

1
ทำไมการส่งท่อ `tar 'ลงใน` dd' ไม่หยุดจนกว่าดิสก์จะเต็ม
ฉันมีไฟล์เก็บถาวร tar ของดิสก์อิมเมจเดียว ภาพภายในไฟล์ tar นี้มีขนาดประมาณ 4GB ฉันไพพ์เอาท์พุทของtar xfไปddยังเพื่อเขียนดิสก์อิมเมจไปยังการ์ด SD diskdump ไม่เคยหยุดจนกว่าการ์ดจะเต็ม นี่คือเซสชันเชลล์ของฉัน: $ ls -l disk.img.tgz -rw-r--r-- 1 confus confus 192M Okt 5 00:53 $ tar -tvf disk.img.tgz -rw-r--r-- root/root 4294968320 2018-10-05 00:52 disk.img $ lsblk -lb /dev/sdc NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sdc 8:32 1 16022241280 …
18 pipe  tar  dd  disk-image 

4
tar และตัวอักษรหลัก: มันเป็นข้อบกพร่องหรือคุณสมบัติ?
ฉันสงสัยว่าจะถามความแตกต่างของสองคำสั่งนี้ (เช่นคำสั่งของตัวเลือกของพวกเขาเท่านั้นที่แตกต่างกัน): tar -zxvf foo.tar.gz tar -zfxv foo.tar.gz คนแรกวิ่งได้อย่างสมบูรณ์แบบ แต่คนที่สองพูดว่า: tar: You must specify one of the `-Acdtrux' or `--test-label' options Try `tar --help' or `tar --usage' for more information. และ tar ด้วย--test-labelและ-zfxvพูดว่า: tar (child): xv: Cannot open: No such file or directory tar (child): Error is not recoverable: exiting …

4
tar แตกในไดเรกทอรีที่มีชื่อฐานเดียวกันหรือไม่
ผมมีไฟล์ ziped myArchive123.tar.gzเช่น ข้างในมีโฟลเดอร์เหมือนhelloWorld ถ้าฉันแยกมัน: tar -xf myArchive123.tar.gzฉันได้รับhelloWorldโฟลเดอร์: ls myArchive123.tar.gz helloWorld ฉันต้องการให้ผลลัพธ์เป็นชื่อเดียวกับชื่อไฟล์ลบด้วยนามสกุล. tar.gz เช่น: tar <magic paramaters> myArchive123.tar.gz ls myArchive123.tar.gz myArchive123 cd myArchive123 ls helloWorld สามารถทำได้หรือไม่ ฉันไม่เคยรู้ว่ามีอะไรอยู่ในคลัง อาจเป็นโฟลเดอร์ได้หลายไฟล์ ฉันจะโอเคกับเครื่องมืออื่นถ้า tar ไม่สามารถทำได้ ฉันจะโอเคกับฟอร์มที่ยาวขึ้นซึ่งสามารถเปลี่ยนเป็นสคริปต์ได้ แก้ไข ในขณะที่ฉันแฮ็คสคริปต์ที่ดูเหมือนว่าจะทำให้งานเสร็จ (ดูคำตอบที่โพสต์ของฉันด้านล่าง) หากสามารถปรับปรุงได้โปรดโพสต์ความคิดเห็น / คำตอบเพิ่มเติม สิ่งสำคัญคือมันควรจะบรรจุลงในหนึ่งซับเหมือน: extract <file>
18 tar 

4
การสร้างไฟล์เก็บถาวรโดยใช้ tar รวมถึง 'dotfiles' ทั้งหมด แต่ไม่รวมไดเรกทอรีย่อยทั้งหมดและ / wo โครงสร้างไดเรกทอรี
ฉันต้องการสำรองข้อมูล 'dotfiles' (fe .zshrc) ทั้งหมดภายใต้ไดเรกทอรีบ้านของฉันด้วยtarแต่ไม่รวมโครงสร้างไดเรกทอรีและไดเรกทอรีย่อยทั้งหมด ฉันได้ลองหลายครั้งด้วยคำสั่งที่แตกต่างกัน แต่สิ่งที่ดีที่สุดที่ฉันทำได้คือการเก็บถาวรซึ่งรวมถึงไดเรกทอรีที่ซ่อนอยู่$HOMEด้วย #!/bin/zsh BACKUPFILE=dotfile_backup.tar.gz tar --create --file=$HOME/$BACKUPFILE --auto-compress --no-recursion --exclude=. --exclude=.. --exclude=*/ --directory=$HOME .* ฉันคิดเกี่ยวกับการใช้findและการวางท่อผลลัพธ์เพื่อ tar แต่ไม่มีโชค มีใครบางคนรู้วิธีที่จะทำสิ่งนี้ให้สำเร็จซึ่งดูเหมือนจะง่ายหรือไม่? PS: ส่วนใหญ่เวลาที่ฉันใช้ tar เพื่อสร้างที่เก็บถาวรฉันต้องคิดถึงการ์ตูน xkcd: :)
18 tar 


3
มีวิธีแปลง zip เป็น tar โดยไม่ต้องแตกไฟล์ไปยังระบบไฟล์หรือไม่?
มีวิธีแปลงzipไฟล์เก็บถาวรเป็นtarไฟล์เก็บถาวรโดยไม่แยกไปที่ไดเรกทอรีชั่วคราวก่อนหรือไม่? (และโดยไม่ต้องเขียนการใช้งานของฉันเองtarหรือunzip)
17 shell-script  tar  zip 

3
ลบไฟล์ออกจากไฟล์เก็บถาวร tar
ฉันมีไฟล์ขนาดใหญ่foo.tar.xzที่มีจำนวนมาก (พูดถึง 20,000 ไฟล์) ฉันพบว่าไฟล์เก็บถาวรนี้มีไฟล์ (ประมาณ 5,000 ไฟล์) ที่ฉันไม่ต้องการ ฉันมีพื้นที่ว่างในดิสก์ไม่เพียงพอในการขยายขนาดทั้งหมดลงบนดิสก์ นอกจากนี้ฉันกลัวว่าคุณลักษณะ / สิทธิ์อาจหายไปหากทำเช่นนั้น ฉันมีพื้นที่เพียงพอที่จะโฮสต์ไฟล์เก็บถาวรที่บีบอัดสองชุด มีเครื่องมือในการลบไฟล์บางไฟล์ออกจากไฟล์เก็บถาวร (ระบุด้วย regex ในชื่อไฟล์) on-the-fly หรือไม่โดยไม่ทำการแตกไฟล์ลงในไฟล์แต่ละไฟล์หรือไม่?
17 tar 

5
สร้าง tar เก็บถาวรของไดเรกทอรียกเว้นไฟล์ที่ซ่อนอยู่?
ฉันต้องการสร้างไฟล์เก็บถาวร tar ของไดเรกทอรีเฉพาะ (พร้อมไดเรกทอรีย่อยของหลักสูตร) แต่เมื่อฉันทำโดยใช้คำสั่ง tar ฉันได้รับรายชื่อของไฟล์ที่รวมอยู่เช่น: calendar_final /._ style.css calendar_final / style.css อย่างที่คุณเห็นมีไฟล์เดียวกันสองเวอร์ชัน สิ่งนี้ไปสำหรับทุกไฟล์และมีมากมาย ฉันจะแยกไฟล์ชั่วคราวด้วยคำนำหน้า. _ ออกจากไฟล์เก็บถาวร tar ได้อย่างไร
17 tar 

1
ทาร์ไฟล์ที่มีวันที่เป็นชื่อ?
ฉันพยายามที่จะ tar และ gzip ไฟล์ที่มีวันที่และเวลาเป็นชื่อ: date=$(date '+%d-%m-%Y_%H:%M:%S'); tar -zcf "$date".tar.gz repo/bin/ แต่ฉันกลับมา: tar (child): Cannot connect to 17-08-2017_21: resolve failed tar: Child returned status 128 tar: Error is not recoverable: exiting now เกิดอะไรขึ้นที่นี่และฉันจะแก้ไขได้อย่างไร tar พยายามเชื่อมต่อกับชื่อราวกับว่าเป็น IP หรือไม่
16 bash  tar 

5
บีบอัดไฟล์ขนาดใหญ่จำนวนมากอย่างรวดเร็ว
ฉันมีการสร้างข้อมูลบันทึกข้อมูลประมาณ 200 GB ต่อวันกระจายอยู่ในไฟล์บันทึกต่างๆประมาณ 150 ไฟล์ ฉันมีสคริปต์ที่ย้ายไฟล์ไปยังตำแหน่งชั่วคราวและทำ tar-bz2 ในไดเรกทอรีชั่วคราว ฉันได้รับผลลัพธ์ที่ดีเนื่องจากมีการบีบอัดบันทึก 200 GB ถึงประมาณ 12-15 GB ปัญหาคือมันใช้เวลาตลอดไปในการบีบอัดไฟล์ cronงานทำงานที่ 02:30 ทุกวันและยังทำงานต่อไปจนถึง 5: 00-6: 12:00 มีวิธีปรับปรุงความเร็วของการบีบอัดและทำให้งานเสร็จเร็วขึ้นหรือไม่ ความคิดใด ๆ ไม่ต้องกังวลกับกระบวนการอื่น ๆ ทั้งหมดตำแหน่งที่มีการบีบอัดเกิดขึ้นบนNASและฉันสามารถเรียกใช้ NAS บนVMเฉพาะและเรียกใช้สคริปต์การบีบอัดจากที่นั่น นี่คือการส่งออกของด้านบนสำหรับการอ้างอิง: top - 15:53:50 up 1093 days, 6:36, 1 user, load average: 1.00, 1.05, 1.07 Tasks: 101 total, 3 running, …

8
ไฟล์ tar เท่านั้นไม่มีไดเร็กทอรี
ฉันอาจจะเขียนเชลล์สคริปต์เพื่อค้นหาไฟล์เท่านั้นจากนั้นส่งรายการไปยัง tar แต่ฉันสงสัยว่ามีคุณลักษณะในตัวใน tar ที่อนุญาตให้ทำเช่นนั้นในบรรทัดคำสั่งเดียวหรือไม่ ตัวอย่างเช่นฉันพบ--no-recursionสวิตช์ แต่เมื่อฉัน: tar --no-recursion -cvf mydir.tar mydir มันเก็บเฉพาะชื่อของรายการในไดเรกทอรี (รวมถึงไดเรกทอรีย่อย!) แต่มันไม่ได้เก็บไฟล์ใด ๆ ฉันก็ลอง: tar --no-recursion -cvf mydir.tar mydir/* แต่ในขณะที่มันเก็บไฟล์เท่านั้นมันยังเก็บชื่อของไดเรกทอรีย่อย มีวิธีบอกไฟล์ tar เท่านั้นไม่มีไดเรกทอรีหรือไม่
16 tar 

4
ไฟล์รายการ tar เท่านั้น
สนุกจริง: ถ้าคุณใช้จัดการที่เก็บข้อมูลและสารสกัดจาก .tar.gz เพื่อให้คุณมี "โครงสร้างไดเรกทอรี Keep" unticked, คุณจะได้รับtarbomb tar -ztfแสดงรายการไฟล์และไดเรกทอรีทั้งหมดในไฟล์ tar มีวิธีการแสดงรายการไฟล์ทั้งหมดในไฟล์ tar โดยไม่มีโครงสร้างไดเรกทอรีหรือไม่?
16 tar 


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.