Unix & Linux

คำถาม & คำตอบสำหรับผู้ใช้ Linux, FreeBSD และระบบปฏิบัติการ Un * x อื่น ๆ

1
รูปแบบทดแทนภายในไฟล์ที่มีเนื้อหาของไฟล์อื่น
ฉันมีไฟล์ข้อความ ( devel.xml) ฉันเพิ่มคำ REPLACETHIS ลงไปเพื่อแทนที่สตริงนี้ด้วยเนื้อหาภายในไฟล์อื่น ( temp.txt) สิ่งที่ฉันมีอยู่ใกล้ที่สุดคือ: sed -i -e "/REPLACETHIS/r temp.TXT" -e "s///" devel.txt; สิ่งนี้แทรกเนื้อหาหลังสตริงและจากนั้นลบสตริงในภายหลัง นี่เป็นวิธีที่ดีที่สุดที่จะทำ?

5
ฉันจะนำหน้าจอ HDMI ของฉันเข้าสู่โหมดประหยัดพลังงาน (และออก) ได้อย่างไร
คำถามนี้ถูกย้ายจาก Raspberry Pi Stack Exchange เพราะสามารถตอบได้ใน Unix & Linux Stack Exchange อพยพ 7 ปีที่ผ่านมา ฉันใช้ Raspberry Pi เพื่อเรียกใช้การแสดงข้อมูลในสำนักงาน ฉันต้องการให้จอแสดงผลในโหมดประหยัดพลังงานเมื่ออยู่นอกเวลาทำการ ฉันจะใช้cronเพื่อดำเนินการบางอย่างที่จุดเริ่มต้นและจุดสิ้นสุดของวัน แต่xset dpms force offไม่ทำงาน ฉันได้ปิดการใช้งานโปรแกรมรักษาหน้าจอ (เพื่อให้การเข้าพักการแสดงผลบนในช่วงวันที่) ด้วยนอกเหนือจากxset s off, xset -dpmsและxset s noblankใน/etc/xdg/lxsession/LXDE/autostartไฟล์ นี่คือผลลัพธ์จากxset q: Keyboard Control: auto repeat: on key click percent: 0 LED mask: 00000000 XKB indicators: 00: …

2
อะไรคือความแตกต่างระหว่างสถานะ mdadm“ active” และ state“ clean”
ฉันมีคอมพิวเตอร์สองเครื่องที่แตกต่างกันและมี RAID5 ต่างกัน เมื่อฉันเรียกใช้คำสั่ง mdadm --detail /dev/md0 ไดรฟ์หนึ่งรายงานว่า "ใช้งานอยู่" ในขณะที่รายงานอื่นจะ "ทำความสะอาด" สำหรับฟิลด์ "สถานะ" อะไรคือความแตกต่าง? ฉันควรกังวลเกี่ยวกับสถานะใด ทั้งคู่ดูเหมือนจะทำงานได้ดี
20 raid  mdadm 

1
ใช้เซสชัน D-Bus ซ้ำระหว่างเซสชันการเข้าสู่ระบบ
ฉันเข้าถึงเครื่องผ่านการเข้าสู่ระบบหลายครั้ง อายุการใช้งานของเซสชันอาจหรือไม่ทับซ้อนกัน ในกรณีของฉันเซสชันการลงชื่อเข้าใช้เหล่านี้มักจะผ่าน SSH เสมอ แต่ฉันต้องการจัดการเซสชันในท้องถิ่นด้วย บางครั้งผมต้อง D-Bus ในการประชุมเหล่านี้และฉันต้องการแบ่งปันเซสชั่น D-Bus เดียวกันในการประชุมเข้าสู่ระบบเหล่านี้เพื่อใช้ GVFS วิธีที่แนะนำให้ทำคืออะไร? ฉันไม่ต้องการทำลายการใช้งาน D-Bus ใด ๆ ที่ฉันอาจไม่ทราบ ฉันถือว่าใช้แล้ว export $(dbus-launch --autolaunch $(cat /var/lib/dbus/machine-id)) แต่ (ตั้งแต่ Ubuntu 12.04) สิ่งนี้ดูไม่ถูกต้อง: นี้ต้องเซสชั่น X แต่การประชุม SSH ของฉันอาจจะหรืออาจไม่ได้รับการส่งต่อการแสดงผล X, และแม้กระทั่งคนที่ไม่ได้มีเหมือนกัน$DISPLAY; หากไม่มีจอแสดงผล X ให้ใช้งานdbus-launchบ่นว่า“ ข้อผิดพลาดอัตโนมัติ: การเริ่มต้น X11 ล้มเหลว” และไม่เริ่มดีมอน dbus-launchรัฐหน้าคนว่า“ --autolaunchตัวเลือกที่มีการพิจารณารายละเอียดการดำเนินงานภายใน ( ... ) ไม่มีเหตุผลจริงที่จะใช้นอกเหนือจากการใช้งาน …
20 session  d-bus 

