Monday 31 July 2017

อูบุนตู เปรียบเทียบ ไฟล์ ไบนารี ตัวเลือก


หน้าคนสำหรับ cmp โดยเฉพาะกล่าวว่าจะไบต์โดยการเปรียบเทียบไบต์เพื่อให้เป็นค่าเริ่มต้นของฉันสำหรับ 2 ไฟล์ไบนารี diff เป็นบรรทัดต่อบรรทัดและจะให้คำตอบ YesNo เหมือนกัน แต่แน่นอนว่าไม่ใช่การถ่ายโอนข้อมูลแบบเดียวกันกับสตรีมมาตรฐาน ถ้าเส้นยาวเพราะบางทีพวกเขาไม่ได้ไฟล์ข้อความแล้วฉันต้องการ cmp diff มีข้อได้เปรียบที่คุณสามารถระบุการเปรียบเทียบของไดเร็กทอรีและ - r สำหรับ recursion โดยเปรียบเทียบไฟล์หลายไฟล์ในคำสั่งเดียว ndash H2ONaCl ธันวาคม 24 16 ที่ 8:07 diff unix มาตรฐานจะแสดงว่าไฟล์เหมือนกันหรือไม่ #: 31567 unix diff มาตรฐาน 7 15 ที่ 14:45 ที่ถูกต้อง - ไม่มีผลลัพธ์หมายถึงพวกเขาเหมือนกัน ndash JWDN 3 สิงหาคมที่ 13:37 diff ดูเหมือนจะมีปัญหากับไฟล์ขนาดใหญ่จริงๆ ฉันมีความแตกต่าง: หน่วยความจำหมดเมื่อเปรียบเทียบไฟล์ 13G ndash Yongwei Wu วันพุธที่ 28 กันยายน 16 เวลา 8:45 ผลลัพธ์ที่น่าสนใจ diff บอกคุณว่าพวกเขาเป็นคนแปลกหน้า เนื่องจากไฟล์ทั้งหมดถือได้ว่าเป็นไบนารีที่มีการยืนยันแปลก ๆ ndash H2ONaCl Dec 24 16 at 8:13 คุณช่วยอธิบายลงคะแนนโปรด SHA1 มี 4 upvotes และหาก OP คิดว่ามีโอกาสทั้งสองไฟล์อาจจะเหมือนกันหรือคล้ายกันโอกาสของการชนกันเล็กน้อยและไม่สมควร. MD5 ลงคะแนน แต่เพิ่ม SHA1 การลงทะเบียนอื่น ๆ เนื่องจากคุณได้ยินว่าคุณควร hash รหัสผ่านของคุณกับ SHA1 แทน MD5 (ที่เป็นปัญหาที่แตกต่างกัน) เพราะฉะนั้นความสะอาดของ cmp จะมีประสิทธิภาพมากกว่าการคำนวณฟังก์ชันแฮชใด ๆ ของไฟล์และเปรียบเทียบไฟล์เหล่านั้น (อย่างน้อยสำหรับไฟล์เพียง 2 ไฟล์) ndash orian 26 Apr 26 16 at 13: 581.7 Binary ถ้า diff คิดว่าไฟล์ทั้งสองมีการเปรียบเทียบคือไบนารี (ไฟล์ที่ไม่ใช่ข้อความ) ปกติจะถือว่าคู่ของไฟล์เหมือนกับที่ได้เลือกเอาท์พุทแบบสรุปเอาไว้ (ดูบทสรุป) และ รายงานเฉพาะว่าไฟล์ไบนารีต่างกัน เนื่องจากการเปรียบเทียบบรรทัดโดยบรรทัดมักไม่มีความหมายสำหรับไฟล์ไบนารี ปัญหานี้ไม่นับเป็นปัญหาแม้ว่าผลลัพธ์ที่ได้จะไม่สามารถจับความแตกต่างทั้งหมดได้ diff กำหนดว่าไฟล์เป็นข้อความหรือไบนารีโดยการตรวจสอบไบต์ไม่กี่ครั้งแรกในไฟล์จำนวนไบต์ที่แน่นอนขึ้นอยู่กับระบบ แต่โดยปกติจะมีหลายพัน ถ้าทุกไบต์ในส่วนของไฟล์นั้นไม่ใช่โมฆะ diff ถือว่าไฟล์เป็นข้อความมิฉะนั้นจะถือว่าไฟล์เป็นไบนารี บางครั้งคุณอาจต้องการบังคับ diff เพื่อพิจารณาไฟล์เป็นข้อความ ตัวอย่างเช่นคุณอาจจะเปรียบเทียบไฟล์ข้อความที่มีตัวอักษร null differ จะตัดสินผิดว่าเป็นไฟล์ที่ไม่ใช่ข้อความ หรือคุณอาจเปรียบเทียบเอกสารที่อยู่ในรูปแบบที่ใช้โดยระบบประมวลผลคำที่ใช้อักขระ null เพื่อระบุการจัดรูปแบบพิเศษ คุณสามารถบังคับ diff เพื่อพิจารณาไฟล์ทั้งหมดเป็นไฟล์ข้อความและเปรียบเทียบพวกเขาทีละบรรทัดโดยใช้ตัวเลือก --text (-a) ถ้าไฟล์ที่คุณเปรียบเทียบโดยใช้ตัวเลือกนี้ไม่ได้มีข้อความอยู่จริงอาจมีอักขระ newline ไม่กี่ตัวและผลลัพธ์ diff จะประกอบด้วยการแสดงความแตกต่างระหว่างเส้นยาวของอักขระที่มีอยู่ในไฟล์ นอกจากนี้คุณยังสามารถบังคับ diff เพื่อรายงานเฉพาะว่าไฟล์ต่างกัน (แต่ไม่ใช่วิธีการ) ใช้ตัวเลือก --brief (-q) สำหรับข้อมูลนี้ ในระบบปฏิบัติการที่แยกแยะระหว่างข้อความและไฟล์ไบนารี diff จะอ่านและเขียนข้อมูลทั้งหมดเป็นข้อความ ใช้ตัวเลือก - ไบนารีเพื่อบังคับให้ diff อ่านและเขียนข้อมูลไบนารีแทน ตัวเลือกนี้ไม่มีผลต่อระบบที่รองรับ POSIX เช่น GNU หรือ Unix แบบเดิม อย่างไรก็ตามระบบปฏิบัติการคอมพิวเตอร์ส่วนบุคคลจำนวนมากเป็นจุดสิ้นสุดของบรรทัดที่มีการส่งคืนสินค้าตามด้วยบรรทัดใหม่ ในระบบดังกล่าว diff มักจะละเว้นการรับส่งข้อมูลเหล่านี้เมื่อป้อนข้อมูลและสร้างข้อมูลเหล่านี้ที่จุดสิ้นสุดของบรรทัดเอาท์พุทแต่ละครั้ง แต่ด้วยตัวเลือกไบนารีตัวเลือกจะถือว่าการรับส่งข้อมูลกลับเป็นอักขระอินพุตเพียงตัวเดียวและไม่สร้างการคืนค่าขนส่งที่ ปลายสายออกแต่ละสาย นี้จะมีประโยชน์เมื่อจัดการกับไฟล์ที่ไม่ใช่ข้อความที่จะหมายถึงการแลกเปลี่ยนกับระบบ POSIX - เข้ากันได้ The - strip-trailing-cr ทำให้เกิดความแตกต่างในการรักษาบรรทัดอินพุตที่สิ้นสุดลงในการรับส่งของรถตามด้วยบรรทัดใหม่เหมือนกับว่าจะลงท้ายด้วยบรรทัดใหม่ที่ลัด นี้จะมีประโยชน์เมื่อเปรียบเทียบข้อความที่ไม่ถูกต้องนำเข้าจากระบบปฏิบัติการคอมพิวเตอร์ส่วนบุคคลจำนวนมาก ตัวเลือกนี้มีผลกับการอ่านบรรทัดซึ่งจะส่งผลกระทบต่อวิธีเปรียบเทียบและส่งออก ถ้าคุณต้องการเปรียบเทียบไบต์สองไฟล์โดยไบต์คุณสามารถใช้โปรแกรม cmp ด้วยตัวเลือก - verbose (-l) เพื่อแสดงค่าของไบต์ที่แตกต่างกันในไฟล์สองไฟล์ มี GNU cmp นอกจากนี้คุณยังสามารถใช้ตัวเลือก - b หรือ --print-bytes เพื่อแสดงการแสดง ASCII ของไบต์เหล่านั้น ดูการเรียกใช้ cmp สำหรับข้อมูลเพิ่มเติม. ถ้า diff3 คิดว่าไฟล์ใด ๆ ที่มีการเปรียบเทียบคือไบนารี (ไฟล์ที่ไม่ใช่ข้อความ) ปกติรายงานข้อผิดพลาดเนื่องจากการเปรียบเทียบดังกล่าวมักไม่เป็นประโยชน์ diff3 ใช้การทดสอบเดียวกันกับ diff เพื่อตัดสินใจว่าไฟล์เป็นไบนารีหรือไม่ เช่นเดียวกับ diff ถ้าไฟล์ใส่มีไบต์ที่ไม่ใช่ข้อความเพียงไม่กี่ตัว แต่อย่างอื่นเป็นเหมือนไฟล์ข้อความคุณสามารถบังคับ diff3 ให้พิจารณาไฟล์ทั้งหมดเป็นไฟล์ข้อความและเปรียบเทียบบรรทัดเหล่านี้ตามบรรทัดโดยใช้ตัวเลือก - a หรือ - text การถ่ายโอนไฟล์ ระหว่างเซิร์ฟเวอร์และเพิ่งเริ่มสังเกตเห็นว่าบางส่วนของพวกเขาได้รับการแก้ไขให้เป็นหนึ่งในบรรทัดต่อเนื่องยาวเป็นนอกคอกมีผลตอบแทนและบรรทัดแบ่งพวกเขาเดิมมี Im สมมติว่านี้มีบางอย่างที่เกี่ยวข้องกับการถ่ายโอนประเภทของ FTP Client ของฉันซึ่งเดิมกำหนดให้ Auto แต่กีฬา Binary และ ASCII เป็นตัวเลือกเพิ่มเติม ในระยะสั้นสิ่งที่แตกต่างระหว่างวิธีที่ฉันถ่ายโอนแฟ้มจากเซิร์ฟเวอร์หนึ่งไปยังอีกและจะแตกต่างเหล่านี้จะสามารถปรับเปลี่ยนแฟ้มในลักษณะที่ผมกล่าวถึงข้างต้นถาม 8 ก. พ. กุมภาพันธ์ที่ 16:09 โหมดการถ่ายโอนไบนารี ของ FTP สำเนาไฟล์ว่าไบต์สำหรับไบต์ ง่ายและตรงไปตรงมา เมื่อนำไฟล์ข้อความระหว่างระบบปฏิบัติการที่ต่างกันระบบอาจใช้งานได้ไม่เหมือนที่คุณต้องการระบบปฏิบัติการต่าง ๆ ใช้รหัสต่าง ๆ เพื่อแสดงตัวแบ่งบรรทัด โหมด ASCII มีไว้เพื่อวัตถุประสงค์นี้โดยอัตโนมัติแปลว่าตอนจบบรรทัดทั้งหมดจากรูปแบบระบบต้นทางไปยังจุดหมายปลายทาง ไม่แน่ใจเกี่ยวกับ Auto แต่ฉันคิดว่าดูเหมือนว่านามสกุลไฟล์หรือสิ่งที่คล้าย ๆ กับการตัดสินใจว่าจะเป็นไฟล์ข้อความหรือไม่และพยายามคาดเดาโหมดที่เหมาะสม โหมดไหนที่คุณต้องการขึ้นอยู่กับว่าคุณกำลังทำอะไรกับไฟล์ หาก youre เพียงคัดลอกพวกเขาสำรองพวกเขาแล้วคุณอาจต้องการคัดลอกในโหมดไบนารีจึงจะเหมือนกันเมื่อคุณเรียกคืนในภายหลังไปยังเซิร์ฟเวอร์ Windows อีกครั้ง หากจำเป็นต้องใช้งานเป็นไฟล์ข้อความ (อาจเป็นไฟล์ config สำหรับโปรแกรมข้ามแพลตฟอร์ม) ทั้งสองด้านคุณจะต้องใช้โหมด ASCII เพื่อแปล แก้ไข: เท่าที่ฉันสามารถบอก FTPing ไฟล์จาก Windows ไป Linux ไม่ควรทำให้เส้นแบ่งหายไป อย่างไรก็ตาม ถ้าคุณคัดลอกแฟ้มเหล่านี้ในโหมด ASCII แล้วนำพวกเขากลับไปที่เซิร์ฟเวอร์ Windows ในโหมดไบนารีบรรทัดสิ้นสุดของ Linux จะไม่รู้จักในกล่อง Windows (Notepad เคยเห็นพวกเขา Wordpad จะ YMMV กับซอฟต์แวร์อื่น) (วันนี้เช่นความสะดวกในการแปลงบรรทัดสิ้นสุดลงโดยอัตโนมัติอาจดูเหมือนแปลกในโปรโตคอลพื้นฐานเช่น FTP เมื่อ FTP ถูกคิดค้นขึ้นแม้ว่าการส่งไฟล์ข้อความคือ บรรทัดฐานและหนึ่งในเป้าหมายของโปรโตคอลนี้เพื่อให้ง่ายที่สุดเท่าที่จะทำได้) ตอบ 8 ก. พ. 10 เวลา 18:39

No comments:

Post a Comment