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

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

1
ป้องกันไม่ให้ strace จากการย่อข้อโต้แย้ง?
ฉันพยายามที่จะใช้ strace execveเพื่อหาสิ่งที่คำสั่งรันโปรแกรมโดยใช้ อาร์กิวเมนต์บางส่วนในคำสั่งเหล่านี้ค่อนข้างยาวและ strace กำลังย่ออาร์กิวเมนต์เป็นexecve(ฉันเห็น "... " หลังจากประมาณ 30 อักขระ) ทำให้ฉันไม่ได้รับข้อมูลที่เป็นประโยชน์ ฉันจะรับข้อความเต็มของแต่ละอาร์กิวเมนต์ได้อย่างไร ฉันได้อ่านหน้าคน อ็อพชัน -v พิมพ์สภาพแวดล้อมซึ่งมีประโยชน์ แต่อาร์กิวเมนต์ยังคงถูกตัดทอน strace -f -e trace=execve -v -p 1234 ฉันลองส่ง verbose = all ด้วย แต่นี่เป็นเพียงข้อมูลเพิ่มเติมเกี่ยวกับ SIGCHLD strace -f -e verbose=all trace=execve -v -p 1234
117 linux  strace 

5
วิธีใช้หน่วยความจำร่วมกับ Linux ในภาษา C
ฉันมีปัญหาเล็กน้อยกับหนึ่งในโครงการของฉัน ฉันพยายามค้นหาตัวอย่างที่มีการบันทึกไว้เป็นอย่างดีเกี่ยวกับการใช้หน่วยความจำที่ใช้ร่วมกันfork()แต่ไม่ประสบความสำเร็จ โดยทั่วไปสถานการณ์คือเมื่อผู้ใช้เริ่มโปรแกรมฉันจำเป็นต้องเก็บค่าสองค่าในหน่วยความจำที่ใช้ร่วมกัน: current_pathซึ่งเป็นถ่าน *และfile_nameซึ่งเป็นchar *ด้วย ขึ้นอยู่กับอาร์กิวเมนต์ของคำสั่งกระบวนการใหม่จะเริ่มต้นด้วยfork()และกระบวนการนั้นจำเป็นต้องอ่านและแก้ไขตัวแปรcurrent_path ที่จัดเก็บในหน่วยความจำแบบแบ่งใช้ในขณะที่ตัวแปรfile_nameอ่านได้อย่างเดียว มีคำแนะนำที่ดีเกี่ยวกับหน่วยความจำที่ใช้ร่วมกันพร้อมรหัสตัวอย่าง (ถ้าเป็นไปได้) ที่คุณสามารถแนะนำฉันได้ไหม
117 c  linux  fork  shared-memory 


7
grep ไม่รวมหลายสตริง
ฉันพยายามดูไฟล์บันทึกโดยใช้ tail -fและต้องการยกเว้นทุกบรรทัดที่มีสตริงต่อไปนี้: "Nopaging the limit is"` and `"keyword to remove is" ฉันสามารถยกเว้นหนึ่งสตริงได้ดังนี้: tail -f admin.log|grep -v "Nopaging the limit is" แต่ฉันจะแยกบรรทัดที่มีstring1หรือstring2.
117 linux  ubuntu 

3
ทำไม main ไม่คืนค่า 0 ที่นี่?
ฉันเพิ่งอ่าน ร่างคณะกรรมการ ISO / IEC 9899: 201x - 12 เมษายน 2554 ซึ่งฉันพบภายใต้ 5.1.2.2.3 การยุติโปรแกรม ..reaching the } that terminates the main function returns a value of 0. หมายความว่าหากคุณไม่ได้ระบุคำสั่งส่งคืนใด ๆ ในmain()และหากโปรแกรมทำงานได้สำเร็จที่วงเล็บปีกกาปิด} ของ main จะส่งกลับ 0 แต่ในรหัสต่อไปนี้ฉันไม่ได้ระบุคำสั่งส่งคืนใด ๆ แต่ก็ไม่ส่งคืน 0 #include<stdio.h> int sum(int a,int b) { return (a + b); } int …
116 c  linux  return  main 


12
ฉันจะแก้ไข / etc / sudoers จากสคริปต์ได้อย่างไร
ฉันต้องการแก้ไข/etc/sudoersจากสคริปต์เพื่อเพิ่ม / ลบสิ่งต่างๆจากรายการสีขาว สมมติว่าฉันมีคำสั่งที่ใช้กับไฟล์ปกติฉันจะนำไปใช้กับมันได้/etc/sudoersอย่างไร? ฉันสามารถคัดลอกและแก้ไขแล้วvisudoแทนที่ต้นฉบับด้วยสำเนาที่แก้ไขได้หรือไม่ โดยให้สคริปต์ของฉันเองใน$EDITOR? หรือฉันสามารถใช้ล็อคเดียวกันและcp? คำถามนี้เกี่ยวกับปัญหาที่อาจเกิดขึ้นมากกว่าแค่การค้นหาสิ่งที่ใช้ได้ผล
116 linux  shell  sudo 

