Unix & Linux

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

3
ทำไม nm ไม่แสดงสัญลักษณ์สำหรับ /lib/i386-linux-gnu/libc.so.6
ผมคาดว่าจะเห็นจำนวนของสัญลักษณ์ในlibc.so.6ไฟล์รวมทั้งprintf ฉันใช้เครื่องมือnmเพื่อค้นหาพวกเขา แต่มันบอกว่าไม่มีสัญลักษณ์ใน libc.so.6

1
วิธีการพิมพ์ json โดยใช้ jq standalone
ปัจจุบันเมื่อฉันต้องการพิมพ์ไฟล์ json โดยใช้jqฉันจะใช้: cat file.json | grep jq . แต่ฉันคาดว่าjqจะยอมรับชื่อไฟล์เป็นอาร์กิวเมนต์โดยไม่ต้องย้อนcatกลับ หน้าคนพูดว่า: jq [options ... ] ตัวกรอง [ไฟล์ ... ] ... โดยค่าเริ่มต้น jq อ่านกระแสของวัตถุ JSON (คั่นช่องว่าง) จาก stdin อาจระบุหนึ่งไฟล์ขึ้นไปซึ่งในกรณีนี้ jq จะอ่านอินพุตจากไฟล์เหล่านั้นแทน ยังทำงานอยู่: jq file.json ล้มเหลวโดยการทิ้งข้อผิดพลาดการคอมไพล์ที่ไม่ได้กำหนดคีย์ ฉันควรจะเพิ่มไฟล์เมื่อทำงานjqอย่างไร

2
กำลังวิ่งวว ทำไมทรัพยากรไม่ว่าง
ฉันเพิ่งฟอร์แมตการ์ด microSD และต้องการเรียกใช้ddคำสั่ง น่าเสียดายที่ddคำสั่งล้มเหลว: $ sudo dd bs=1m if=2016-02-26-raspbian-jessie-lite.img of=/dev/rdisk2 dd: /dev/rdisk2: Resource busy $ ทุกคนบนอินเทอร์เน็ตบอกว่าฉันต้องยกเลิกการต่อเชื่อมดิสก์ก่อน แน่นอนว่าสามารถทำได้และไปต่อ แต่ฉันต้องการที่จะเข้าใจว่าทำไม / สิ่งที่แน่นอนใน OS X ทำให้อุปกรณ์ไม่ว่าง ? ฉันจะวินิจฉัยสิ่งนี้ได้อย่างไร จนถึงตอนนี้ฉันพยายาม: รายการไฟล์ที่เปิดอยู่: $ lsof /dev/disk2 $ lsof /dev/disk2s1 $ นอกจากนี้: $ lsof /Volumes/UNTITLED $ รายชื่อผู้ใช้ที่ทำงานกับไฟล์: $ fuser -u /dev/disk2 /dev/disk2: $ fuser -u /dev/disk2s1 /dev/disk2s1: …
31 osx  dd  sd-card  resources 

3
fork: ลองอีกครั้ง: ทรัพยากรไม่สามารถใช้งานได้ชั่วคราว
ขณะที่ฉันเชื่อมต่อกับเซิร์ฟเวอร์ฉันจะได้รับ -bash: fork: retry: Resource temporarily unavailable -bash: fork: retry: Resource temporarily unavailable -bash: fork: retry: Resource temporarily unavailable -bash: fork: retry: Resource temporarily unavailable -bash: fork: Resource temporarily unavailable และฉันลองทำตามคำสั่งแล้วผลลัพธ์ก็เหมือนกัน -bash-4.1$ df -h -bash: fork: retry: Resource temporarily unavailable -bash: fork: retry: Resource temporarily unavailable -bash: fork: retry: Resource …
31 linux  fork 

