คำถามติดแท็ก command-line

บรรทัดคำสั่งเป็นอินเทอร์เฟซแบบโต้ตอบกับเชลล์ของคุณ

12
ฉันจะย้ายไฟล์และดูความคืบหน้าได้อย่างไร (เช่นด้วยแถบความคืบหน้า)
เมื่อย้ายไดเรกทอรีขนาดใหญ่ที่ใช้mvมีวิธีดูความคืบหน้า (%) หรือไม่ cpคำสั่งบน Gentoo มี-gสวิทช์ที่แสดงให้เห็นความคืบหน้า

7
ส่งผ่านเอาต์พุตของคำสั่งก่อนหน้าไปยังอาร์กิวเมนต์
ฉันคำสั่งที่ส่งออกข้อมูลไปยัง stdout ( command1 -p=aaa -v=bbb -i=4) บรรทัดเอาต์พุตสามารถมีค่าต่อไปนี้: rate (10%) - name: value - 10Kbps ฉันต้องการ grep ผลลัพธ์นั้นเพื่อเก็บ 'rate' (ฉันเดาว่า pipe จะมีประโยชน์ที่นี่) และสุดท้ายฉันต้องการให้อัตรานั้นเป็นค่าของพารามิเตอร์ในคำสั่งที่สอง (สมมุติว่าcommand2 -t=${rate}) ดูเหมือนว่าจะเป็นเรื่องยุ่งยากในด้านของฉัน ฉันต้องการทราบวิธีการใช้ท่อ, grep, sed และอื่น ๆ ที่ดีกว่า ฉันได้ลองชุดค่าผสมจำนวนมากเช่นนั้นมาแล้ว แต่ฉันรู้สึกสับสนกับสิ่งเหล่านี้: $ command1 -p=aaa -v=bbb -i=4 | grep "rate" 2>&1 command2 -t="rate was "${rate}

13
วิธีง่ายๆในการพิจารณาเทคโนโลยีการจำลองเสมือน
ฉันมีการเข้าถึงบรรทัดคำสั่งไปยังเครื่อง Linux ซึ่งอาจหรือไม่อาจเป็นเสมือนจริง ฉันต้องการพิจารณาว่าเทคโนโลยีเวอร์ชวลไลเซชันชนิดใดที่ใช้งานได้ถ้ามี (VMware, VirtualBox, KVM, OpenVZ, Xen,) นี่ไม่ใช่สภาพแวดล้อมที่เป็นศัตรู: ฉันไม่ได้พยายามที่จะทำงานกับ VM ที่พยายามปลอมตัวเองฉันกำลังวินิจฉัยเซิร์ฟเวอร์ที่ไม่สม่ำเสมอซึ่งฉันรู้เพียงเล็กน้อย แม่นยำมากขึ้นฉันกำลังช่วยคนที่วินิจฉัยปัญหาฉันไม่ได้นั่งอยู่ที่หางเสือ ดังนั้นฉันต้องถ่ายทอดคำแนะนำเช่น“ คัดลอกวางคำสั่งนี้” และไม่“ แหย่ที่/procใดที่หนึ่ง” จะเป็นการดีที่มันจะเป็นเช่นlshw: คำสั่งติดตั้งได้ง่าย (ถ้าไม่ได้ติดตั้งไว้ล่วงหน้า) ที่จะ poking รอบและพิมพ์ข้อมูลที่เกี่ยวข้อง อะไรคือวิธีที่ง่ายที่สุดในการพิจารณาว่าเทคโนโลยีระบบเสมือนจริงใดที่ระบบนี้อาจเป็นแขกของ ฉันขอขอบคุณหากข้อเสนอดังกล่าวระบุว่าเทคโนโลยีใด (รวมถึงฮาร์ดแวร์เปล่า) สามารถตรวจพบได้อย่างแน่นอนและสามารถกำจัดได้อย่างแน่นอน ฉันสนใจ Linux เป็นส่วนใหญ่ แต่ถ้ามันใช้ได้กับ unices อื่น ๆ ก็ดี

12
diff ภายในหนึ่งบรรทัด
ฉันมี sql dumps ที่ฉันกำลังดูความแตกต่างระหว่าง diffเห็นได้ชัดว่าสามารถแสดงความแตกต่างระหว่างสองบรรทัดได้ แต่ฉันผลักดันตัวเองให้พยายามค้นหาว่าค่าใดในรายการค่าที่คั่นด้วยเครื่องหมายจุลภาคอันที่จริงแล้วคือค่าที่ทำให้เส้นแตกต่างกัน เครื่องมือใดที่ฉันสามารถใช้เพื่อชี้ให้เห็นความแตกต่างของอักขระที่แน่นอนระหว่างสองบรรทัดในไฟล์บางไฟล์
113 command-line  diff 

