คำถามติดแท็ก linux

คำถามเกี่ยวกับลินุกซ์จะต้องมีการเขียนโปรแกรมที่เกี่ยวข้อง ใช้แท็กนี้เฉพาะเมื่อคำถามของคุณเกี่ยวข้องกับการเขียนโปรแกรมโดยใช้ Linux API หรือพฤติกรรมเฉพาะของ Linux ไม่ใช่เพียงเพราะคุณใช้งานโค้ดของคุณบน Linux เท่านั้น หากคุณต้องการการสนับสนุน Linux คุณสามารถลอง https://unix.stackexchange.com หรือเว็บไซต์ Stack Exchange ของ Linux ที่เผยแพร่เฉพาะเช่น https://askubuntu.com หรือ https://elementaryos.stackexchange.com/

2
ลบประวัติเทอร์มินัลใน Linux [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน9 ปีที่ผ่านมา ปรับปรุงคำถามนี้ เมื่อคุณใช้คีย์ up ใน terminal Linux คุณสามารถใช้คำสั่งก่อนหน้าอีกครั้ง คุณสมบัติที่ยอดเยี่ยม อย่างไรก็ตามฉันเริ่มทำการบันทึก mysql ลงใน mysql พร้อมรายละเอียดที่ละเอียดอ่อนในคำสั่ง ฉันจะลบประวัตินั้นได้อย่างไร
170 linux  bash  terminal 

4
ตรวจสอบการอ้างอิงวัตถุที่ใช้ร่วมกันโดยตรงของไบนารี Linux?
ฉันจะค้นหาการพึ่งพาวัตถุที่ใช้ร่วมกันโดยตรงของไบนารี Linux ในรูปแบบ ELF ได้อย่างไร ฉันรู้เครื่องมือ ldd แต่ดูเหมือนว่าจะส่งออกการอ้างอิงทั้งหมดของไบนารีรวมถึงการพึ่งพาของวัตถุที่ใช้ร่วมกันใด ๆ ที่ไบนารีขึ้นอยู่กับ
170 linux  elf 

7
ld ไม่พบห้องสมุดที่มีอยู่
ฉันกำลังพยายามเชื่อมโยงแอปพลิเคชันกับ g ++ บนระบบ Debian lenny นี้ ld กำลังบ่นว่าไม่พบไลบรารีที่ระบุ ตัวอย่างเฉพาะที่นี่คือ ImageMagick แต่ฉันมีปัญหาที่คล้ายกันกับห้องสมุดอื่น ๆ น้อยเกินไป ฉันกำลังเรียกลิงเกอร์ด้วย: g++ -w (..lots of .o files/include directories/etc..) \ -L/usr/lib -lmagic ld บ่น: /usr/bin/ld: cannot find -lmagic อย่างไรก็ตาม libmagic มีอยู่: $ locate libmagic.so /usr/lib/libmagic.so.1 /usr/lib/libmagic.so.1.0.0 $ ls -all /usr/lib/libmagic.so.1* lrwxrwxrwx 1 root root 17 2008-12-01 03:52 …

8
ฉันจะเรียกใช้คำสั่งพื้นหลังหลายคำในทุบตีในบรรทัดเดียวได้อย่างไร
ปกติฉันจะใช้คำสั่งหลาย ๆ อย่างเช่น: sleep 2 && sleep 3 หรือ sleep 2 ; sleep 3 แต่ถ้าฉันต้องการเรียกใช้ทั้งสองในพื้นหลังจากคำสั่งบรรทัดคำสั่งเดียว? sleep 2 & && sleep 3 & ไม่ทำงาน และไม่แทนที่&&ด้วย; มีวิธีทำหรือไม่?
169 linux  bash  shell 

10
การเปรียบเทียบสองไฟล์ใน linux terminal
มีสองไฟล์ที่เรียกว่า"a.txt"และ"b.txt"ทั้งสองมีรายการคำ ตอนนี้ผมต้องการที่จะตรวจสอบคำที่มีความพิเศษในการ"a.txt"และไม่ได้อยู่ใน"b.txt" ฉันต้องการอัลกอริทึมที่มีประสิทธิภาพเพราะฉันต้องการเปรียบเทียบพจนานุกรมสองเล่ม

18
Gradle พบ JAVA_HOME ผิดแม้ว่าจะตั้งค่าไว้ถูกต้องแล้ว
เมื่อพยายามรัน gradle ฉันได้รับข้อผิดพลาดต่อไปนี้: # gradle ERROR: JAVA_HOME is set to an invalid directory: /usr/lib/jvm/default-java Please set the JAVA_HOME variable in your environment to match the location of your Java installation. อย่างไรก็ตามเมื่อฉันตรวจสอบตัวแปร JAVA_HOME ฉันจะได้รับ: # echo $JAVA_HOME /usr/lib/jvm/java-7-oracle JAVA_HOME ของฉันถูกกำหนดใน. bashrc และฉันได้ตรวจสอบสองครั้งว่ามันถูกตั้งค่าเป็นแหล่งที่มา การรันjava -versionยังยืนยันว่า JAVA_HOME ตั้งค่าไว้ถูกต้องและอยู่บน PATH # java -version java …

13
การคอมไพล์ C ++ บนเครื่อง Linux ระยะไกล - คำเตือน“ ตรวจพบการเอียงนาฬิกา”
ฉันเชื่อมต่อกับคลัสเตอร์ Linux ขนาดเล็กของมหาวิทยาลัยของฉันผ่าน PuTTY และ WinSCP ถ่ายโอนไฟล์โดยใช้อันหลังและรวบรวมและเรียกใช้งานกับกลุ่มเก่า งานของฉันได้รับการดำเนินการแล้วในห้องทดลองของมหาวิทยาลัย แต่วันนี้ฉันทำงานที่บ้านซึ่งสร้างคำเตือนที่น่าสนใจ ฉันอัพโหลดโฟลเดอร์ทั้งหมดของสิ่งของและเมื่อใช้makeคำสั่งฉันจะได้รับสิ่งนี้เป็นบรรทัดสุดท้ายของผลลัพธ์: ทำให้: คำเตือน: ตรวจพบนาฬิกาเอียง งานสร้างของคุณอาจไม่สมบูรณ์ ไบนารีที่ได้นั้นทำงานได้อย่างถูกต้องและดูเหมือนจะไม่มีข้อผิดพลาดที่ไม่คาดคิดอื่น ๆ ในกระบวนการสร้าง ฉันดูเหมือนจะสามารถทริกเกอร์ข้อผิดพลาดได้โดยการสร้างหลังจากอัปโหลดไฟล์ใหม่ / ไฟล์ทดแทน (ฉันแก้ไขทุกอย่างในเครื่องจากนั้นอัปโหลดเวอร์ชันใหม่) ดังนั้นฉันสงสัยว่ามันเป็นเรื่องง่ายเหมือนการแก้ไขไฟล์ที่ไม่ตรงกันหรือไม่ หรือมีอะไรเกี่ยวข้องมากกว่านี้? ดังนั้นฉันควรกังวล ฉันจะแก้ไข / ป้องกันได้อย่างไร
168 linux  makefile 

9
วิธีการวนซ้ำไดเรกทอรีใน Linux?
ฉันกำลังเขียนสคริปต์ใน bash บน Linux และต้องผ่านชื่อไดเรกทอรีย่อยทั้งหมดในไดเรกทอรีที่กำหนด ฉันจะวนซ้ำไดเรกทอรีเหล่านี้ (และข้ามไฟล์ปกติ) ได้อย่างไร ตัวอย่างเช่น: ไดเรกทอรีที่กำหนดคือ/tmp/ มันมีไดเรกทอรีย่อยดังต่อไปนี้:/tmp/A, /tmp/B, /tmp/C ฉันต้องการดึง A, B, C
168 linux  bash 

4
C ++ Dynamic Shared Library บน Linux
นี่คือการติดตามเพื่อรวบรวมห้องสมุดที่ใช้ร่วมกันแบบไดนามิกที่มีกรัม ++ ฉันกำลังพยายามสร้างไลบรารีคลาสที่แบ่งใช้ใน C ++ บน Linux ฉันสามารถที่จะได้รับห้องสมุดเพื่อรวบรวมและผมสามารถเรียกบางส่วนของ (Non-class) ฟังก์ชั่นการใช้บทเรียนที่ผมพบว่าที่นี่และที่นี่ ปัญหาของฉันเริ่มต้นเมื่อฉันพยายามใช้คลาสที่กำหนดไว้ในไลบรารี บทช่วยสอนที่สองที่ฉันเชื่อมโยงเพื่อแสดงวิธีโหลดสัญลักษณ์สำหรับการสร้างวัตถุของคลาสที่กำหนดไว้ในไลบรารี แต่หยุดสั้น ๆ ในการใช้วัตถุเหล่านั้นเพื่อทำงานให้เสร็จ ไม่มีใครทราบบทช่วยสอนที่สมบูรณ์ยิ่งขึ้นสำหรับการสร้างไลบรารี่ C ++ ที่แชร์กันซึ่งแสดงวิธีใช้คลาสเหล่านั้นในการปฏิบัติการแยกต่างหาก บทช่วยสอนที่เรียบง่ายมากที่แสดงการสร้างวัตถุใช้งาน (getters และ setters แบบธรรมดาจะใช้ได้) และการลบจะยอดเยี่ยม ลิงก์หรือการอ้างอิงถึงโค้ดโอเพนซอร์สบางตัวที่แสดงให้เห็นถึงการใช้ไลบรารีคลาสที่ใช้ร่วมกันจะดีพอ ๆ กัน แม้ว่าคำตอบจากcodelogicและnimrodmทำงานได้ฉันแค่อยากจะเพิ่มว่าฉันหยิบสำเนาของBeginning Linux Programmingตั้งแต่ถามคำถามนี้และบทแรกของมันมีตัวอย่างรหัส C และคำอธิบายที่ดีสำหรับการสร้างและใช้ทั้งห้องสมุดแบบคงที่และใช้ร่วมกัน . ตัวอย่างเหล่านี้สามารถผ่าน Google Book Search ในรุ่นเก่าของหนังสือเล่มนั้น

5
ส่งต่อพอร์ตโฮสต์ไปยังคอนเทนเนอร์นักเทียบท่า
เป็นไปได้หรือไม่ที่จะเปิดพอร์ตการเข้าถึงคอนเทนเนอร์ Docker โดยโฮสต์? เป็นรูปธรรมฉันมี MongoDB และ RabbitMQ ทำงานบนโฮสต์และฉันต้องการเรียกใช้กระบวนการในคอนเทนเนอร์ Docker เพื่อฟังคิวและ (เป็นทางเลือก) เขียนไปยังฐานข้อมูล ฉันรู้ว่าฉันสามารถส่งต่อพอร์ตจากคอนเทนเนอร์ไปยังโฮสต์ (ผ่านตัวเลือก -p) และมีการเชื่อมต่อกับโลกภายนอก (เช่นอินเทอร์เน็ต) จากภายในคอนเทนเนอร์ Docker แต่ฉันไม่ต้องการเปิดเผย RabbitMQ และ MongoDB พอร์ต จากโฮสต์สู่โลกภายนอก แก้ไข: ชี้แจงบางส่วน: Starting Nmap 5.21 ( http://nmap.org ) at 2013-07-22 22:39 CEST Nmap scan report for localhost (127.0.0.1) Host is up (0.00027s latency). PORT STATE …
167 linux  networking  port  docker 

4
ละเว้นบรรทัดแรกจากเอาต์พุตคำสั่ง Linux ใด ๆ
ฉันมีข้อกำหนดที่ฉันต้องการละเว้นบรรทัดที่ 1 จากผลลัพธ์ของls -latr "some path"เนื่องจากฉันต้องลบออกtotal 136จากด้านล่างเอาท์พุท ดังนั้นฉันจึงเขียนls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -qที่แยกบรรทัดแรก แต่เมื่อโฟลเดอร์ว่างเปล่ามันจะไม่ตัดทิ้ง โปรดบอกวิธีการละเว้นบรรทัดที่ 1 ในเอาต์พุตคำสั่ง linux
167 linux 

6
ทำไมการพิมพ์ถึง stdout ช้ามาก? มันสามารถเร่งความเร็วได้หรือไม่
ฉันประหลาดใจ / ผิดหวังอยู่เสมอว่าต้องใช้เวลานานแค่ไหนในการส่งออกไปยังเครื่องด้วยคำสั่งพิมพ์ หลังจากการบันทึกอย่างช้า ๆ เมื่อเร็ว ๆ นี้ฉันตัดสินใจที่จะมองมันและรู้สึกประหลาดใจมากที่พบว่าเกือบตลอดเวลาที่ใช้รอเครื่องเทอร์มินัลเพื่อประมวลผลผลลัพธ์ การเขียนไปยัง stdout สามารถเร่งความเร็วได้บ้าง ผมเขียนสคริปต์ (' print_timer.py' ที่ด้านล่างของคำถามนี้) เพื่อเปรียบเทียบระยะเวลาเมื่อเขียน 100k เส้นที่ stdout /dev/nullเพื่อไฟล์และมีการเปลี่ยนเส้นทางไปยัง นี่คือผลการจับเวลา: $ python print_timer.py this is a test this is a test <snipped 99997 lines> this is a test ----- timing summary (100k lines each) ----- print :11.950 s write …
166 python  linux  printing  stdout  tty 

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

10
คำสั่ง eval ใน Bash และการใช้งานทั่วไป
หลังจากอ่านหน้าคนทุบตีและเกี่ยวกับการโพสต์นี้ ฉันยังคงมีปัญหาในการเข้าใจสิ่งที่evalคำสั่งทำและสิ่งที่จะเป็นประโยชน์โดยทั่วไป ตัวอย่างเช่นถ้าเราทำ: bash$ set -- one two three # sets $1 $2 $3 bash$ echo $1 one bash$ n=1 bash$ echo ${$n} ## First attempt to echo $1 using brackets fails bash: ${$n}: bad substitution bash$ echo $($n) ## Second attempt to echo $1 using parentheses fails bash: 1: …
166 linux  bash  shell  scripting  eval 

6
การเก็บถาวร tar ที่รับอินพุตจากรายการไฟล์
ฉันมีไฟล์ที่มีรายการไฟล์ที่ฉันต้องการเก็บถาวรด้วย tar ลองเรียกมันว่าmylist.txt มันมี: file1.txt file2.txt ... file10.txt มีวิธีที่ฉันสามารถออกคำสั่ง TAR ที่ใช้mylist.txtเป็นอินพุตได้หรือไม่? สิ่งที่ต้องการ tar -cvf allfiles.tar -[someoption?] mylist.txt เพื่อให้คล้ายกับว่าฉันออกคำสั่งนี้: tar -cvf allfiles.tar file1.txt file2.txt file10.txt
166 linux  unix  archive  tar 

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