Unix & Linux

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



6
Shell:“ แสดงความเป็นไปได้ทั้งหมด 2588?”
ดังนั้นฉันจึงย้ายแล็ปท็อปของฉันไปรอบ ๆ (และฉันมีนิสัยที่ไม่ดีในการจัดวางสิ่งต่าง ๆ บนแป้นพิมพ์ ... ) และฉันตื่นขึ้นมาเพื่อค้นหาสิ่งนี้: $ แสดงความเป็นไปได้ทั้งหมด 2588 รายการ? (y หรือ n) คำสั่งอะไรที่จะแสดงบางอย่างเช่นนี้? ฉันกำลังใช้ Bash
16 bash  shell 

5
ล้มเหลวในขั้นตอน EXEC วางไข่ / bin / plymouth (ทดสอบเดเบียน)
หลังจากฉันทำการdist-upgradeทดสอบ Debian (Jessie) แล้วฉันไม่สามารถบูตได้อีกต่อไป ฉันถูกปล่อยทิ้งไว้ที่พร้อมท์คำสั่ง: Welcome to emergency mode! After logging in, type "journalctl -xb" to view system logs ข้อผิดพลาดต่อไปนี้จะปรากฏขึ้น: root@debian:~# journalctl -xb debian systemd[222]: Failed at step EXEC spawning /bin/plymouth: No such file or directory น่าแปลกใจที่Google ไม่ได้ช่วยเหลือและสิ่งเล็ก ๆ น้อย ๆ ที่ฉันเห็นมีไว้สำหรับ Arch (แม้ว่าฉันจะเพิ่ม + debian ในการค้นหาของฉัน) และก็ไม่สมเหตุสมผลสำหรับฉัน ตัวชี้ใด ๆ …

3
แทนที่เนื้อหากลุ่มการจับภาพ regex โดยใช้ sed
ฉันพยายามแก้ไขไฟล์ nginx.conf ของฉันโดยทางโปรแกรมซึ่งมีบรรทัดดังนี้: access_log /var/log/nginx/access.log; ซึ่งฉันต้องการให้มีลักษณะเช่นนี้: access_log /dev/stdout; ฉันเชื่อว่า regex ^\s*access_log([^;]*);จะจับ/var/log/nginx/access.logส่วนหนึ่งในกลุ่มการดักจับ แต่ฉันไม่แน่ใจว่าจะแทนที่กลุ่มการจับภาพด้วย sed ได้อย่างไร ฉันได้พยายาม echo " access_log /var/log/nginx/access.log;" | sed 's/^\s*access_log([^;]*);/\1\\\/dev\\\/stdout/' แต่ฉันได้รับข้อผิดพลาด: sed: -e expression #1, char 45: invalid reference \1 on `s' command's RHS ถ้าฉันลองsed -rแล้วไม่มีข้อผิดพลาด แต่ผลลัพธ์ไม่ใช่สิ่งที่ฉันคาดหวัง: /var/log/nginx/access.log\/dev\/stdout ฉันพยายามฉลาดด้วยกลุ่มจับภาพและไม่สนใจและค้นหาคำว่า "access_log /var/log/nginx/access.log โดยตรง" ในกรณีที่การกระจายเปลี่ยนตำแหน่งไฟล์บันทึกเริ่มต้น
16 sed 

4
รวมไฟล์ข้อความสองไฟล์เข้าด้วยกันเพื่อเพิ่มตัวคั่นบางส่วนใช่หรือไม่
cat file1 file2จะรวมสองไฟล์ข้อความ แต่ถ้าฉันต้องการเพิ่มตัวคั่นบางส่วนระหว่าง********************************ฉันต้องเปิดไฟล์แรกและเพิ่มบรรทัดที่จุดสิ้นสุดหรือเปิดไฟล์ที่สองและเพิ่มบรรทัดที่ด้านบนสุดแล้วเรียกใช้catคำสั่ง? สามารถใช้คำสั่งรันคำสั่งได้หรือไม่?

3
SSH ล้มเหลวในการตรวจสอบกุญแจสาธารณะ
ฉันมีเซิร์ฟเวอร์และฉันต้องการ SSH ด้วยผู้ใช้สองคน ฉันมีการตั้งค่าการตรวจสอบกุญแจสาธารณะสำหรับผู้ใช้รายแรกและใช้งานได้ดี แต่ฉันไม่สามารถเข้าสู่ระบบด้วยผู้ใช้คนที่สองได้ ความแตกต่างระหว่างauthorized_keysไฟล์คือผู้ใช้คนที่สองมีสองปุ่ม (ทั้งคู่ล้มเหลวเมื่อตรวจสอบสิทธิ์) ทั้งไดเร็กทอรี. ssh และไฟล์คีย์ที่ได้รับอนุญาตมีสิทธิ์ 755 ไคลเอ็นต์ ssh ส่งคีย์ซึ่งฉันต้องการตรวจสอบสิทธิ์ด้วย มีปัญหาอะไร
16 ssh 

4
จะทราบได้อย่างไรว่าจะพิมพ์ชื่อเพื่อเปิดโปรแกรมหลังจากติดตั้งด้วย yum / rpm
ฉันเพิ่งติดตั้งrpmโดยใช้คำสั่งต่อไปนี้: yum localinstall ./FoxitReader-1.1-0.fc9.i386.rpm ทีนี้นี่เป็นกลอุบายและฉันสามารถเปิดใช้แอพได้โดยใช้: FoxitReader & จะเกิดอะไรขึ้นหากFoxitReaderไม่สามารถเปิดแอปพลิเคชันได้ ฉันจะหาชื่อไฟล์ตัวเรียกใช้ที่เพิ่งติดตั้งได้อย่างไร

