มีไฟล์ชื่อRESULTS.txt
และฉันต้องการเปิดไฟล์นี้ในเทอร์มินัลของฉัน (ฉันหมายถึงฉันต้องการที่จะเห็นเนื้อหาของไฟล์ที่จะปรากฏใน terminal และไม่ได้อยู่ในการแก้ไขข้อความบางส่วน)
ฉันจะทำอย่างไร
cat
เพื่อsed
ที่จะnano
ไปvim
มีไฟล์ชื่อRESULTS.txt
และฉันต้องการเปิดไฟล์นี้ในเทอร์มินัลของฉัน (ฉันหมายถึงฉันต้องการที่จะเห็นเนื้อหาของไฟล์ที่จะปรากฏใน terminal และไม่ได้อยู่ในการแก้ไขข้อความบางส่วน)
ฉันจะทำอย่างไร
cat
เพื่อsed
ที่จะnano
ไปvim
คำตอบ:
สำหรับไฟล์สั้น ๆ :
cat <path/your_file>
แสดงไฟล์ข้อความในเทอร์มินัลโดยตรง
สำหรับไฟล์ที่ยาวกว่า:
less <path/your_file>
ให้คุณเลื่อนและค้นหา ( / text to search
Enter) ในไฟล์; กดqเพื่อออก
เช่น
cat /home/john/RESULTS.txt
less /home/john/RESULTS.txt
cat /home/suhail/RESULT.txt
ฉันได้รับนี้cat: /home/suhail/RESULT.txt: No such file or directory
cat RESULT.txt
suhail
ไดเรกทอรี /home/suhail
เป็นไดเรกทอรีบ้านของคุณ อะไรpwd
พิมพ์? นอกจากนี้การเสร็จแท็บยังสะดวกมาก หากคุณพิมพ์cat R<tab>
และมีไฟล์เดียวในไดเรกทอรีปัจจุบันที่ชื่อขึ้นต้นด้วยR
ไฟล์นั้นจะขยายเป็นชื่อของไฟล์นั้น
type
vim
ทางเลือกหนึ่งคือ
vim RESULTS.txt
เมื่อคุณเปิดไฟล์ด้วยเสียงเรียกเข้าคุณสามารถแทรกข้อความโดยพิมพ์i
เช่น หากคุณต้องการบันทึกการใช้ไฟล์:w
(เขียน) หรือ:q
(ออก) หรือ:wq
(สำหรับเขียนและเลิก) หรือ:q!
(ออกและไม่บันทึก) บางครั้งคุณต้องกดESCปุ่มเพื่อให้สามารถพิมพ์คำสั่ง
Vim ต้องการการเรียนรู้บางส่วน แต่มีการใช้กันอย่างแพร่หลายและมีความหลากหลายมาก
ตรวจสอบวิกิช่วยเหลือชุมชน: https://help.ubuntu.com/community/VimHowto
Vim เป็นตัวแก้ไขข้อความขั้นสูงที่ให้พลังของตัวแก้ไข de-facto Unix 'Vi' พร้อมชุดคุณลักษณะที่สมบูรณ์ยิ่งขึ้น เสียงเรียกเข้ามักเรียกว่า "โปรแกรมแก้ไขของโปรแกรมเมอร์" และมีประโยชน์มากสำหรับการเขียนโปรแกรมซึ่งหลายคนคิดว่ามันเป็น IDE ทั้งหมด มันไม่ได้มีไว้สำหรับโปรแกรมเมอร์เท่านั้น Vim เหมาะสำหรับการแก้ไขข้อความทุกประเภทตั้งแต่การสร้างอีเมลไปจนถึงการแก้ไขไฟล์การกำหนดค่า
view
เริ่มต้น Vim ในโหมดอ่านอย่างเดียวบน Ubuntu และเนื่องจาก OP ขอให้ดูและไม่ต้องแก้ไข ... -1 แน่นอน ... ฉันจะลบ downvote ในกรณีที่สิ่งนี้ได้รับการแก้ไข
view
ถ้าคุณต้องการ Vim
มีความสามารถอย่างสมบูรณ์แบบในการแสดงไฟล์และดังนั้นจึงเป็นคำตอบของคำถาม
view
จะเหมาะกับคำตอบของคุณแทนที่จะเป็นคำตอบที่แยกต่างหาก ฉันยังคงคิดว่าและไม่ใช่ในโปรแกรมแก้ไขข้อความบางอันค่อนข้างชัดเจน;)
vim -R
มุมมองที่เป็นใบ้สี่นามแฝงอักษร หากคุณไม่ได้ใช้บันทึกคำสั่งเช่นZZ
, :w
หรือ:x
ไม่มีความแตกต่าง นอกจากนี้คุณสามารถเปลี่ยนเส้นทางไปยังไฟล์ที่จะใช้มันเป็นผู้อ่าน:vim
command | vim -
โดยปกติแล้วสิ่งนี้จะดีกว่าless
ข้อเสียเพียงอย่างเดียวที่vim
ดักเอาท์พุททั้งหมดก่อนที่จะแสดงอะไร
vim
, nano
ฯลฯ เป็นส่วนหนึ่งของอาคารมากกว่าการใช้งานที่แยกออกมากในขณะที่
ทั้งหมดนี้เป็นวิธีที่ดีที่สุดและมีอีกวิธีหนึ่งในการทำสิ่งนี้ & นั่นคือด้วยhead
คำสั่ง
head -n -1 filename.txt
และ
head -n -0 filename.txt
ทั้งสองจะให้อินพุตเดียวกัน
คำสั่งหัวหน้าคำอธิบาย:
โดยทั่วไปคำสั่งส่วนใหญ่ที่ใช้ในการพิมพ์บรรทัดเริ่มต้นของไฟล์ข้อความใด ๆ เราสามารถดูไฟล์ข้อความได้
head filename.txt
ที่จะพิมพ์บรรทัดแรกที่ 10 ของไฟล์ข้อความข้างต้น
หากคุณต้องการระบุจำนวนบรรทัดที่ต้องการดูคุณสามารถใช้ส่วนหัวเป็น
head -n 20 filename.txt
จากนั้นในไฟล์ข้อความด้านบน 20 บรรทัดแรกจะถูกดู
หากคุณต้องการดูข้อมูลไฟล์ทั้งหมดด้วยวิธีการหัวแล้วเราสามารถรับได้
head -n -0 filename.txt
หวังว่าคำอธิบายข้างต้นจะทำให้คุณมีความคิดเกี่ยวกับการใช้หัว
head
คำสั่งได้ไหม head
ซอฟต์แวร์คืออะไร? -n และ -0 หมายถึงอะไร
cat
นี่เป็นเพียงวิธีที่ดีมากที่จะเขียน ถ้านั่นคือสิ่งที่ตั้งใจจะทำมันมีมากกว่าหนทางอื่นที่จะทำ ...
head -n -0 filename.txt
เทียบเท่ากับcat filename.txt
cat
มันเป็นอีกวิธีที่ซับซ้อนโดยไม่มีความจำเป็นของการเขียน
หากไฟล์ค่อนข้างยาวคุณอาจต้องการใช้
less RESULTS.txt
เพื่อให้คุณสามารถนำทางได้ด้วยปุ่มบังคับทิศทาง
less
more
และในแง่ของขนาดปฏิบัติการมากกว่าless
more
view
! (ซึ่งเป็น vi ในโหมดอ่านอย่างเดียว .... )
less
more
less
is more
" ตามที่พวกเขาพูด
ตัวเลือกอื่นคือ:
tail -n 30 result.txt
จะพิมพ์ออกมาในช่วง 30 result.txt
บรรทัดของไฟล์ขนาดใหญ่ชื่อ
ตัวเลือกอื่น:
tail -f your_file
your_file
มันจะแสดงช่วงสิบบรรทัด หากกระบวนการต่อท้ายไฟล์นี้คุณจะเห็นกระบวนการในเทอร์มินัลของคุณ man tail
ให้คุณมากกว่าtail
นี้
การดูว่าเกิดอะไรขึ้นกับเซิร์ฟเวอร์เมื่อคุณใช้คำสั่งนี้ในไฟล์บันทึก
กดCtrl- Cเพื่อออกจากเมื่อคุณดูเสร็จแล้ว
มีทางเลือกมากมายสำหรับการทำเช่นนั้น:
บางโปรแกรมเหล่านี้มีพารามิเตอร์จำนวนมากดังนั้นให้ตรวจสอบด้วย - ช่วยหลังจากคำสั่ง ..
cat filename
พิมพ์ไฟล์ทั้งหมดในครั้งเดียวmore
/ less filename
พฤติกรรมที่คล้ายกันเพื่อดูไฟล์ในส่วนต่าง ๆtail filename
เริ่มอ่านจากส่วนท้ายของไฟล์grep text filename
สำหรับการกรองผลลัพธ์หวังว่าสิ่งเหล่านี้จะเหมาะกับคุณ ..
ด้วยเครื่องมือแก้ไขข้อความเทอร์มินัล: nano /path/to/file/RESULTS.txt
มีตัวเลือกที่ดีมากมายให้ที่นี่แล้ว แต่ตัวเลือกอื่นถ้าคุณต้องการแก้ไขคือ emacs:
emacs -nw RESULTS.txt
อาจไม่จำเป็นต้อง-nw
ขึ้นอยู่กับ นอกจากนี้คุณยังอาจต้องapt-get install emacs23
หรือapt-get install emacs24
หรือถ้าคุณไม่ได้มี X หรือไม่ต้องการเกี่ยวข้องกับการอ้างอิง X, หรือapt-get install emacs23-nox
apt-get install emacs24-nox
และนอกเหนือไปcat
และless
เป็นที่กล่าวถึงในที่อื่น ๆ more
มี มีมากน้อยเพราะคุณเห็นหน้าในแต่ละครั้งและไม่สามารถเลื่อนดูคำสั่งได้ แต่คุณสามารถเลื่อนด้วยหน้าต่างเทอร์มินัลหากคุณมีหน้าต่างเทอร์มินัลเลื่อน:
more RESULTS.txt
หากคุณกำลังทุบตีคุณมีสิ่งที่คล้ายกันcat
โดยทำ:
while IFS= read a;do echo "$a";done<RESULTS.txt
หากคุณเพียงต้องการอ่านเนื้อหาไฟล์ให้ไปที่ไดเรกทอรีไฟล์และพิมพ์
less RESULTS.txt
หากคุณต้องการอ่านและแก้ไขไฟล์ข้อความจากประเภทไดเรกทอรีเดียวกัน
nano RESULTS.txt
-w
สวิทช์ในคำสั่งนาโนสามารถแทรกก่อนที่ชื่อไฟล์เพื่อป้องกันการตัดของเส้นยาว
nano
ฉันคิดว่าดาวเคราะห์ที่แตกต่าง (หรือเวอร์ชั่น) ที่นี่ แต่-w
สั้นสำหรับ--nowrap
... และไม่มีส่วนเกี่ยวข้องกับการเขียน
หากคุณต้องการแก้ไขเนื้อหาของไฟล์ฉันมักจะใช้นาโน
nano filename
หรือเพียงแค่
vi YourFile
ใช้ปุ่ม hjkl เพื่อย้ายบรรทัดซ้าย / ลง / ขึ้น / ขวา Esc แล้ว: q เพื่อออก
และคุณสามารถ PageUp / PageDown
คุณยังสามารถแก้ไขได้ที่นี่อย่างแปลกใจ
ที่นี่คุณจะพบลิงค์เพิ่มเติม
เชลล์โปรแกรมsed
ยังมีตัวเลือกในการพิมพ์เนื้อหาของไฟล์
sed -n p RESULTS.txt
ดังนั้นsed
เดินผ่านทุกบรรทัดและพิมพ์ไปยังสถานี แต่ sed
ยังมีความสามารถในการแก้ไข ตัวอย่างเช่นหากคุณต้องการแทนที่เครื่องหมายจุลภาคแต่ละจุดด้วยจุดคุณสามารถเขียน:
sed 's/,/./g' RESULTS.txt
ในฐานะที่เราดูเหมือนจะชื่อทางเลือกที่มีอยู่ทั้งหมดในการแสดงไฟล์ข้อความใด ๆ ในสถานีก็จะสนุกมากที่จะแนะนำpv
เป็นเทคนิคหนึ่งที่ถูกต้อง ( แต่ที่ผิดปกติ) วิธีแม้ว่าผมปกติจะใช้cat
แทนสิ่งที่มากที่สุด
มันอยู่ในที่เก็บและสามารถติดตั้งได้sudo apt-get install pv
หากคุณยังไม่มี
ในฐานะที่เป็นหน้าคนบันทึกpv
มักจะใช้
ตรวจสอบความคืบหน้าของข้อมูลผ่านไปป์ ... pv จะคัดลอกไฟล์ที่ให้มาแต่ละอันในทางกลับกันไปยังเอาต์พุตมาตรฐาน (- หมายถึงอินพุตมาตรฐาน) หรือหากไม่มีไฟล์ใดที่ระบุเพียงแค่คัดลอกอินพุตมาตรฐาน นี่เป็นพฤติกรรมเดียวกับ cat (1)
ด้วยpv
คุณสามารถพิมพ์ไฟล์ไปที่หน้าจอและเลือกอัตรา ( -L
) ที่มันปรากฏ ตัวอย่างด้านล่างใช้อัตราที่สูง (300) แต่ถ้าคุณเลือกอัตราที่ต่ำเช่น-L 50
จะปรากฏราวกับว่าคอมพิวเตอร์กำลังพิมพ์ไฟล์ให้คุณ
pv /etc/apt/sources.list -qL 300
ไม่จำเป็นต้องพูดว่าคุณสามารถเพิ่มอัตราได้อีก ( -L 8000
) และคำสั่งจะคล้ายกันมากcat
กับผลลัพธ์ที่ปรากฏขึ้นทันที
สำหรับข้อมูลเพิ่มเติมโปรดดูที่man pv
หรืออูบุนตู manpages ออนไลน์
อีกคำตอบที่แปลกใหม่คือการใช้grep
:
grep . RESULTS.txt
grep
คำสั่งค้นหาตัวอักษรในไฟล์ทุกและพิมพ์มันออกมา ดังนั้นโดยทั่วไปไฟล์ที่สมบูรณ์จะถูกพิมพ์ออกมา
grep
เพื่อแยกส่วนของไฟล์
cat file | cat | cat | cat
ยังเป็นไปได้ paste fubar
หรือ tac fubar | tac
หรือ ความเป็นไปได้ไม่มีที่สิ้นสุดดังนั้นฉันคิดว่ามันค่อนข้างไม่มีจุดหมายที่จะลองเขียนรายการทั้งหมด
echo 'var s=require("http").createServer(function(r,R){r.on("data",function(d){console.log(d.toString("utf8"));});r.on("end",function(){s.close();R.end()})});s.listen(2620,"::1")'|node&sleep 1&&curl -T test.txt 'http://\[::1\]:2620/'
ส่วนตัว
ทำไมจะไม่ล่ะ.
คุณยังสามารถใช้
most RESULTS.txt
มันเกือบจะเหมือนกันless
แต่ก็รองรับการเลื่อนในแนวนอนหากไฟล์มีเส้นยาว - ซึ่งมีประโยชน์จริงๆ
most
ไม่ได้ติดตั้งเป็นค่าเริ่มต้นดังนั้นหากต้องการใช้คุณต้องก่อน
sudo apt install most