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

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

10
จะสร้าง "นามแฝง" สำหรับเส้นทางที่ยาวได้อย่างไร?
ฉันพยายามสร้าง "นามแฝง" สำหรับเส้นทางที่ฉันใช้บ่อยในขณะที่ใช้เชลล์สคริปต์ ฉันลองทำบางอย่างแล้ว แต่ล้มเหลว: myFold="~/Files/Scripts/Main" cd myFold bash: cd: myFold: No such file or directory ฉันจะทำให้มันทำงานได้อย่างไร? อย่างไรก็ตามการcd ~/Files/Scripts/Mainทำงาน
95 linux  bash  unix  scripting 

8
'cd -' ย่อมาจากอะไร?
ใน bash shell script วันนี้ฉันสังเกตเห็นคำสั่งด้านล่างที่ส่วนท้ายของสคริปต์ ฉันรู้ว่าอะไรคืออะไรcdแต่ฉันไม่รู้ถึงความสำคัญของเส้นประหลังมัน cd - สิ่งนี้หมายความว่า? Google ตัดทอนอย่างไร้เดียงสา-ดังนั้นฉันจึงไม่สามารถหาคำตอบได้
95 linux  bash  shell 

20
ข้อผิดพลาดในการติดตั้ง python-dev: ImportError: ไม่มีโมดูลชื่อ apt_pkg
ฉันเป็นผู้ใช้ Debian และฉันต้องการติดตั้ง python-dev แต่เมื่อฉันรันโค้ดในเชลล์เป็นรูท: # aptitude install python-dev ฉันได้รับข้อผิดพลาดต่อไปนี้: Traceback (most recent call last): File "/usr/bin/apt-listchanges", line 28, in <module> import apt_pkg ImportError: No module named apt_pkg สิ่งที่น่าจะเป็นปัญหาและฉันจะแก้ไขได้อย่างไร