3
bash_profile ทั่วโลก
ฉันรู้ว่ามี/etc/profileและ/etc/bashrcไฟล์สำหรับตั้งค่าตัวแปรสภาพแวดล้อมทั่วโลกและบางทีฉันแค่เข้าใจผิดวัตถุประสงค์ของพวกเขา แต่ ... มีbash_profileไฟล์ทั่วโลกหรือไม่ ฉันใช้ Mac OS X
20 bash  osx  profile  bashrc  etc 

3
ฉันจะพิมพ์รหัสในรูปแบบที่ดีได้อย่างไร
เช่นเดียวกับการใช้ markdown บน Stack Overflow เพื่อสร้างmonospace outputฉันจะทำอย่างไรกับโปรแกรมของฉัน ฉันลอง lp filename.txt และรู้สึกยินดีอย่างยิ่งที่พบว่ามันสามารถใช้เครื่องพิมพ์เครือข่ายท้องถิ่นและพิมพ์ 'ตามที่เป็น' ปัญหาคือการส่งออกไม่เว้นระยะโมโน มีตัวเลือกที่เร็วกว่า ... 1) copy the text 2) paste into a text doc 3) format the document as mono 4) print it ฉันชอบที่จะหาตัวเลือกเช่นlp filename.txt -format=mono;)

6
ส่วนขยายใดที่จะใช้สำหรับไฟล์ข้อความ (Unix / Linux)
ฉันสังเกตเห็นว่าฉันสามารถอ่านไฟล์ข้อความโดยไม่มีนามสกุล.txtได้ มาทำไม ฉันควรบันทึกไฟล์เหล่านี้โดยมีหรือไม่มี.txtนามสกุลหรือไม่ นอกจากนี้.iniไฟล์เกี่ยวกับอะไร? ฉันมักจะใช้พวกเขาเช่นนี้config.iniฉันควรลบส่วนขยายที่นี่หรือไม่ แหล่งข้อมูลทั่วไปเกี่ยวกับวิธีที่ Linux จัดการกับส่วนขยายไฟล์จะมีประโยชน์

7
`หาง -f` จนกว่าจะเห็นข้อความ
ฉันมีเซิร์ฟเวอร์ CI ที่มีอินเตอร์เฟสบรรทัดคำสั่งที่อนุญาตให้ฉันเริ่มต้นงานจากระยะไกล ( jenkinsเซิร์ฟเวอร์ CI และjenkins-cli.jarเครื่องมือ) หลังจากที่ฉันปิดงานฉันtail -fบันทึก (ขออภัยสำหรับคำสั่งยุ่ง): ssh -t my-jenkins-host.com "tail -f \"/var/lib/jenkins/jobs/$job_name/builds/\`ls -ltr /var/lib/jenkins/jobs/$job_name/builds/ | grep '^l' | tail -n 1|awk '{print \$9}'\`/log\"" หลังจากงานเสร็จสมบูรณ์โดยปกติหลังจากอย่างน้อย 5 นาทีฉันได้รับบรรทัดต่อไปนี้ในผลลัพธ์: Finished: SUCCESS มีวิธีที่ดีในการหยุดบันทึกตามจุดนี้หรือไม่? เช่นจะมีtail_until 'some line' my-file.logคำสั่งหรือไม่? โบนัส:เครดิตพิเศษถ้าคุณสามารถให้คำตอบที่ส่งกลับ 0 เมื่อจับคู่ความสำเร็จได้ 1 เมื่อจับคู่ FAILURE ได้และโซลูชันของคุณทำงานบน mac! (ซึ่งฉันเชื่อว่าเป็น bsd ตาม)
20 logs  tail 

