ต้องการโปรแกรมแก้ไข hex ที่ดีสำหรับ Linux [ปิด]


365

ฉันต้องการโปรแกรมแก้ไข HEX ที่ดีสำหรับ Linux และโดยดีฉันหมายถึง:

  • รวดเร็ว
  • ค้นหา / แทนที่คุณสมบัติ
  • สามารถแสดงข้อมูลไม่เพียง แต่ในเลขฐานสิบหก แต่ยังสามารถเป็นเลขฐานสองฐานแปดและอื่น ๆ
  • สามารถทำงานกับไฟล์ขนาดใหญ่ (> 1 gb) ได้โดยไม่ช้าและไม่ตอบสนอง (ข้อกำหนดนี้สำคัญ)
  • อีกทางเลือกหนึ่งคือมีคุณสมบัติการเปรียบเทียบ / diff บางส่วน

คุณแนะนำอะไรได้บ้าง


20
สำหรับ Ubuntu: jeex(GTK), okteta(KDE) oktetaดีกว่ามาก
Janus Troelsen

40
ฉันดีใจที่เมื่อคำถามดังกล่าวถูกปิดพวกเขาจะไม่ถูกลบและสามารถลงคะแนนได้ ด้วยวิธีนี้ฉันสามารถเห็นรูปแบบคำถาม & คำตอบที่ฉันต้องการแทนที่จะอ่านฟอรัมที่ไม่มีประโยชน์ที่อื่นในอินเทอร์เน็ต
Tyler Collier

1
ฉันใช้sweetscape.com/010editorบน Linux ไม่ฟรี แต่คุ้มค่ากับเงินที่เสียไป (ไม่มีส่วนเกี่ยวข้อง)
kervin

19
wtf เมื่อปิดสิ่งนี้ "เครื่องมือซอฟต์แวร์ที่ใช้กันทั่วไปโดยโปรแกรมเมอร์" จะทำให้เรื่องนี้ในหัวข้อ (และ "ไม่ซ้ำกับการพัฒนาซอฟต์แวร์" เป็นเพียงความต้องการที่โง่ ... ไม่มีอะไรที่เป็นเอกลักษณ์ในการพัฒนาซอฟต์แวร์เช่นฉันสามารถใช้คอมไพเลอร์ C สำหรับการเปรียบเทียบฮาร์ดแวร์) โปรแกรมแก้ไขฐานสิบหกมีประโยชน์สำหรับการเขียนโปรแกรมเช่น โปรโตคอลไบนารีและรูปแบบไฟล์; และการใช้ประโยชน์ดิสก์โดยเฉพาะอย่างยิ่งสำหรับการกู้คืนข้อมูล ในกรณีของฉันฉันกำลังจะเขียนโปรแกรมหลามเพื่อหาพาร์ติชัน NTFS ที่หายไป (testdisk ล้มเหลวเนื่องจากใช้ CHS ... wtf) และต้องการเห็น "ความมหัศจรรย์" ของพาร์ติชันที่ดีในตัวแก้ไข hex ก่อน
ปีเตอร์

4
กฎที่ใช้ในการปิดนี้คือโง่ คำแนะนำสำหรับเครื่องมือโอเพนซอร์ซเพื่อช่วยในการทำงานของเราคือสิ่งใด ๆ
Juan Jimenez

คำตอบ:


293

Blessเป็นตัวแก้ไข hex ที่มีคุณภาพสูงเต็มรูปแบบ

มันเขียนใน mono / Gtk # และแพลตฟอร์มหลักของมันคือ GNU / Linux อย่างไรก็ตามมันควรจะสามารถทำงานได้โดยไม่มีปัญหาในทุกแพลตฟอร์มที่เรียกใช้ขาวดำและ Gtk #

ปัจจุบัน Bless มีคุณสมบัติดังต่อไปนี้:

  • การแก้ไขไฟล์ข้อมูลขนาดใหญ่และอุปกรณ์บล็อกอย่างมีประสิทธิภาพ
  • การเลิกทำหลายระดับ - ทำซ้ำ
  • มุมมองข้อมูลที่ปรับแต่งได้
  • การแสดงผลข้อมูลที่รวดเร็วบนหน้าจอ
  • หลายแท็บ
  • ค้นหาและแทนที่การดำเนินการอย่างรวดเร็ว
  • ตารางการแปลงข้อมูล
  • ความสามารถในการคัดลอก / วางขั้นสูง
  • การเน้นรูปแบบการเลือกให้ตรงกับในไฟล์
  • สถาปัตยกรรมที่ใช้ปลั๊กอิน
  • ส่งออกข้อมูลไปยังข้อความและ html (อื่น ๆ ที่มีปลั๊กอิน)
  • การใช้งานข้อมูลระดับบิต
  • คู่มือผู้ใช้ที่ครอบคลุม