5
จะแทนที่เนื้อหาของคอลัมน์ใดคอลัมน์หนึ่งด้วย awk ได้อย่างไร?
รับ: มี 40 คอลัมน์ในการบันทึกเป็น ฉันต้องการแทนที่คอลัมน์ 35 เพื่อให้คอลัมน์ 35 ถูกแทนที่ด้วยเนื้อหาของคอลัมน์ 35 และสัญลักษณ์ "$" สิ่งที่อยู่ในใจคือ: awk '{print $1" "$2" "...$35"$ "$36...$40}' มันใช้งานได้ แต่เพราะมันเป็นไปไม่ได้เมื่อจำนวนคอลัมน์มีขนาดใหญ่เท่ากับ 10k ฉันต้องการวิธีที่ดีกว่าในการทำสิ่งนี้

3
ฉันจะ“ แมวและติดตาม” ไฟล์ได้อย่างไร
wgetไฟล์จะถูกดาวน์โหลดตามลำดับโดย หากฉันเริ่มเปิดออกด้วยcat myfile.tar.bz2 | tar -xjอาจเป็นแกะอย่างถูกต้องหรือล้มเหลวด้วย "ไม่คาดคิด EOF" ขึ้นอยู่กับสิ่งที่เร็วขึ้น วิธี "cat และ follow" ไฟล์เช่นเนื้อหาที่ส่งออกของไฟล์ไปยัง stdout แต่ไม่ออกจาก EOF ให้หม่อม subribed ไปที่ไฟล์นั้นและทำการส่งออกส่วนใหม่ของข้อมูลออกต่อเมื่อปิดไฟล์โดย ผู้เขียนและไม่เปิดใหม่ภายใน N วินาที ฉันได้สร้างสคริปต์cat_and_followตามคำตอบของ @ arielCo ซึ่งจะยุติtailเมื่อไฟล์ไม่ถูกเปิดเพื่อการเขียนอีกต่อไป
31 files  pipe  cat  tail  open-files 

9
ฉันจะลบบรรทัดแรกและบรรทัดสุดท้ายของไฟล์โดยใช้คำสั่งเชลล์ได้อย่างไร
ฉันมีไฟล์ชื่อElement_queryที่มีผลลัพธ์ของแบบสอบถาม: SQL> select count (*) from element; [Output of the query which I want to keep in my file] SQL> spool off; ฉันต้องการลบบรรทัดที่ 1 และบรรทัดสุดท้ายโดยใช้คำสั่งเชลล์
31 shell  sed  awk  grep  pipe 

4
น้อยกว่า - ได้รับถ้าหากหนึ่งหน้าจอโดยไม่ต้อง - no-init
ฉันอยู่บนหน้าจอเทอร์มินัลที่รองรับหน้าจอทางเลือกที่ใช้น้อยกว่าเป็นกลุ่มเป็นต้นเพื่อเรียกคืนหน้าจอก่อนหน้าหลังจากออกจาก นั่นเป็นคุณสมบัติที่ดี แต่จริง ๆ แล้วแบ่ง--quit-if-one-screenสวิตช์lessเนื่องจากในกรณีนั้นน้อยสลับไปยังหน้าจออื่นแสดงข้อมูลตัวเลขมีเพียงหน้าจอเดียวและออกจากการใช้เนื้อหาของหน้าจออื่นด้วย วิธีแก้ปัญหาที่แนะนำโดยทั่วไปคือการใช้--no-initสวิตช์เพื่อหลีกเลี่ยงการใช้หน้าจออื่นโดยสิ้นเชิง แต่นี้ค่อนข้างน่าเกลียดเพราะผมไม่ต้องการที่จะใช้ในกรณีที่น้อยจริงทำหน้าที่เป็นเพจเจอร์ ดังนั้นฉันกำลังมองหาวิธีแก้ปัญหาที่จะใช้หน้าจอทางเลือกเฉพาะในกรณีที่น้อยกว่าจะไม่สิ้นสุดโดยอัตโนมัติ ส่วนใหญ่ฉันจะใช้สิ่งนี้เป็นเพจเจอร์ของ Git ดังนั้นสคริปต์ shell wrapper ที่ทำงานน้อยลงในกรณีที่มีเอาต์พุตมากพอที่จะใช้ได้เช่นกัน อย่างน้อยถ้าไม่มีวิธีที่จะทำโดยไม่มีใคร
31 less 

