Unix & Linux

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

1
แสดงแถบที่อยู่ เส้นทางแบบเต็มใน Nautilus แทนที่จะเป็น breadcrumbs bar
น่าเสียดายที่แถบที่อยู่ของหอยโข่งของ Gnome ไม่แสดงเส้นทางแบบเต็มในแถบด้านบน ฉันจะเปลี่ยนพฤติกรรมนี้ได้อย่างไร ฉันกำลังมองหาวิธีที่จะแสดงสิ่งที่สามารถแก้ไขได้text fieldแทนเช่นในวันเก่าที่ดี
31 gnome  gui  nautilus 

3
ฉันจะโยง pgrep กับ kill ได้ไหม
ฉันสังเกตเห็นว่า|ใช้เพื่อส่งผลลัพธ์ของคำสั่งแรกไปยังอีก ฉันต้องการฆ่ากระบวนการทั้งหมดที่ตรงกับชื่อ นี่คือสิ่งที่ pgrep ทำตามปกติ: $ pgrep name 5089 5105 และข้อโต้แย้งหลายประการดูเหมือนจะทำงานกับkill: sudo kill 5089 5105 แต่นี่เป็นสิ่งที่ผิด: pgrep name | kill ดังนั้นจะทำอย่างไรให้ถูกต้อง?
31 shell  pipe  arguments 

2
การนับจำนวนคำในไฟล์ข้อความ
ฉันมีไฟล์ข้อความที่มีทวีตและฉันจำเป็นต้องนับจำนวนครั้งที่มีการกล่าวถึงคำในทวีต ตัวอย่างเช่นไฟล์ประกอบด้วย: Apple iPhone X is going to worth a fortune The iPhone X is Apple's latest flagship iPhone. How will it pit against it's competitors? และสมมติว่าฉันต้องการนับกี่ครั้งที่คำว่า iPhone ถูกกล่าวถึงในไฟล์ ดังนั้นนี่คือสิ่งที่ฉันได้ลอง cut -f 1 Tweet_Data | grep -i "iPhone" | wc -l มันใช้งานได้จริง แต่ฉันสับสนเกี่ยวกับคำสั่ง 'wc' ในยูนิกซ์ อะไรคือความแตกต่างถ้าฉันลองทำสิ่งที่ชอบ: cut -f 1 Tweet_Data …

2
ฉันสามารถบังคับให้ dnf ติดตั้งแพ็คเกจรุ่นเก่าได้หรือไม่?
ฉันต้องการที่จะติดตั้งรุ่นเก่าpackage <x>และเมื่อฉันใช้มันจะแสดงเฉพาะรุ่นปัจจุบันของdnfpackage <x> มีวิธีการติดตั้งรุ่นเก่ากว่าโดยใช้dnfหรือไม่?

6
ตรวจสอบว่าหมายเลขอินพุตเป็นจำนวนเต็มหรือไม่
ฉันพยายามตรวจสอบว่าการป้อนข้อมูลเป็นจำนวนเต็มหรือไม่และฉันผ่านไปหลายร้อยครั้ง แต่ไม่เห็นข้อผิดพลาดในสิ่งนี้ อนิจจามันไม่ทำงานมันเป็นต้นเหตุของคำสั่ง if สำหรับอินพุตทั้งหมด (ตัวเลข / ตัวอักษร) read scale if ! [[ "$scale" =~ "^[0-9]+$" ]] then echo "Sorry integers only" fi ฉันเล่นด้วยคำพูด แต่ก็ไม่ได้ทำหรือไม่ทำอะไรเลย ฉันทำอะไรผิด มีวิธีที่ง่ายกว่าในการทดสอบว่าอินพุตเป็นเพียงจำนวนเต็มหรือไม่?

1
ทำไมคำสั่ง strings จะไม่หยุด?
stringsพฤติกรรมคำสั่งวิจิตรพิสดารเห็นได้ชัดว่ามันไม่ได้หยุดเขียนไปยังแฟ้มแม้ว่าไดรฟ์วิ่งออกไปจากพื้นที่ หรือบางทีฉันหายไปบางอย่าง ฉันเรียกใช้ต่อไปนี้: # strings /dev/urandom > random.txt สิ่งนี้ยังคงทำงานต่อไปและไม่หยุดแม้หลังจากเติมดิสก์ (แฟลช usb ทั่วไป) ถ้าอย่างนั้นฉันจะสร้าง ramdisk ให้เร็วขึ้นและลองคำสั่งเดิมอีกครั้ง มันยังไม่หยุด ฉันเข้าใจว่าurandomไม่ใช่ไฟล์ปกติและstringsเอาต์พุตของยังถูกเปลี่ยนเส้นทางอย่างไรก็ตามในทั้งสองกรณีข้างต้นcatคำสั่งรายงานข้อผิดพลาดเมื่อไม่มีที่ว่าง # cat /dev/urandom > random.txt cat: write error: No space left on device นี่เป็นพฤติกรรมปกติของสตริงหรือไม่ ถ้าเป็นเช่นนั้นทำไม ข้อมูลจะถูกเขียนที่ไหนหลังจากไม่มีพื้นที่เหลืออีกแล้ว?
30 linux  shell  string 