6
วิธีลบข้อความที่เลือกในตัวแก้ไข vi
ฉันใช้ PuTTY และตัวแก้ไข vi ถ้าฉันเลือกห้าบรรทัดโดยใช้เมาส์ของฉันและฉันต้องการลบบรรทัดเหล่านั้นฉันจะทำได้อย่างไร? นอกจากนี้ฉันจะเลือกเส้นโดยใช้แป้นพิมพ์ของฉันได้อย่างไรใน Windows ที่ฉันกดShiftและย้ายลูกศรเพื่อเลือกข้อความ ฉันจะทำสิ่งนั้นใน vi ได้อย่างไร
116 linux  text-editor  vi 

8
คำสั่ง Linux หรือสคริปต์นับบรรทัดที่ซ้ำกันในไฟล์ข้อความ?
หากฉันมีไฟล์ข้อความที่มีรูปแบบต่อไปนี้ red apple green apple green apple orange orange orange มีคำสั่งหรือสคริปต์ Linux ที่ฉันสามารถใช้เพื่อรับผลลัพธ์ต่อไปนี้หรือไม่ 1 red apple 2 green apple 3 orange
116 linux  text  duplicates 


5
Wget เอกสารเอาต์พุตและส่วนหัวไปยัง STDOUT
ฉันกำลังพยายามส่งออกเนื้อหาของเอกสารและส่วนหัวเป็น stdout ด้วย wget by wget -S -O - http://google.com แต่จะแสดงเฉพาะเอกสาร html ขอบคุณ UPD: ทำงานนี้ wget --save-headers --output-document - http://google.com wget --version แสดง GNU Wget 1.11.4 Red Hat ที่แก้ไข
116 linux  http  wget 

19
ฉันจะลบบรรทัดใหม่ออกจากไฟล์ข้อความได้อย่างไร
ฉันมีข้อมูลต่อไปนี้และจำเป็นต้องรวมข้อมูลทั้งหมดไว้ในบรรทัดเดียว ฉันมีสิ่งนี้: 22791 ; 14336 ; 22821 ; 34653 ; 21491 ; 25522 ; 33238 ; ฉันต้องการนี้: 22791;14336;22821;34653;21491;25522;33238; แก้ไข ไม่มีคำสั่งใดทำงานได้อย่างสมบูรณ์ ส่วนใหญ่ให้ข้อมูลมีลักษณะดังนี้ 22791 ;14336 ;22821 ;34653 ;21491 ;25522
116 linux  bash  scripting  shell  sed 

6
ฉันจะเขียนสคริปต์การตอบสนอง“ ใช่” สำหรับการติดตั้งโปรแกรมได้อย่างไร?
ฉันทำงานกับอินสแตนซ์ Amazon Linux และฉันมีสคริปต์สองสามตัวในการเติมข้อมูลและติดตั้งโปรแกรมทั้งหมดที่ฉันทำงานด้วย แต่มีสองโปรแกรมถามว่า: Do you want to continue [Y/n]? และหยุดการติดตั้งชั่วคราว ฉันต้องการตอบ "Y" โดยอัตโนมัติในทุกกรณีตอนนี้ฉันแน่ใจแล้วว่าจะทำอย่างไร
116 linux  bash  scripting 

8
คำแนะนำเฉพาะระบบปฏิบัติการใน CMAKE: ทำอย่างไร?
ฉันเป็นมือใหม่กับ CMAKE ด้านล่างนี้เป็นไฟล์ cmake แบบธรรมดาซึ่งทำงานได้ดีในหน้าต่างสภาพแวดล้อม mingw ปัญหาชัดเจนกับtarget_link_libraries()ฟังก์ชันของ CMAKE ที่ฉันเชื่อมโยง libwsock32.a ใน windows สิ่งนี้ใช้งานได้และฉันได้รับผลลัพธ์ อย่างไรก็ตามตามที่คาดไว้ใน Linux /usr/bin/ldจะมองหา-lwsock32สิ่งที่ไม่มีใน Linux OS ปัญหาของฉันคือ: ฉันจะสั่งให้ CMAKE หลีกเลี่ยงการเชื่อมโยงไลบรารี wsock32 ใน Linux OS ได้อย่างไร ??? ความช่วยเหลือใด ๆ จะได้รับการชื่นชมอย่างมาก ไฟล์ Simple CMake ของฉัน: PROJECT(biourl) set (${PROJECT_NAME}_headers ./BioSocketAddress.h ./BioSocketBase.h ./BioSocketBuffer.h ./BioSocketCommon.h ./BioSocketListener.h ./BioSocketPrivate.h ./BioSocketStream.h ./BioUrl.h BioDatabase.h ) set (${PROJECT_NAME}_sources …
116 c++  linux  cmake  mingw  portability 

3
ลิงก์สัญลักษณ์: ค้นหาไฟล์ทั้งหมดที่เชื่อมโยงไปยังไฟล์นี้
Hallo ทั้งหมดฉันต้องทำสิ่งนี้ใน linux: ระบุ: ชื่อไฟล์ 'foo.txt' ค้นหา: ไฟล์ทั้งหมดที่เป็นสัญลักษณ์ลิงก์ไปยัง 'foo.txt' ทำอย่างไร? ขอบคุณ!
115 linux  symlink 

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