3
สัญญาณทำงานอย่างไรภายใน
โดยทั่วไปจะฆ่ากระบวนการที่เราสร้างสัญญาณเช่นSIGKILL, SIGTSTPฯลฯ แต่จะทราบได้อย่างไรว่าใครสั่งให้สัญญาณนั้นใครส่งไปยังกระบวนการเฉพาะและโดยทั่วไปสัญญาณทำงานอย่างไร สัญญาณภายในทำงานอย่างไร

1
โทนสีที่ดีสำหรับดวงตา
มีแนวทางทั่วไปอย่างไรในการเลือกชุดสี (เช่นสีพื้นหน้า / สีพื้นหลัง) สำหรับเทอร์มินัลemacsฯลฯ เพื่อลดการอ่อนล้าของดวงตา? ถ้าเป็นเช่นนั้นมีหลักฐานทางวิทยาศาสตร์สำหรับแนวทางดังกล่าวหรือไม่? โดยเฉพาะมีพร้อมที่จะใช้โทนสีที่เป็นมิตรกับตาสำหรับurxvtและemacs? แก้ไข: มันจะน่าสนใจเช่นกันที่จะรู้ว่าการตัดสินใจขึ้นอยู่กับหน้าจอ (ด้าน, เงา) และสภาพแวดล้อม (ในร่ม, กลางแจ้ง, ... ) ในกรณีของฉันมันคือ Dell Latitude ATG ซึ่งมีหน้าจอมันเล็กน้อย (ไม่ใช่แบบด้าน แต่ไม่ใช่แบบกระจก) ฉันใช้มันในอาคารในสำนักงานในห้องมืดและนอกบ้าน ในกรณีของฉันฉันแรกคิดว่าตัวอักษรสีดำบนพื้นหลังสีขาวเป็นสิ่งที่ดีที่สุดเพราะพื้นหลังสีขาวลดการสะท้อนเนื่องจากหน้าจอมัน และเนื่องจากสีดำบนสีขาวดูเหมือนว่าจะมีความคมชัดสูง อย่างไรก็ตามดูเหมือนว่าดวงตาสีขาวเจิดจ้า ... ฉันควรชี้ให้เห็นว่าฉันไม่ได้สนใจในความคิดเห็นส่วนตัว แต่ในหลักฐานทางวิทยาศาสตร์หรืออย่างน้อยก็ในแนวทางที่เป็นที่ยอมรับโดยทั่วไปตามประสบการณ์
31 colors 

3
รูปแบบของคุกกี้เมื่อใช้ wget?
อะไรคือรูปแบบของ Netscape wget's cookies.txt? ฉันต้องการทำมิเรอร์เว็บไซต์ที่ต้องมีการเข้าสู่ระบบ ฉันใช้ส่วนขยาย Chrome ที่ส่งคืนคุกกี้ในรูปแบบนั้นฉันบันทึกไว้cookies.txtนำเข้าพร้อมwgetคำสั่ง แต่ไม่มีประโยชน์มันแค่ดาวน์โหลดเนื้อหาเช่นฉันไม่ได้ลงชื่อเข้าใช้เลย ฉันขอขอบคุณความช่วยเหลือใด ๆ
31 wget 