wxHexEditorเป็นอีกหนึ่งตัวแก้ไข Hex ที่สร้างขึ้นเนื่องจากไม่มีตัวแก้ไข hex ที่ดีสำหรับระบบ Linux โดยเฉพาะสำหรับไฟล์ขนาดใหญ่

  • มันใช้ตัวอธิบายไฟล์ 64 บิต (รองรับไฟล์หรืออุปกรณ์ที่มีขนาดสูงสุด 2 ^ 64 ไบต์หมายถึง exabytes บางตัว แต่ทำการทดสอบไฟล์ PetaByte เพียง 1 ไฟล์ (ยัง))
  • มันไม่ได้คัดลอกไฟล์ทั้งหมดไปยัง RAM ของคุณ ทำให้รวดเร็วและสามารถเปิดไฟล์ได้ (ขนาดใดคือ Multi Giga <Tera <Peta <Exabytes)
  • สามารถเปิดอุปกรณ์ของคุณบน Linux, Windows หรือ MacOSX
  • การใช้หน่วยความจำ: ปัจจุบัน ~ 10 MegaBytes ขณะเปิดหลายไฟล์> ~ 8GB
  • สามารถใช้งานผ่านการเข้ารหัส XOR
  • เขียนด้วย C ++ / wxWidgets GUI libs และสามารถใช้กับระบบปฏิบัติการอื่น ๆ เช่น Mac OS, Windows เป็นแอปพลิเคชั่นพื้นฐาน
  • คุณสามารถคัดลอก / แก้ไข Disks, HDD Sectors ของคุณได้ด้วย (มีประโยชน์สำหรับไฟล์ช่วยเหลือ / พาร์ติชั่นด้วยมือ)
  • คุณสามารถลบ / ใส่ไบต์ไฟล์ได้มากกว่าหนึ่งครั้งโดยไม่ต้องสร้างไฟล์ชั่วคราว

DHEXเป็นมากกว่า hex editor อื่น ๆ :มันมีโหมด diff ซึ่งสามารถใช้เพื่อเปรียบเทียบไบนารีไฟล์สองไฟล์ได้อย่างง่ายดายและสะดวก เนื่องจากมันขึ้นอยู่กับ ncurses และเป็นรูปแบบมันจึงสามารถทำงานได้กับระบบและสถานการณ์ต่างๆ ด้วยการใช้บันทึกการค้นหาทำให้สามารถติดตามการเปลี่ยนแปลงในการวนซ้ำของไฟล์ต่าง ๆ ได้อย่างง่ายดาย บทความ Wikipedia

คุณสามารถเรียงลำดับบน Linux เพื่อหาข้อมูลเพิ่มเติมได้ที่นี่: http://en.wikipedia.org/wiki/Comparison_of_hex_editors


4
วิธีการลบหรือเพิ่มไบต์ด้วย DHEX
Steven Lu

2
ฉันได้, สำหรับขนาดเล็กและแก้ไขไฟล์ไบนารี resorted xxd -rที่จะใช้ ถ้าคุณอยู่บน OS X, HexFiend นั้นยอดเยี่ยม (ฉันแก้ไขไฟล์ที่มีรหัสผ่านดังนั้นฉันจึงไม่ต้องการคัดลอกมันผ่านเครือข่าย)
Steven Lu

2
wxHexEditor ที่ 0.22 ยังคงมีปัญหา / ข้อ จำกัด การใช้งานอย่างจริงจัง แต่ดูเหมือนว่าจะยังดีที่สุด
กุมภ์

1
ระวังถ้าคุณตัดสินใจใช้ wxHexEditor เครื่องมือ hex diff ของไฟล์ทำงานไม่ถูกต้อง (ข้ามข้อแตกต่าง) ฉันเสียเวลาไปเพราะเหตุนี้
johndoevodka

3
ตอนนี้ศีลไม่สามารถใช้ได้สำหรับฉัน มีข้อผิดพลาดที่ทำให้หมดอำนาจที่ไม่อนุญาตให้ไฟล์ถูกเขียนทับภายในแอปพลิเคชัน มองหาที่อื่น
รอส

141

นอกจากนี้ฉันเป็น VIMer สามารถทำการแก้ไข Hex หายากด้วย:

  • :%!xxd เพื่อเปลี่ยนเป็นโหมดฐานสิบหก

  • :%!xxd -r เพื่อออกจากโหมด hex

แต่ฉันขอแนะนำอย่างยิ่ง ht

apt-cache show ht

Package: ht
Version: 2.0.18-1
Installed-Size: 1780
Maintainer: Alexander Reichle-Schmehl <tolimar@debian.org>

โฮมเพจ: http://hte.sourceforge.net/

