คำถามติดแท็ก text-processing

การจัดการหรือตรวจสอบข้อความโดยโปรแกรมสคริปต์ ฯลฯ

1
วิธีการทำ 'หัว' และ 'หาง' ในอินพุตที่มีการ จำกัด ด้วย null ในทุบตี?
findคำสั่งสามารถส่งออกชื่อของไฟล์เป็นสตริงที่คั่นด้วย null (ถ้า-print0มีให้) และxargsสามารถใช้พวกเขาด้วยการ-0เปิดตัวเลือก แต่ในระหว่างมันเป็นเรื่องยากที่จะจัดการกับคอลเลกชันของไฟล์ - sortคำสั่งมี-zสวิทช์ที่ทำให้มันเป็นไปได้ที่จะจัดเรียงไฟล์เหล่านั้น แต่headและtailไม่ได้พวกเขา ฉันจะทำheadและtailป้อนข้อมูลด้วยตัวคั่นที่ไม่มีค่าในวิธีที่สะดวกได้อย่างไร (ฉันสามารถสร้างสคริปต์ทับทิมสั้นและช้าได้เสมอ แต่ฉันหวังว่าอาจมีวิธีที่ดีกว่า)

4
มีเครื่องมือบรรทัดคำสั่งเพื่อแทรกตัวแบ่งบรรทัดลงในสตริงที่ยาวหรือไม่
ด้วยสตริงที่มีความยาวที่ต้องแสดงด้วยความกว้างของข้อความที่ จำกัด มีเครื่องมือบรรทัดคำสั่งใน * nix ที่แปลงสตริงบรรทัดเดียวเป็นสตริงหลายบรรทัดโดยแต่ละบรรทัดไม่เกินความกว้างของข้อความที่กำหนดหรือไม่ ตัวอย่างเช่นกำหนดสตริงต่อไปนี้ $ MYSTRING="Call me Ishmael. Some years ago - never mind how long precisely - having little or no money in my purse, and nothing particular to interest me on shore, I thought I would sail about a little and see the watery part …

3
ฉันจะเชื่อมไฟล์ทั้งหมดในไดเรกทอรีที่กำหนดตามวันที่ที่ฉันต้องการไฟล์ใหม่ล่าสุดอยู่ด้านบนได้อย่างไร
และด้วยไฟล์ที่เก่าที่สุดที่ด้านล่าง? นอกจากนี้หากฉันทำเช่นนี้เป็นไปได้ไหมที่จะตัดส่วนหัวที่ซ้ำซ้อนที่อยู่ในไฟล์ HTML แต่ละไฟล์ ฉันเห็นตัวเองเชื่อมไฟล์ HTML จำนวนมากเข้าด้วยกันและมันก็เป็นการดีที่จะลดขนาดไฟล์ของไฟล์ที่ดีที่สุดลงเล็กน้อย

7
พิมพ์เส้นเลขคี่พิมพ์เส้นคู่
ฉันต้องการพิมพ์บรรทัดเลขคี่และเลขคู่จากไฟล์ ฉันพบเชลล์สคริปต์นี้ซึ่งใช้ประโยชน์จากเสียงสะท้อน #!/bin/bash # Write a shell script that, given a file name as the argument will write # the even numbered line to a file with name evenfile and odd numbered lines # in a text file called oddfile. # ------------------------------------------------------------------------- # Copyright (c) 2001 nixCraft project <http://cyberciti.biz/fb/> # …

3
จะเลือกกระบวนการเฉพาะด้วย 'top' ได้อย่างไร
ในกรณีที่โปรแกรมหนึ่งมีหลายอินสแตนซ์การรันpidof programจะให้: `1 2 3` top -pยอมรับข้อโต้แย้งที่คั่นด้วยเครื่องหมายจุลภาค: 1, 2, 3. ซึ่งหมายความว่าtop -p `pidof program`จะไม่ทำงาน: top: unknown argument '1' usage: top -hv | -bcisSH -d delay -n iterations [-u user | -U user] -p pid [,pid ...] คุณช่วยแสดงให้ฉันดูวิธีการทำสิ่งนี้ได้ไหม ฉันไม่คุ้นเคยกับ awk, sed, etc ...

7
ฉันจะเพิ่มแท็กให้กับจุดเริ่มต้นของหลายไฟล์ได้อย่างไร
ฉันต้องเพิ่มแท็ก PHP รอบ ๆ ไฟล์ ง่ายต่อการผนวกเข้าด้วยกัน find . -exec echo "?>" >> '{}' \; แต่ฉันจะเพิ่มแท็กไว้ล่วงหน้าได้<?phpอย่างไร

6
คุณจะเก็บเฉพาะไฟล์ n บรรทัดสุดท้ายของไฟล์บันทึกได้อย่างไร
สคริปต์ที่ฉันเขียนทำบางสิ่งและท้ายที่สุดจะผนวกบางบรรทัดเข้ากับล็อกไฟล์ของตัวเอง ฉันต้องการเก็บเฉพาะไฟล์ n บรรทัดสุดท้าย (พูด, 1,000 บรรทัด) ของล็อกไฟล์ ซึ่งสามารถทำได้ในตอนท้ายของสคริปต์ด้วยวิธีนี้: tail -n 1000 myscript.log > myscript.log.tmp mv -f myscript.log.tmp myscript.log แต่จะมีวิธีที่สะอาดและสง่างามกว่านี้ไหม? อาจสำเร็จด้วยคำสั่งเดียว?