6
มีเครื่องมือในการรับบรรทัดในไฟล์ที่ไม่ได้อยู่ในไฟล์อื่นหรือไม่?
มีเครื่องมือใดบ้างที่สามารถรับบรรทัดที่ไฟล์ A มี แต่ไฟล์ B ไม่มี? ฉันสามารถสร้างสคริปต์ง่าย ๆ ด้วยเช่น perl แต่ถ้ามีอะไรทำนองนี้มีอยู่แล้วฉันจะประหยัดเวลานับจากนี้
110 command-line 

5
การใช้เส้นประ (-) แทนชื่อไฟล์
สำหรับคำสั่งหากใช้-เป็นอาร์กิวเมนต์แทนชื่อไฟล์จะหมายถึง STDIN หรือ STDOUT แต่ในตัวอย่างนี้มันจะสร้างไฟล์ที่มีชื่อ-: echo hello > - ฉันจะทำ-ในตัวอย่างนี้หมายถึง STDOUT ได้อย่างไร ในทางกลับกันฉันจะทำให้-ชื่อไฟล์เป็น-ตัวอย่างได้อย่างไร: cat -

5
ทำความเข้าใจกับเครื่องหมายอัศเจรีย์ (!) ในทุบตี
ฉันใช้ history | less เพื่อรับบรรทัดคำสั่งก่อนหน้าและจากตัวเลขทางด้านซ้ายมือฉันพบบรรทัดที่ต้องการซ้ำ (เช่น 22) และทำ !22 ที่พรอมต์คำสั่งและทำงานได้ - ดำเนินการชุดคำสั่งบนบรรทัดที่ฉันทำในเวลานั้น ฉันไม่สามารถทราบได้ว่ามีการใช้เครื่องหมายอัศเจรีย์อะไรในแง่ของการกระทำที่ถูกใช้โดยการทุบตีและตำแหน่งที่จะใช้ จากเอกสารฉันไม่เห็นคำอธิบายที่เป็น 'จับต้องได้'

5
สร้างไฟล์ในขนาดที่กำหนดหรือไม่
example.fileฉันต้องการที่จะสร้างไฟล์ที่มีชื่อ ฉันสามารถใช้ touch example.file แต่ฉันต้องการไฟล์ที่มีขนาด 24MB ฉันตรวจสอบ manpage of touch แล้ว แต่ไม่มีพารามิเตอร์เช่นนี้ มีวิธีง่ายๆในการสร้างไฟล์ที่มีขนาดที่แน่นอนหรือไม่?
106 bash  command-line  files 

10
เหตุใด argv จึงรวมชื่อโปรแกรม
โปรแกรม Unix / Linux ทั่วไปยอมรับอินพุตบรรทัดคำสั่งเป็นจำนวนอาร์กิวเมนต์ ( int argc) และเวกเตอร์อาร์กิวเมนต์ ( char *argv[]) องค์ประกอบแรกของargvคือชื่อโปรแกรม - ตามด้วยข้อโต้แย้งที่เกิดขึ้นจริง ทำไมชื่อโปรแกรมที่ส่งผ่านไปยังไฟล์ที่เรียกทำงานได้เป็นอาร์กิวเมนต์? มีตัวอย่างของโปรแกรมที่ใช้ชื่อของตัวเอง (อาจเป็นexecสถานการณ์บางอย่าง) หรือไม่?

1
เราจะระบุรูปแบบการเพิกเฉยหลายรูปแบบสำหรับคำสั่ง 'tree' ได้อย่างไร
ฉันต้องการพิมพ์โครงสร้างไดเรกทอรีของระบบการผลิตของเราและฉันต้องการลบบางไดเรกทอรีออกจากต้นไม้หรือไม่ เราจะระบุรูปแบบการเพิกเฉยหลายtreeคำสั่งได้อย่างไร

10
มีวิธีดูรายละเอียดของเธรดทั้งหมดที่กระบวนการมีใน Linux หรือไม่?
สำหรับ Windows ฉันคิดว่าProcess Explorerจะแสดงเธรดทั้งหมดให้คุณทราบ มียูทิลิตีบรรทัดคำสั่งที่คล้ายกันสำหรับ Linux ที่สามารถแสดงรายละเอียดเกี่ยวกับเธรดทั้งหมดที่กระบวนการเฉพาะวางไข่หรือไม่ ฉันคิดว่าฉันควรทำให้ตัวเองชัดเจนยิ่งขึ้น ฉันไม่ต้องการที่จะเห็นลำดับชั้นของกระบวนการ แต่รายการของกระทู้ทั้งหมดที่เกิดจากกระบวนการเฉพาะ ดูภาพหน้าจอนี้ วิธีนี้สามารถทำได้ใน Linux? ขอบคุณ!