หมายเหตุ : แพคเกจถูกเรียกใช้htในขณะที่ไฟล์ปฏิบัติการนั้นตั้งชื่อhteตามแพ็คเกจที่ติดตั้ง

  1. รูปแบบไฟล์ที่รองรับ
    • รูปแบบไฟล์อ็อบเจ็กต์ทั่วไป (COFF / XCOFF32)
    • รูปแบบที่สามารถเรียกทำงานและเชื่อมโยงได้ (ELF)
    • executables เชิงเส้น (LE)
    • มาตรฐาน DO $ executables (MZ)
    • executables ใหม่ (NE)
    • executables แบบพกพา (PE32 / PE64)
    • ไฟล์คลาส java (คลาส)
    • รูปแบบ exe / ลิงก์ Mach (MachO)
    • X-Box ที่ปฏิบัติการได้ (XBE)
    • แบน (FLT)
    • รูปแบบที่ปฏิบัติการได้ของ PowerPC (PEF)
  2. เครื่องวิเคราะห์รหัสและข้อมูล
    • ค้นหาที่มาของสาขาและจุดหมายปลายทางซ้ำ ๆ
    • ค้นหารายการขั้นตอน
    • สร้างป้ายกำกับตามข้อมูลนี้
    • สร้างข้อมูล xref
    • อนุญาตให้วิเคราะห์โค้ดที่ไม่ได้ตรวจสอบแบบโต้ตอบ
    • อนุญาตให้สร้าง / เปลี่ยนชื่อ / ลบป้ายกำกับ
    • อนุญาตให้สร้าง / แก้ไขความคิดเห็น
    • รองรับ x86, ia64, alpha, ppc และ java code
  3. ระบบเป้าหมาย
    • DJGPP
    • GNU / Linux
    • FreeBSD
    • OpenBSD
    • Win32

3
ฉันรักคำสั่ง vi! ฉันพยายามติดตั้ง ht และติดหล่มในเครือข่ายของ TeX ที่ไม่ทำงาน จบลงด้วยการใช้shed
Chris K

9
การติดตั้ง sudo apt-get install htht: วิธีเรียกใช้: hte <file> จดบันทึก e ต่อท้าย! ไม่hte htฉันไม่รู้เลยว่าทำไมแพ็คเกจถึงไม่สามารถเรียกว่า hte ได้
overthink

3
เคล็ดลับในการใช้เสียงเรียกเข้านั้นง่ายและยอดเยี่ยม ขอบคุณ
rr-

@ คิดว่าอาจเป็นเพราะhtแพคเกจtex4ht
Ciro Santilli 郝海东冠状病六四事件法轮功

1
อย่าลืม:set binaryเมื่อใช้ vim + xxd! มิฉะนั้นเสียงเรียกเข้าจะเพิ่มตัวยุติบรรทัดที่ส่วนท้ายของไฟล์ซึ่งมีโอกาสสูงมากที่จะทำให้ไฟล์ดังกล่าวเสียหาย (และทำได้มาก) โหมดไบนารีช่วยให้มั่นใจได้ว่าเสียงเรียกเข้าดังกล่าวจะหมด ในบันทึกที่เกี่ยวข้องค่อนข้างคุณสามารถเปลี่ยนรูปแบบไฟล์ระหว่าง unix / max / windows โดยใช้:set ff=[unix/mac/dos]เพื่อให้แน่ใจว่ากลุ่มใช้ปลายสายที่ถูกต้องสำหรับระบบเป้าหมาย
Braden สุดยอด

15

ส่วนตัวผมใช้ Emacs กับhexl-mod

Emacs สามารถทำงานกับไฟล์ขนาดใหญ่ได้ คุณสามารถใช้การค้นหา / แทนที่ค่าได้อย่างง่ายดาย สุดท้ายคุณสามารถใช้ ' ediff ' เพื่อทำสิ่งที่แตกต่าง


มี emacs ที่ไม่ใช่หรือไม่ ฉันรู้วิธีการคอมโบ xxd / vim แต่บางครั้งก็น่ารำคาญ
Marcin

8

wxHexEditor เป็นตัวแก้ไขดิสก์ GUI เดียวสำหรับ linux ไปที่ google "เว็บไซต์ wxhexeditor: archive.getdeb.net" และดาวน์โหลดไฟล์. deb เพื่อติดตั้ง


ฉันพยายามติดตั้งบน Ubuntu 14 และมันยากมากและก็ยังล้มเหลว
Yan King Yin

@ Yan King Yin ลอง Bless Hex Editor ได้ดีสำหรับการแก้ไขไฟล์ไบนารี
diyism

2
ขอบคุณ แต่ตอนนี้ฉันใช้ Okteta มันพอใจกับความต้องการของฉันแล้วตอนนี้
Yan King Yin

ในการติดตั้งใน Ubuntu, google wxhexeditor ppaที่ควรให้launchpad.net/ubuntu/+source/wxhexeditor
Mikko Rantalainen

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