9
การสลับแถวและคอลัมน์
ฉันมีไฟล์ที่มีบรรทัดด้านล่าง title1:A1 title2:A2 title3:A3 title4:A4 title5:A5 title1:B1 title2:B2 title3:B3 title4:B4 title5:B5 title1:C1 title2:C2 title3:C3 title4:C4 title5:C5 title1:D1 title2:D2 title3:D3 title4:D4 title5:D5 ฉันจะบรรลุสิ่งนี้ได้อย่างไร title1 title2 title3 title4 A1 A2 A3 A4 B1 B2 B3 B4 C1 C2 C3 C4 D1 D2 D3 D4

4
แยกไฟล์ออกเป็นสองไฟล์
ฉันมีไฟล์ขนาดใหญ่และจำเป็นต้องแยกออกเป็นสองไฟล์ สมมติว่าในไฟล์แรก 1,000 บรรทัดควรเลือกและใส่ในไฟล์อื่นและลบบรรทัดเหล่านั้นในไฟล์แรก ฉันลองใช้splitแต่กำลังสร้างหลายชิ้น

3
awk: บังคับให้มีสถานะส่งคืนหรือไม่
นี่คือการติดตามของฉันคำถามก่อนหน้านี้ ฉันกำลังตรวจสอบจำนวนฟิลด์ใน / etc / passwd โดยใช้ snippit ที่มีประโยชน์นี้ ในตัวอย่างต่อไปนี้ผู้ใช้ 'fieldcount1' และ 'fieldcount2' มีจำนวนฟิลด์ที่ไม่ถูกต้อง: $ awk -F: ' NF!=7 {print}' /etc/passwd fieldcount1:x:1000:100:fieldcount1:/home/fieldcount1:/bin/bash:::: fieldcount2:blah::blah:1002:100:fieldcount2:/home/fieldcount2:/bin/bash: $ echo $? 0 ในขณะที่คุณสังเกตเห็น awk จะออกโดยมีสถานะการส่งคืนเป็น 0 จากจุดยืนมันไม่มีปัญหาที่นี่ ฉันต้องการรวมคำสั่ง awk นี้ลงในเชลล์สคริปต์ ฉันต้องการพิมพ์บรรทัดทั้งหมดที่มีข้อผิดพลาดและตั้งรหัสส่งคืนเป็น 1 (ข้อผิดพลาด) ฉันสามารถลองบังคับสถานะการออกเฉพาะได้ แต่จากนั้น awk จะพิมพ์เพียงบรรทัดเดียว: $ awk -F: ' NF!=7 {print ; exit …

8
วิธีการนับเวลาที่ตัวละครเฉพาะปรากฏในไฟล์?
ตัวอย่างเช่นเราต้องการนับ"อักขระเครื่องหมายคำพูด ( ) ทั้งหมด เราแค่กังวลว่าไฟล์มีเครื่องหมายคำพูดมากกว่าที่ควร ตัวอย่างเช่น: cluster-env,"manage_dirs_on_root","true" cluster-env,"one_dir_per_partition","false" cluster-env,"override_uid","true" cluster-env,"recovery_enabled","false" ผลลัพธ์ที่คาดหวัง: 16

10
กรองไฟล์ตามหมายเลขบรรทัด
เมื่อกำหนดไฟล์ L ที่มีจำนวนเต็มไม่เป็นลบหนึ่งตัวต่อบรรทัดและไฟล์ข้อความ F จะเป็นวิธีที่รวดเร็วในการเก็บเฉพาะบรรทัดเหล่านั้นใน F ซึ่งมีหมายเลขบรรทัดใดปรากฏในไฟล์ L ตัวอย่าง: $ cat L.txt 1 3 $ cat F.txt Hello World Hallo Welt Hola mundo $ command-in-question -x L.txt F.txt Hello World Hola mundo ฉันกำลังมองหาคำสั่งที่สามารถจัดการไฟล์ L ที่มี 500 ล้านรายการขึ้นไป ไฟล์ L เรียงลำดับตัวเลข หมายเหตุ: ฉันผ่านการใช้งานไปครึ่งทางแล้วcommand-in-questionแต่ฉันเพิ่งสงสัยว่าอาจใช้เครื่องมือ Unix ได้ที่นี่เช่นกัน ปรับปรุง: ขอบคุณสำหรับคำตอบทั้งหมดฉันเรียนรู้มากวันนี้! ฉันต้องการยอมรับคำตอบมากกว่าหนึ่งคำตอบ แต่นั่นเป็นไปไม่ได้


7
จะประมวลผลไฟล์ข้อความแบบหลายคอลัมน์เพื่อรับไฟล์ข้อความแบบหลายคอลัมน์ได้อย่างไร
ฉันมีไฟล์ข้อความ: a aa aaa b bb bbb c cc ccc d dd ddd e ee eee f ff fff g gg ggg h hh hhh i ii iii j jj jjj ฉันจะประมวลผลและรับไฟล์คอลัมน์ 2 แบบนี้ได้อย่างไร: a aa aaa b bb bbb c cc ccc d dd ddd e ee eee f …

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