7
ฉันจะดาวน์โหลดไฟล์จากโฮสต์ที่ฉันสามารถใช้ SSH ผ่านโฮสต์อื่นได้อย่างไร
ฉันต้องการดาวน์โหลดไฟล์จากคอมพิวเตอร์ที่ทำงานไปยังแล็ปท็อปของฉัน ฉันสามารถเชื่อมต่อเครื่องในสำนักงานของฉันด้วย SSH ไปยังเซิร์ฟเวอร์องค์กรและจากนั้น SSH จากเซิร์ฟเวอร์ไปยังเครื่องที่ทำงานของฉัน คำสั่งเดียวที่เซิร์ฟเวอร์องค์กรยอมรับคือ ssh, ssh1 และ ssh2 ฉันจะดาวน์โหลดไฟล์จากเครื่องที่สำนักงาน (ระยะไกล) ผ่านเซิร์ฟเวอร์ไปยังเครื่องแล็ปท็อปของฉันได้อย่างไร
30 ssh  scp 


3
ทำไมจะไม่ดาวน์โหลดลิงค์นี้เมื่อเบราว์เซอร์จะ?
ฉันใช้ Mac OS 10.11.6 El Capitan มีลิงค์ที่ฉันต้องการดาวน์โหลดโดยทางโปรแกรม: https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.16-osx10.11-x86_64.dmg หากฉันวาง URL นี้ลงในเบราว์เซอร์ใด ๆ (เช่น Safari) การดาวน์โหลดจะทำงานได้อย่างสมบูรณ์ อย่างไรก็ตามหากฉันพยายามดาวน์โหลด URL เดียวกันจากบรรทัดคำสั่งโดยใช้curlมันไม่ทำงานผลที่ได้คือไฟล์เปล่า: $ ls -lA $ curl -O https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.16-osx10.11-x86_64.dmg % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 …
30 curl 

4
วัตถุประสงค์ของการระงับที่ล่าช้า (Ctrl-Y) ใน Bash คืออะไร?
ส่วนเต็มของหน้า Bash man ซึ่งมีผลบังคับใช้จะบอกว่า: หากระบบปฏิบัติการที่ใช้ bash รองรับการควบคุมงาน bash จะมีระบบอำนวยความสะดวกในการใช้งาน การพิมพ์อักขระ suspend (โดยทั่วไปคือ ^ Z, Control-Z) ในขณะที่กระบวนการกำลังทำงานอยู่ทำให้กระบวนการนั้นหยุดลงและส่งกลับการควบคุมไปยัง bash การพิมพ์อักขระหยุดทำงานล่าช้า (โดยทั่วไปคือ ^ Y, Control-Y) ทำให้กระบวนการหยุดทำงานเมื่อพยายามอ่านอินพุตจากเทอร์มินัลและการควบคุมจะถูกส่งกลับไปยังทุบตี ผู้ใช้อาจจัดการกับสถานะของงานนี้โดยใช้bg คำสั่งเพื่อดำเนินการต่อในพื้นหลังfgคำสั่งเพื่อดำเนินการต่อในเบื้องหน้าหรือคำสั่ง kill เพื่อฆ่ามัน A ^ Z มีผลบังคับใช้ทันทีและมีผลข้างเคียงเพิ่มเติมที่ทำให้การส่งออกและประเภทหัวพิมพ์ที่รอดำเนินการถูกยกเลิก ฉันไม่เคยใช้Ctrl- Y; ฉันเพิ่งเรียนรู้เกี่ยวกับมัน ฉันทำได้ดีกับCtrl- Z(ระงับ) เท่านั้น ฉันพยายามจินตนาการว่าตัวเลือกนี้มีไว้เพื่ออะไร มันจะมีประโยชน์เมื่อไหร่? (โปรดทราบว่าคุณลักษณะนี้ไม่มีอยู่ในรุ่น Unix ทั้งหมดมีอยู่ในSolarisและFreeBSDแต่ไม่ใช่ใน Linux การตั้งค่าที่สอดคล้องกันคือstty dsusp) บางทีอาจจะน้อยจิตใจ: มีอะไรที่สามารถทำได้ด้วยCtrl- Yที่ไม่สามารถทำได้อย่างง่ายดายเพียงแค่มีCtrl- Z?