4
จะรู้ได้อย่างไรว่า Ubuntu ใช้ DHCP หรือไม่ (Ubuntu 12.04 LTS GUI)
ฉันจะทราบได้อย่างไรว่าที่อยู่ IP ของฉันคือ DHCP, คงที่หรือไดนามิก ฉันต้องบอกผู้ดูแลระบบเครือข่ายของฉันว่าที่อยู่ IP คืออะไรที่เครื่องเสมือนของฉันกำลังใช้งานอยู่ ฉันรู้ตัวเลข แต่ฉันไม่รู้ว่ามันได้รับการแก้ไขหรือไม่ ฉันลองifconfigแล้วและนั่นคือที่อยู่ IP ของฉันที่ส่งคืน
20 ubuntu  ip  dhcp  dynamic-dns 

2
มีวิธีทำให้หน้าจอเลื่อนเหมือนเทอร์มินัลปกติหรือไม่?
ฉันรักหน้าจอ แต่มันทำให้ฉันกลัวว่าฉันจะต้องหยุดพิมพ์อินพุตกดCTRL+A [และจากนั้นหาสิ่งที่ฉันต้องการ มีวิธีการทำฟังก์ชั่นล้อเลื่อนตามปกติมากกว่าคำสั่งการเลื่อนหรือไม่? นอกจากนี้เป็นไปได้ไหมที่จะเปิดใช้งาน Shift + PageUp / PageDn

3
ฉันจะล็อกออนอัตโนมัติกับเดสก์ท็อปด้วย systemd ได้อย่างไร
ฉันจะกำหนดค่า systemd เพื่อล็อกอินโดยอัตโนมัติในสภาพแวดล้อมเดสก์ท็อปของฉันได้อย่างไรโดยไม่ต้องใช้ตัวจัดการการเข้าสู่ระบบ ฉันกำลังใช้ Arch

1
สลับระหว่างตัวเลขและสัญลักษณ์บนตัวล็อคแคป
เป็นไปได้ไหมที่จะตั้งค่าตัวแคปล็อคเพื่อสลับระหว่างหมายเลขที่ใส่เข้าไปและสัญลักษณ์ที่พวกมันมักจะเรียกเมื่อมีการเปลี่ยนแปลง เช่นเมื่อคุณกดปุ่ม 9 ปกติคุณจะได้รับ(ยกเว้นว่าปุ่ม Caps Lock เปิดอยู่ ฉันพยายามเพิ่มบรรทัดนี้ลงในไฟล์เลย์เอาต์ของฉันที่/usr/share/X11/xkb/symbols: key <AE05> { [ percent, 5 ] }; สิ่งนี้จะเปลี่ยนความหมาย 'ปกติ' และ 'กะ' ได้อย่างมีประสิทธิภาพ แต่จะไม่สามารถใช้งานได้ในแคปล็อค - เฉพาะเมื่อเปลี่ยน

8
รักษาการประทับเวลาที่แก้ไขหลังจากแก้ไข
สำหรับไฟล์ภายในโฟลเดอร์ที่เฉพาะเจาะจงฉันต้องการให้กลุ่มที่จะไม่สัมผัส "แก้ไข" เวลาประทับเลย พื้นหลังคือฉันใช้Bloxsomสำหรับบล็อกซึ่งใช้ไฟล์ข้อความล้วน~/bloxsomเป็นแหล่งที่มาของบทความทั้งหมด วันที่ของบทความ (และลำดับของการปรากฏ) จะขึ้นอยู่กับวันที่แก้ไขของไฟล์ข้อความ ฉันไม่ต้องการให้บทความปรากฏขึ้นหากเป็นบทความใหม่เมื่อใดก็ตามที่ฉันเพิ่งพิมพ์ผิด (ฉันทำหลายอย่าง ... : D) จนถึงการเปลี่ยนแปลงเป็นกลุ่มที่ประทับเวลาและประทับเดิมจะหายไปตลอดกาล ไม่เป็นไรและฉันต้องการให้เป็นเช่นนั้นสำหรับไฟล์ส่วนใหญ่ในระบบ แต่ฉันไม่ต้องการสิ่งนั้นสำหรับไฟล์บล็อก - ฉันสามารถtouchใช้ไฟล์ได้ตลอดเวลาถ้าต้องการ ความคิดเห็นใด ๆ เกี่ยวกับวิธีปรับแต่งเสียงในพฤติกรรมนี้
20 vim  timestamps 

6
Unix shell มีความเสถียรเพียงใด“ stdin / stdout APIs”?
grepping, awking, sedding และ piping เป็นกิจวัตรประจำวันของผู้ใช้ระบบปฏิบัติการที่คล้าย Unix อาจอยู่ในบรรทัดคำสั่งหรือภายในเชลล์สคริปต์ (เรียกรวมกันว่าตัวกรองจากนี้เป็นต้นไป) ที่สำคัญเมื่อทำงานกับโปรแกรม "มาตรฐาน" Unix CLI และเชลล์บิวด์อิน (เรียกรวมกันว่าคำสั่งต่อจากนี้ไป) ตัวกรองต้องการรูปแบบที่คาดหวังอย่างแม่นยำสำหรับ stdin, stdout และ stderr ในแต่ละขั้นตอนของตัวกรองเพื่อให้ทำงานได้อย่างถูกต้อง ฉันเรียกรูปแบบที่คาดหวังนี้ของคำสั่งบางอย่างว่า API ของคำสั่งนี้มีดังต่อไปนี้ ในฐานะที่เป็นคนที่มีพื้นฐานการพัฒนาเว็บฉันเปรียบเทียบการรวบรวมข้อมูลและการประมวลผลข้อมูลทางเทคนิคกับการขูดเว็บซึ่งเป็นเทคนิคที่ไม่แน่นอนมากเมื่อใดก็ตามที่มีการเปลี่ยนแปลงเล็กน้อยในการนำเสนอข้อมูล คำถามของฉันตอนนี้เกี่ยวข้องกับความมั่นคงของ Unix APIs คำสั่ง คำสั่งในระบบปฏิบัติการแบบ Unix ทำตามมาตรฐานอย่างเป็นทางการที่เกี่ยวข้องกับอินพุตและเอาต์พุตหรือไม่? มีกรณีในประวัติศาสตร์ที่มีการปรับปรุงคำสั่งที่สำคัญบางอย่างทำให้การทำงานของตัวกรองบางตัวที่สร้างขึ้นโดยใช้คำสั่งรุ่นเก่ากว่านั้นเสียหายหรือไม่ มีคำสั่ง Unix ที่สุกเมื่อเวลาผ่านไปซึ่งเป็นไปไม่ได้ที่จะเปลี่ยนแปลงอย่างที่ตัวกรองบางตัวสามารถแตกได้หรือไม่? ในกรณีที่ตัวกรองอาจแตกเป็นครั้งคราวเนื่องจากการเปลี่ยนคำสั่ง APIs ฉันจะเป็นนักพัฒนาป้องกันตัวกรองจากปัญหานี้ได้อย่างไร

3
เก็บคำสั่งที่ประสบความสำเร็จเท่านั้นในประวัติ BASH
บางครั้งฉันเข้าใจผิดไวยากรณ์ของคำสั่ง: # mysql -d test mysql: unknown option '-d' # echo $? 2 ฉันลองอีกครั้งและทำให้ถูกต้อง: # mysql --database test Welcome to the MySQL monitor. mysql > ... ฉันจะป้องกันคำสั่งแรกที่มีรหัสข้อผิดพลาดแตกต่างจาก 0 เพื่อป้อนประวัติได้อย่างไร

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