4
มีทางเลือกอื่นในการใช้ `udev 'หรือไม่
ในขณะที่ฉันเข้าใจความยิ่งใหญ่ของ udev และชื่นชมความพยายามของนักพัฒนาฉันก็แค่สงสัยว่ามีทางเลือกอื่นหรือไม่ ตัวอย่างเช่นฉันอาจจินตนาการว่าควรมีวิธีในการสร้างสคริปต์เริ่มต้นที่สร้างโหนดอุปกรณ์ส่วนใหญ่ซึ่งในระบบของฉัน (ไม่มีฮาร์ดแวร์ที่เปลี่ยนแปลง) จะเหมือนกันที่สุด ประโยชน์หรือเหตุผลที่ฉันต้องการข้ามudevจะเหมือนกับการข้ามdbusคือลดความซับซ้อนและเพิ่มการเปลี่ยนแปลงในการตั้งค่าระบบให้ปลอดภัยยิ่งขึ้น
16 linux  devices  udev 

2
เครื่องมือในยูนิกซ์เพื่อลบไฟล์ข้อความ?
ฉันมีไฟล์ขนาดใหญ่ประกอบด้วยเขตข้อมูลข้อความคั่นด้วยเครื่องหมายอัฒภาคในรูปแบบของตารางขนาดใหญ่ มันได้รับการจัดเรียง ฉันมีไฟล์ขนาดเล็กที่ประกอบด้วยฟิลด์ข้อความเดียวกัน เมื่อถึงจุดหนึ่งบางคนต่อไฟล์นี้กับผู้อื่นแล้วเรียงลำดับเพื่อจัดทำไฟล์ขนาดใหญ่ที่อธิบายไว้ข้างต้น ฉันต้องการลบเส้นของไฟล์ขนาดเล็กออกจากไฟล์ใหญ่ (เช่นสำหรับแต่ละบรรทัดในไฟล์ขนาดเล็กหากมีสตริงการจับคู่อยู่ในไฟล์ขนาดใหญ่ให้ลบบรรทัดนั้นในไฟล์ขนาดใหญ่) ไฟล์มีลักษณะเช่นนี้โดยประมาณ GenericClass1; 1; 2; NA; 3; 4; GenericClass1; 5; 6; NA; 7; 8; GenericClass2; 1; 5; NA; 3; 8; GenericClass2; 2; 6; NA; 4; 1; ฯลฯ มีวิธีที่ดีงามอย่างรวดเร็วในการทำเช่นนี้หรือฉันต้องใช้ awk?

2
ฆ่ากระบวนการที่เริ่มต้นใหม่อย่างต่อเนื่อง
เกิดอะไรขึ้นถ้า 'kill -9' ไม่ทำงาน? หรือวิธีการฆ่าสคริปต์ที่เริ่มกระบวนการใหม่ ไม่ได้ช่วยฉันด้วยซ้ำ ฉันมีสคริปต์หลามซึ่งเริ่มต้นโดยอัตโนมัติที่มี ID กระบวนการอื่นใช้พอร์ตเดียวกันเมื่อถูกฆ่าตายsudo kill -9 <pid>โดยใช้ $ lsof -i :3002 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME python 13242 ubuntu 3u IPv4 64592 0t0 TCP localhost:3002 (LISTEN) $ sudo kill -9 13242 $ lsof -i :3002 COMMAND PID USER FD TYPE DEVICE …
16 process  kill 

3
eno หมายถึงอะไรในชื่ออินเทอร์เฟซเครือข่าย 'eno16777736' สำหรับ CentOS 7 หรือ RHEL 7
ภายใต้โครงร่างการตั้งชื่ออุปกรณ์เครือข่ายที่สอดคล้องกัน 'eno' หมายถึงอะไรในชื่ออินเตอร์เฟสเครือข่ายeno16777736สำหรับ CentOS 7 หรือ RHEL 7

4
คำสั่ง 'ip addr' แสดง 'UP' แม้จะไม่มีที่อยู่ที่เกี่ยวข้องกับอินเทอร์เฟซนั้น
ฉันต้องการที่จะเข้าใจว่าอินเตอร์เฟซเครือข่ายหมายถึงอะไร เพราะip addrหรือifconfigคำสั่งแสดงอินเตอร์เฟสเป็น up แม้ว่าจะไม่มี IP ที่เชื่อมโยง เช่นใน RHEL7: [root@IDCDVAM887 ~]# ifconfig ens256 ens256: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500 ether 00:50:56:9e:19:5b txqueuelen 1000 (Ethernet) RX packets 229406 bytes 59265584 (56.5 MiB) RX errors 0 dropped 229454 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 …
16 iproute 

4
ค้นหาความยาวของบรรทัดที่ยาวที่สุดในไฟล์ข้อความทั้งหมดในไดเรกทอรี
ฉันรู้วิธีรับความยาวของบรรทัดที่ยาวที่สุดในไฟล์ข้อความด้วย awk awk ' { if ( length > L ) { L=length} }END{ print L}' file.txt แต่ฉันจะรับความยาวของบรรทัดที่ยาวที่สุดของไฟล์ทั้งหมดในไดเรกทอรีได้อย่างไร?
16 awk 

3
ฉันจะลบข้อความก่อนตัวคั่นใน Linux ได้อย่างไร
ฉันต้องการลบข้อความออกจากบรรทัดก่อนตัวคั่น ตัวอย่างเช่น: (123434): hello::{apple,orange,mango}. :ฉันต้องการที่จะลบข้อความก่อนเป็นครั้งแรก (123434)กล่าวคือ มีคำสั่งใดใน linux ที่จะทำงานนี้หรือไม่?

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