5
ฉันจะแนบเทอร์มินัลเข้ากับกระบวนการที่แยกออกได้อย่างไร
ฉันได้แยกกระบวนการออกจากเทอร์มินัลของฉันเช่นนี้ $ process & เทอร์มินัลนั้นปิดตัวไปนาน แต่processยังคงทำงานอยู่และฉันต้องการส่งคำสั่งบางอย่างไปยัง stdin ของกระบวนการนั้น เป็นไปได้ไหม

6
ไฟล์จะไปที่ไหนเมื่อออกคำสั่ง rm?
เมื่อเร็ว ๆ นี้ฉันบังเอิญทำrmกับไฟล์หนึ่งชุดและทำให้ฉันคิดว่าไฟล์เหล่านี้จะจบลงตรงไหน? กล่าวคือเมื่อทำงานกับ GUI ไฟล์ที่ถูกลบไปที่ถังขยะ มีอะไรเทียบเท่าrmและมีวิธีการยกเลิกrmคำสั่งหรือไม่
98 command-line  rm  trash 

3
^ x ^ y unix หลอกลวงสำหรับอินสแตนซ์ทั้งหมดในคำสั่งสุดท้ายหรือไม่
หนึ่งในเทคนิค Unix ที่ฉันโปรดปรานคือการ^x^yใช้คำสั่งสุดท้ายและแทนที่อินสแตนซ์แรกของ "x" ด้วย "y" แต่ฉันสงสัยว่าถ้าเป็นเคล็ดลับที่คล้ายกันทำงานเพื่อแทนที่ทุกกรณีของ "x" กับ "Y" ในคำสั่งสุดท้าย?

10
จำคำสั่งแบบครึ่งหนึ่งขณะที่ฉันตรวจสอบบางอย่าง
ฉันมักจะพบว่าตัวเองอยู่ในตำแหน่งต่อไปนี้: ฉันเริ่มพิมพ์คำสั่งยาวที่พรอมต์ bash แต่ครึ่งทางฉันพบว่าฉันต้องตรวจสอบบางสิ่งด้วยคำสั่งอื่น ปัญหานี้เกิดขึ้นเมื่อฉันอยู่ที่คอนโซล (ไม่ใช่ X) ซึ่งมักเป็นเช่นนี้เพราะฉันมีวิธีที่ไม่น่าพอใจดังต่อไปนี้เท่านั้นที่ฉันรู้: Hit ctrl+ alt+ F2และเข้าสู่ระบบอีกคอนโซลเสมือนจริงและหาสิ่งที่ฉันต้องการจากนั้นกลับไปและดำเนินการต่อ ctrl+ a, พิมพ์ echo + space+ enter, ค้นหาสิ่งที่ฉันต้องการ, กด↑จนกว่าฉันจะพบคำสั่ง, ctrl+ a, delx 5, ctrl+ e, และทำต่อไป ไฮไลต์สิ่งที่ฉันพิมพ์จนถึงตอนนี้ด้วยเมาส์ของฉัน (ถ้า gpm ทำงานซึ่งปกติแล้ว) กดctrl+ cเพื่อขัดจังหวะค้นหาสิ่งที่ฉันต้องการในขณะที่ระมัดระวังไม่ใช้เมาส์เพื่อไฮไลต์สิ่งต่าง ๆ จากนั้นกดปุ่มกลางของเมาส์ บนพรอมต์ใหม่และดำเนินการต่อ อธิษฐานต่อพระเจ้าบรรทัดคำสั่งว่าคำสั่งแบบครึ่งคำสั่งจะไม่มีผลกระทบใด ๆ แต่ล้มเหลวและกดปุ่มป้อนอย่างละเอียดจากนั้นค้นหาสิ่งที่ฉันต้องการกดให้แคบลงจนกว่าจะได้รับคำสั่งกลับมาและดำเนินการต่อ กระโดดเข้าสู่ไทม์แมชชีนย้อนเวลากลับไปและเตือนตัวเองให้เริ่มหน้าจอก่อนที่จะเริ่มพิมพ์คำสั่งเดินทางกลับสู่ปัจจุบันกดctrl+ a cค้นหาสิ่งที่ฉันต้องการกดctrl+ a ctrl+aและดำเนินการต่อ ดังนั้นสิ่งที่ฉันอยากรู้คือมีวิธีที่สง่างามกว่านี้บ้างไหม? ประเภทของคำสั่ง subshell หรือคล้ายกัน? ฉันสนใจวิธีการที่ไม่ต้องการการเตรียมการหรือการตั้งค่าใด …
97 bash  command-line  zsh 

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