3
ดูประวัติทุบตีที่หลากหลาย
historyรายการคำสั่งออกทั้งหมดประวัติศาสตร์สำหรับเซสชันปัจจุบัน ชอบ: 1 ls 2 cd /root 3 mkdir something 4 cd something 5 touch afile 6 ls 7 cd .. 8 rm something/afile 9 cd .. 10 ls 11 history เพื่อที่จะค้นหารายการที่น่าสนใจฉันสามารถท่อhistoryด้วยgrepเช่น history | grep ls 1 ls 6 ls 10 ls ฉันยังสามารถดู 3 คำสั่งสุดท้ายเช่น: history 3 11 history 12 …

4
แอปพลิเคชั่น X เตือนว่า "ไม่สามารถเชื่อมต่อกับบัสการเข้าถึงได้" บน stderr
ดูเหมือนว่าทุกแอปพลิเคชันจากเทอร์มินัลจะให้คำเตือนและข้อความแสดงข้อผิดพลาดถึงแม้ว่ามันจะทำงานได้ดีก็ตาม Emacs: ** (emacs:5004): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-xxfluS2Izg: Connection refused Evince: ** (evince:5052): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-xxfluS2Izg: Connection refused (evince:4985): Gtk-CRITICAL **: gtk_widget_show: assertion 'GTK_IS_WIDGET (widget)' failed (evince:4985): Gtk-CRITICAL **: gtk_widget_show: assertion …
30 terminal  x11  gtk  stderr  bugs 

1
การจัดวางแป้นพิมพ์และทางลัดที่หลากหลาย
ฉันกำหนดค่า KDE ให้เปลี่ยนจากbépo (french-dvorak) ไปเป็นเลย์เอาต์ได้อย่างง่ายดาย ผมกำหนดค่ากับอินเตอร์เฟซของ KDE ( systemsettings) แต่ผมคิดว่ามันเป็นเพียงแค่โทรและsetxkbmap be setxkbmap frเค้าโครง azerty เป็นค่าเริ่มต้น (และเป็นรายการแรกในรายการโครงร่าง) อย่างไรก็ตามทางลัดยังคงติดอยู่กับปุ่มทางกายภาพ: การกดปุ่มqจะให้ "q" ในความฉลาดและ "a" ด้วยรูปแบบ bepo อย่างไรก็ตามการกดctrl+ qจะมีผลเหมือนกันในทั้งสองกรณี (การเลิกใช้งานในโปรแกรมส่วนใหญ่เช่นกับkwriteหรือkonsole) โปรดทราบว่าซอฟต์แวร์บางตัว (เช่นfirefox) ทำสวิตช์ (กดปุ่มjซึ่งพิมพ์ "t" ด้วยรูปแบบbépoและctrlในเวลาเดียวกันเปิดแท็บใหม่ซึ่งเป็นลักษณะการทำงานที่คาดไว้) ตามความคิดเห็นนี้แอพ GTK ทำการสับเปลี่ยนในขณะที่แอพ Qt ไม่ทำ วิธีสร้างปุ่มของทางลัดและปุ่มเพื่อป้อนข้อความให้ตรงกันในซอฟต์แวร์ทั้งหมด แม่นยำยิ่งขึ้นปุ่มลัดจะถูกกำหนดตามเค้าโครงแรกในรายการ จะทำให้คำจำกัดความของทางลัดสลับไปยังแอพ Qt ได้อย่างไร? การกำหนดค่า (ระบบ): $ kded4 --version Qt : 4.8.6 …

8
มัลแวร์ที่เรียกใช้โดยผู้ใช้ที่ไม่มีสิทธิ์ของผู้ดูแลระบบหรือ sudo เป็นอันตรายต่อระบบของฉันหรือไม่? [ปิด]
หลังจากหยุดพักการทำงานของเครื่องลีนุกซ์เมื่อเร็ว ๆ นี้ฉันพบไฟล์ปฏิบัติการในโฟลเดอร์โฮมของผู้ใช้ที่มีรหัสผ่านไม่รัดกุม ฉันทำความสะอาดสิ่งที่ดูเหมือนจะเป็นความเสียหายทั้งหมด แต่ฉันกำลังเตรียมการเช็ดแบบเต็มเพื่อให้แน่ใจ มัลแวร์ที่ดำเนินการโดยผู้ใช้ที่ไม่ใช่ sudo หรือผู้ด้อยโอกาสสามารถทำอะไรได้บ้าง มันเป็นเพียงการมองหาไฟล์ที่ทำเครื่องหมายด้วยการอนุญาตให้โลกเขียนเพื่อติดไวรัส? ผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบสามารถทำสิ่งที่คุกคามในระบบ Linux ส่วนใหญ่ได้อย่างไร คุณสามารถให้ตัวอย่างของปัญหาในโลกแห่งความจริงการละเมิดความปลอดภัยประเภทนี้อาจทำให้เกิด?
30 security  malware 

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