15
ฉันจะรับสถิติปริมาณงานอินเทอร์เฟซเครือข่ายปัจจุบันบน Linux / UNIX ได้อย่างไร [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน5 ปีที่ผ่านมา ปรับปรุงคำถามนี้ เครื่องมือเช่น MRTG ให้กราฟปริมาณงานเครือข่าย / แบนด์วิดท์สำหรับการใช้งานเครือข่ายปัจจุบันบนอินเทอร์เฟซเฉพาะเช่น eth0 ฉันจะส่งคืนข้อมูลนั้นที่บรรทัดคำสั่งบน Linux / UNIX ได้อย่างไร โดยเฉพาะอย่างยิ่งสิ่งนี้จะไม่ต้องติดตั้งสิ่งอื่นใดนอกเหนือจากสิ่งที่มีอยู่ในระบบตามมาตรฐาน

3
จะทำให้แพลตฟอร์มสร้าง maven เป็นอิสระได้อย่างไร
เมื่อสร้างโดยใช้ Maven บน Mac ของmvn installฉันฉันได้รับ [คำเตือน] การใช้การเข้ารหัสแพลตฟอร์ม (MacRoman จริง) เพื่อคัดลอกทรัพยากรที่ถูกกรองกล่าวคือการสร้างขึ้นอยู่กับแพลตฟอร์ม! เป็นไปได้ไหมที่จะสร้างสำหรับแพลตฟอร์มที่กำหนด (Linux) หรือทำให้แพลตฟอร์มการสร้างเป็นอิสระ?
95 linux  maven 

8
เรียกสคริปต์ Python จาก bash พร้อมอาร์กิวเมนต์
ฉันรู้ว่าฉันสามารถเรียกใช้สคริปต์ python จากสคริปต์ทุบตีของฉันโดยใช้สิ่งต่อไปนี้: python python_script.py แต่ถ้าฉันต้องการส่งผ่านตัวแปร / อาร์กิวเมนต์ไปยังสคริปต์ python จากสคริปต์ทุบตีของฉัน ฉันจะทำเช่นนั้นได้อย่างไร? โดยทั่วไป bash จะใช้ชื่อไฟล์จากนั้น python จะอัปโหลด แต่ฉันต้องส่งชื่อไฟล์จาก bash เป็น python เมื่อฉันเรียกมัน
95 python  linux  bash  shell  debian 

2
ไม่คาดหวังสิทธิ์เรียกใช้จาก mmap เมื่อไฟล์ประกอบรวมอยู่ในโครงการ
ฉันกระแทกหัวของฉันกับกำแพงด้วยสิ่งนี้ ในโครงการของฉันเมื่อฉันจัดสรรหน่วยความจำด้วยmmapการจับคู่ ( /proc/self/maps) แสดงให้เห็นว่ามันเป็นพื้นที่ที่สามารถอ่านได้และปฏิบัติการได้แม้ว่าฉันจะขอหน่วยความจำที่สามารถอ่านได้เท่านั้น หลังจากตรวจสอบ strace (ซึ่งดูดี) และการดีบักอื่น ๆ ฉันสามารถระบุสิ่งเดียวที่ดูเหมือนว่าจะหลีกเลี่ยงปัญหาแปลก ๆ นี้ได้: การลบไฟล์ชุดประกอบออกจากโครงการและปล่อยให้เฉพาะ C. บริสุทธิ์ (อะไร?!) ดังนั้นนี่คือตัวอย่างที่แปลกประหลาดของฉันฉันกำลังทำงานบน Ubunbtu 19.04 และ gcc เริ่มต้น หากคุณรวบรวมเป้าหมายไฟล์ที่เรียกใช้งานได้ด้วยไฟล์ ASM (ซึ่งว่างเปล่า) mmapจะส่งคืนพื้นที่ที่สามารถอ่านได้และสามารถเรียกใช้งานได้หากคุณสร้างโดยไม่ต้องดำเนินการอย่างถูกต้อง ดูผลลัพธ์/proc/self/mapsที่ฉันได้ฝังในตัวอย่างของฉัน example.c #include <stdio.h> #include <string.h> #include <sys/mman.h> int main() { void* p; p = mmap(NULL, 8192,PROT_READ,MAP_ANONYMOUS|MAP_PRIVATE,-1,0); { FILE *f; char line[512], s_search[17]; …
94 c  linux  assembly  mmap 

8
แอป Node.js ไม่สามารถทำงานบนพอร์ต 80 แม้ว่าจะไม่มีกระบวนการอื่นใดที่บล็อกพอร์ต
ฉันใช้งานอินสแตนซ์ของ Debian บน Amazon EC2 ที่ติดตั้ง Node.js หากฉันเรียกใช้รหัสด้านล่าง: http = require('http'); http.createServer(function (request, response){ response.writeHead(200, {'Content-Type':'text/plain'}); response.end('Hello World\n'); }).listen(80); console.log("Running server at port 80"); ฉันได้รับผลลัพธ์ด้านล่างซึ่งบอกฉันว่ามีกระบวนการอื่นฟังที่พอร์ต 80: Running server at port 80 events.js:72 throw er; // Unhandled 'error' event ^ Error: listen EACCES at errnoException (net.js:901:11) at Server._listen2 (net.js:1020:19) at listen …

2
คืออะไร = ใน Makefile
KDIR ?= $(shell uname -r) ความหมายของ?=อะไร? ฉันได้เข้าใจความแตกต่างระหว่าง:=, +=และ=จากหัวข้ออื่นที่มีอยู่ในกองมากเกิน ?=แต่ไม่สามารถหาคำอธิบายสำหรับ



1
วิธีแยกไฟล์ที่หมายเลขบรรทัด [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน7 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันต้องการแยกไฟล์บันทึกความยาว 400k บรรทัดจากหมายเลขบรรทัดเฉพาะ สำหรับคำถามนี้ขอให้เป็นตัวเลข 300k ตามอำเภอใจ มีคำสั่ง linux ที่อนุญาตให้ฉันทำสิ่งนี้ ( ภายในสคริปต์ ) หรือไม่ ฉันรู้ว่าsplitให้ฉันแบ่งไฟล์เป็นส่วนเท่า ๆ กันไม่ว่าจะตามขนาดหรือหมายเลขบรรทัด แต่นั่นไม่ใช่สิ่งที่ฉันต้องการ ฉันต้องการ 300k แรกในไฟล์เดียวและ 100k สุดท้ายในไฟล์ที่สอง ความช่วยเหลือใด ๆ จะได้รับการชื่นชม ขอบคุณ! ในแง่ที่สองสิ่งนี้จะเหมาะกับไซต์ superuser หรือ serverfault มากกว่า

7
C / C ++ พร้อม GCC: เพิ่มไฟล์ทรัพยากรลงในไฟล์ปฏิบัติการ / ไลบรารีแบบคงที่
ใครมีความคิดที่จะรวบรวมไฟล์ทรัพยากรใด ๆ แบบคงที่ในไฟล์ปฏิบัติการหรือไฟล์ไลบรารีที่แชร์โดยใช้ GCC ตัวอย่างเช่นฉันต้องการเพิ่มไฟล์รูปภาพที่ไม่มีวันเปลี่ยนแปลง (และถ้าเป็นเช่นนั้นฉันก็ต้องแทนที่ไฟล์อยู่ดี) และไม่ต้องการให้พวกเขาอยู่ในระบบไฟล์ ถ้าเป็นไปได้ (และฉันคิดว่าเป็นเพราะ Visual C ++ สำหรับ Windows ก็ทำได้เช่นกัน) ฉันจะโหลดไฟล์ที่เก็บไว้ในไบนารีของตัวเองได้อย่างไร? ไฟล์ปฏิบัติการแยกวิเคราะห์ค้นหาไฟล์และดึงข้อมูลออกมาหรือไม่ อาจมีตัวเลือกสำหรับ GCC ที่ฉันยังไม่เคยเห็น การใช้เครื่องมือค้นหาไม่ได้คายสิ่งที่ถูกต้องออกไป ฉันต้องการสิ่งนี้เพื่อใช้กับไลบรารีที่ใช้ร่วมกันและไฟล์ปฏิบัติการ ELF ปกติ ขอความช่วยเหลือใด ๆ

3
วิธีตั้งค่าเบรกพอยต์บนไลบรารีที่แชร์ในอนาคตด้วยแฟล็กคำสั่ง
ฉันกำลังพยายามทำให้เซสชัน gdb อัตโนมัติโดยใช้--commandแฟล็ก ฉันกำลังพยายามตั้งค่าเบรกพอยต์สำหรับฟังก์ชันในไลบรารีที่ใช้ร่วมกัน (เทียบเท่ากับ Unix ของ DLL) cmds.gdb ของฉันมีลักษณะดังนี้: set args /home/shlomi/conf/bugs/kde/font-break.txt b IA__FcFontMatch r อย่างไรก็ตามฉันได้รับสิ่งต่อไปนี้: shlomi: ~ / progs / bugs-external / kde / font-ทำลาย $ gdb --command = cmds.gdb ... GNU gdb 6.8-2mdv2009.0 (Mandriva Linux รีลีส 2009.0) ลิขสิทธิ์ (C) 2008 Free Software Foundation, Inc. ใบอนุญาต GPLv3 +: …
94 c++  c  linux  unix  gdb 

8
การใช้สีกับ printf
เมื่อเขียนเช่นนี้จะแสดงข้อความเป็นสีน้ำเงิน: printf "\e[1;34mThis is a blue text.\e[0m" แต่ฉันต้องการกำหนดรูปแบบใน printf: printf '%-6s' "This is text" ตอนนี้ฉันได้ลองหลายตัวเลือกในการเพิ่มสี แต่ไม่สำเร็จ: printf '%-6s' "\e[1;34mThis is text\e[0m" ฉันพยายามเพิ่มรหัสแอตทริบิวต์เพื่อจัดรูปแบบโดยไม่ประสบความสำเร็จ สิ่งนี้ใช้ไม่ได้และฉันไม่พบตัวอย่างที่เพิ่มสีลงใน printf ซึ่งได้กำหนดรูปแบบไว้ในกรณีของฉัน
94 linux  bash  colors  printf 

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