2
grep และหนีเครื่องหมายดอลลาร์
$Id$ฉันต้องการที่จะทราบว่ามีไฟล์สตริง grep \$Id\$ my_dir/mylist_of_files ส่งกลับค่าที่เกิดขึ้น 0 ฉันค้นพบว่าฉันต้องใช้ grep \$Id$ my_dir/mylist_of_files จากนั้นฉันจะเห็นว่า$Idมีสีในเอาต์พุตนั่นคือมันถูกจับคู่ ฉันจะจับคู่ที่สองได้อย่างไร$และทำไมไม่\$Id\$ทำงาน ไม่สำคัญว่าตัวที่สอง$จะเป็นตัวละครตัวสุดท้ายหรือไม่ ฉันใช้grep2.9 ก่อนโพสต์คำถามของฉันฉันใช้ google ... ฉันพบคำตอบ หากต้องการค้นหา $ (เครื่องหมายดอลลาร์) ในไฟล์ชื่อ test2 ให้ป้อน: grep \\ $ test2 จำเป็นต้องใช้อักขระ \\ (double backslash) เพื่อบังคับให้เชลล์ส่ง a \ $ (เครื่องหมายแบ็กสแลชเดี่ยว, เครื่องหมายดอลลาร์) ไปยังคำสั่ง grep อักขระ \ (แบ็กสแลชเดี่ยว) บอกให้คำสั่ง grep ปฏิบัติต่ออักขระต่อไปนี้ (ในตัวอย่างนี้ $) เป็นตัวอักษรมากกว่าอักขระนิพจน์ ใช้คำสั่ง …

16
Console Text Editor พร้อมแป้นพิมพ์ลัดเสมือน Windows (ctrl-z, x, c, v)
ตกลงฉันตระหนักว่าฉันเสี่ยงต่อสงครามศาสนาที่ถามคำถามเกี่ยวกับเครื่องมือแก้ไขข้อความ แต่นี่จะไป ความต้องการ ส่วนใหญ่ใช้สำหรับการแก้ไขไฟล์กำหนดค่า ข้อความไม่ใช่ GUI มีให้สำหรับรสชาติ Raspian ของเดเบียน ไม่จำเป็นต้องเรียนรู้สำหรับผู้ใช้ Windows / Mac GUI (ไม่ต้อง vi / vim) ทำให้การใช้คีย์อย่างเต็มรูปแบบพบได้บนคีย์บอร์ดสมัยใหม่เช่น home, end, pgup, pgdn, del ใช้แป้นพิมพ์ลัดที่พบในแอพ GUI เกือบทั้งหมดเช่นเลิกทำ ( Ctrl-Z) ทำซ้ำ ( Shift-Ctrl-Z) เลือกทั้งหมด ( Ctrl-A) ตัด ( Ctrl-X) คัดลอก ( Ctrl-C) วาง ( Ctrl-V) วางส่วนขยาย ( Shift-Arrow) ขยายคำที่เลือก ( ) …

7
ทำไมเครื่องเสมือนทั้งสองของฉันถึงได้รับที่อยู่ IP เดียวกัน
ฉันมีสองเครื่องเสมือนทั้งสองทำงานบนโฮสต์ Linux (Fedora 16) ฉันตั้งค่าอะแดปเตอร์ทั้งสองเป็นแนบกับ NAT 10.0.2.2เมื่อฉันบูตพวกเขาขึ้นพวกเขาทั้งสองมีชุดเกตเวย์เริ่มต้นของพวกเขาไป (10.0.2.15)พวกเขายังทั้งสองมีที่อยู่เดียวกัน พวกเขาทั้งคู่อยู่ในอะแดปเตอร์เดียวกัน (อะแดปเตอร์ 1) ฉันไม่รู้ว่าทำไมพวกเขาถึงได้รับที่อยู่ IP เดียวกันและไม่ควรเกตเวย์เริ่มต้นเป็น10.0.2.1เพราะที่อยู่เครือข่ายย่อย10.0.2.0และ netmask คือ 255.255.255.0 มีบางสิ่งที่ฉันหายไปเกิดเหตุการณ์นี้กับทุกคนหรือไม่ ฉันจะทำให้ VirtualBox DHCP ทำงานอย่างถูกต้องได้อย่างไร
31 virtualbox  ip  dhcp 

8
แสดงวินาทีเป็นวัน / ชั่วโมง / นาที / วินาทีหรือไม่
เป็นไปได้หรือไม่ที่จะจัดรูปแบบวินาทีเป็นเวลาที่มนุษย์สามารถอ่านได้โดยง่ายในการทุบตี? ฉันไม่ต้องการจัดรูปแบบเป็นวันที่ แต่เป็นจำนวนวัน / ชั่วโมง / นาทีเป็นต้น ...
31 bash 

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