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

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

9
วิธีลบบรรทัดที่ปรากฏในไฟล์ B จากไฟล์ A อื่น?
ฉันมีไฟล์ขนาดใหญ่A (ประกอบด้วยอีเมล) หนึ่งบรรทัดสำหรับแต่ละเมล ฉันยังมีไฟล์ Bอีกอันที่มีเมลอีกชุดหนึ่ง ฉันจะใช้คำสั่งใดเพื่อลบที่อยู่ทั้งหมดที่ปรากฏในไฟล์ B จากไฟล์ A ดังนั้นว่าไฟล์ที่มีอยู่: A B C และไฟล์ B บรรจุอยู่: B D E จากนั้นไฟล์ A ควรจะเหลือด้วย: A C ตอนนี้ฉันรู้ว่านี่เป็นคำถามที่อาจจะได้รับการถามบ่อยขึ้น แต่ผมพบว่าเพียงหนึ่งคำสั่งออนไลน์ที่ให้ฉันข้อผิดพลาดที่มีตัวคั่นที่ไม่ดี ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมมาก! ใครบางคนจะมากับซับในที่ฉลาด แต่ฉันไม่ใช่ผู้เชี่ยวชาญเชลล์
160 linux  shell  sed  diff  grep 

9
ทำไม Maven ใช้ JDK 1.6 แต่ Java -version ของฉันคือ 1.7
ฉันใหม่เพื่อ maven และ MacOS ฉันมีการตั้งค่า maven ใน terminal ของฉันและเมื่อได้รับการตั้งค่ารุ่น (โดยใช้mvn -v) ดูเหมือนว่ามันใช้ JDK 1.6 ในขณะที่ฉันติดตั้ง JDK 1.7 มีอะไรผิดปกติหรือเปล่า? คำสั่งที่ฉันป้อนคือ: blues:helloworld Ninja$ java -version java version "1.7.0_05" Java(TM) SE Runtime Environment (build 1.7.0_05-b06) Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)` blues:helloworld Ninja$ mvn -v Apache Maven 3.1.0 (893ca28a1da9d5f51ac03827af98bb730128f9f2; 2013-06-28 …
159 java  linux  macos  maven 

9
ฉันจะใช้บรรทัดของไฟล์เป็นอาร์กิวเมนต์ของคำสั่งได้อย่างไร
บอกว่าฉันมีไฟล์ที่foo.txtระบุNข้อโต้แย้ง arg1 arg2 ... argN ซึ่งฉันต้องผ่านไปยังคำสั่ง my_command ฉันจะใช้บรรทัดของไฟล์เป็นอาร์กิวเมนต์ของคำสั่งได้อย่างไร

1
ทำไม“ ในขณะที่ (จริง)” ที่ไม่มี“ Thread.sleep” ทำให้เกิดการใช้ CPU 100% บน Linux แต่ไม่ใช่ใน Windows
ฉันได้สร้างโปรแกรมอย่างง่ายใน java: public static void main(String[] args) throws InterruptedException { while (true) ; } ถ้าฉันใช้สิ่งนี้บนเครื่อง Linux แสดงว่ามีการใช้งาน CPU 100% แต่ไม่ทำให้ระบบปฏิบัติการช้า อย่างไรก็ตามถ้าฉันใช้รหัสเดียวกันบน Windows มันจะแสดงเฉพาะการใช้งาน CPU ประมาณ 20% เท่านั้น ฉันใช้ Oracle JRE บน Windows และ OpenJDK 6 บน Linux ฉันสงสัยว่าเธรดตัวกำหนดตารางเวลาของ Windows จะสุ่มและ Linux ไม่มีหรือไม่

10
รับวันที่เมื่อวานในทุบตีบน Linux, DST- ปลอดภัย
ฉันมีเชลล์สคริปต์ที่ทำงานบน Linux และใช้สายนี้เพื่อรับวันที่ในYYYY-MM-DDรูปแบบของเมื่อวาน: date -d "1 day ago" '+%Y-%m-%d' มันทำงานมากที่สุดของเวลา แต่เมื่อสคริปต์วิ่งตอนเช้าเมื่อวานนี้ที่2013-03-11 0:35 CDTมันกลับมาแทน"2013-03-09""2013-03-10" น่าจะเป็นการปรับเวลาตามฤดูกาล (ซึ่งเริ่มเมื่อวานนี้) ฉันคาดเดาวิธีการที่"1 day ago"จะดำเนินการก็หักออก 24 ชั่วโมงและ 24 ชั่วโมงก่อนที่จะ2013-03-11 0:35 CDTเป็นซึ่งนำไปสู่ผลมาจากการ2013-03-09 23:35 CST"2013-03-09" ดังนั้นวิธีการที่ดีเวลาที่ปลอดภัยที่จะได้รับวันที่เมื่อวานในทุบตีบน Linux คืออะไร?
158 linux  bash 

11
Bash: การนอนไม่ จำกัด (การปิดกั้นแบบไม่ จำกัด )
ผมใช้startxในการเริ่มต้น X .xinitrcซึ่งจะประเมินผลการศึกษาของฉัน ในของฉันฉันจะเริ่มต้นจัดการหน้าต่างของฉันโดยใช้.xinitrc /usr/bin/mywmตอนนี้ถ้าฉันฆ่า WM ของฉัน (เพื่อทดสอบ WM อื่น ๆ ) X จะสิ้นสุดเช่นกันเพราะ.xinitrcสคริปต์มาถึง EOF ดังนั้นฉันจึงเพิ่มสิ่งนี้ในตอนท้ายของ.xinitrc: while true; do sleep 10000; done วิธีนี้ X จะไม่ยุติลงถ้าฉันฆ่า WM ของฉัน ตอนนี้คำถามของฉัน: ฉันจะนอนหลับไม่ จำกัดแทนการวนลูปได้อย่างไร มีคำสั่งที่จะชอบแช่แข็งสคริปต์หรือไม่ ขอแสดงความนับถืออย่างสูง
158 linux  bash  sleep  infinite 

7
ฉันจะอ่านซอร์สโค้ดของคำสั่งเชลล์ได้อย่างไร
ฉันต้องการอ่านซอร์สโค้ดที่แท้จริงซึ่งคำสั่ง linux เขียนด้วย ฉันได้รับประสบการณ์การใช้งานแล้วและตอนนี้ฉันคิดว่ามันถึงเวลาที่จะโต้ตอบกับเครื่องของฉันในระดับที่ลึกขึ้นแล้ว ฉันได้พบคำสั่งบางอย่างที่นี่http://directory.fsf.org/wiki/GNU น่าเสียดายที่ฉันไม่สามารถค้นหาคำสั่งพื้นฐานเช่น 'ls' ซึ่งดูเหมือนจะง่ายพอที่จะเริ่มต้น ฉันจะอ่านซอร์สโค้ดของคำสั่งเชลล์แบบง่ายๆเช่น 'ls' ได้อย่างไร ฉันทำงานบน Ubuntu 12.04

4
ฉันจะบังคับให้แยกหน้าจอออกจากเซสชัน SSH อื่นได้อย่างไร
ฉันมีหน้าจอทำงานภายในเซสชัน SSH เทอร์มินัลเย็น หลังจากรีสตาร์ทเทอร์มินัลเซสชันหน้าจอนั้นยังคงคิดว่ามันถูกแนบ อาจจะเป็น บางทีฉันไม่รู้จริงๆว่ามันหมายถึงอะไร ฉันต้องการแนบเซสชันของหน้าจอนั้นจากการเข้าสู่ระบบ SSH ใหม่ ฉันไม่ต้องการฆ่าเซสชันของหน้าจอนั้นเนื่องจากมีสิ่งสำคัญเกิดขึ้นที่นั่น :) ตัวเลือกที่ฉันคิดว่าฉันมี (ไม่มีที่ฉันรู้วิธีแก้): ฉันจะแยกเซสชันหน้าจอนั้นออกได้อย่างไร ฉันจะฆ่าเซสชัน SSH ที่เซสชันหน้าจอนั้นเชื่อมต่อได้อย่างไร

4
เครื่องมือที่เหมือน htop เพื่อแสดงกิจกรรมของดิสก์ใน linux [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน8 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันกำลังมองหาเครื่องมือบรรทัดคำสั่ง Linux ที่จะรายงานกิจกรรมของดิสก์ IO สิ่งที่คล้ายกับhtopจะเจ๋งจริงๆ มีใครบางคนเคยได้ยินเรื่องแบบนี้บ้างไหม?
158 linux  command-line  io 

10
วิธีการต่อผลลัพธ์หลายบรรทัดเข้าด้วยกันเป็นหนึ่งบรรทัด?
ถ้าฉันรันคำสั่งcat file | grep patternฉันจะได้ผลลัพธ์หลายบรรทัด คุณต่อแถวทั้งหมดเป็นหนึ่งบรรทัดได้อย่างไรโดยแทนที่แต่ละบรรทัด"\n"ด้วย"\" "(ลงท้ายด้วย"ช่องว่าง) cat file | grep pattern | xargs sed s/\n/ /g ไม่ทำงานสำหรับฉัน
158 linux  bash  unix  grep  tr 

6
เหตุใดจึงต้องใช้วิธีการโมดูลระบบปฏิบัติการของ Python แทนที่จะเรียกใช้คำสั่งเชลล์โดยตรง
ฉันพยายามเข้าใจว่าอะไรคือแรงจูงใจเบื้องหลังการใช้ฟังก์ชั่นไลบรารี่ของ Python สำหรับการทำงานเฉพาะระบบปฏิบัติการเช่นการสร้างไฟล์ / ไดเรกทอรีการเปลี่ยนคุณสมบัติของไฟล์ ฯลฯ แทนที่จะเพียงแค่เรียกใช้คำสั่งเหล่านั้นผ่านทางos.system()หรือsubprocess.call()? ยกตัวอย่างเช่นทำไมฉันต้องการที่จะใช้os.chmodแทนการทำos.system("chmod...")? ฉันเข้าใจว่ามันเป็น "pythonic" มากกว่าที่จะใช้วิธีการไลบรารีที่มีอยู่ของ Python ให้มากที่สุดแทนที่จะเป็นเพียงการดำเนินการคำสั่งเชลล์โดยตรง แต่มีแรงจูงใจอื่น ๆ ที่อยู่เบื้องหลังการทำเช่นนี้จากมุมมองการทำงานหรือไม่? ฉันแค่พูดถึงการใช้คำสั่งเชลล์แบบบรรทัดเดียวง่ายๆที่นี่ เมื่อเราต้องการการควบคุมการปฏิบัติงานมากขึ้นฉันเข้าใจว่าการใช้subprocessโมดูลมีเหตุผลมากกว่า

4
ข้อผิดพลาด C ++: การอ้างอิงที่ไม่ได้กำหนดกับ 'clock_gettime' และ 'clock_settime'
ฉันค่อนข้างใหม่กับ Ubuntu แต่ดูเหมือนจะใช้งานไม่ได้ มันทำงานได้ดีบนคอมพิวเตอร์ของโรงเรียนและฉันไม่รู้ว่าฉันไม่ได้ทำอะไร ฉันได้ตรวจสอบusr / includeแล้วและเวลามันก็โอเค นี่คือรหัส: #include <iostream> #include <time.h> using namespace std; int main() { timespec time1, time2; int temp; clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &time1); //do stuff here clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &time2); return 0; } ฉันใช้ CodeBlocks เป็น IDE ของฉันเพื่อสร้างและเรียกใช้เช่นกัน ความช่วยเหลือใด ๆ จะดีขอขอบคุณ.
157 c++  linux  ubuntu  posix  time.h 

11
http เพื่อเปลี่ยนเส้นทาง apache https
Centos สภาพแวดล้อมด้วย apache กำลังพยายามตั้งค่าการเปลี่ยนเส้นทางอัตโนมัติจาก http เป็น https From manage.mydomain.com --- To ---> https://manage.mydomain.com ฉันได้ลองเพิ่มสิ่งต่อไปนี้ใน httpd.conf แล้ว แต่มันไม่ทำงาน RewriteEngine on ReWriteCond %{SERVER_PORT} !^443$ RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L] ความคิดใด ๆ
157 linux  apache  webserver 

10
การต่อท้ายบรรทัดกับไฟล์ต่อเมื่อไม่มีอยู่
ฉันต้องเพิ่มบรรทัดต่อไปนี้ที่ส่วนท้ายของไฟล์ปรับแต่ง: include "/configs/projectname.conf" ไปยังไฟล์ที่เรียกว่า lighttpd.conf ฉันกำลังมองหาที่sedจะใช้ในการทำเช่นนี้ แต่ฉันไม่สามารถหาวิธีได้ ฉันจะแทรกได้อย่างไรถ้าบรรทัดนั้นไม่มีอยู่?
157 linux  sed  terminal 

13
วิธีสร้างไฟล์ด้วยขนาดที่กำหนดใน Linux?
เพื่อการทดสอบฉันต้องสร้างไฟล์ที่มีขนาดที่แน่นอน (เพื่อทดสอบขีด จำกัด การอัพโหลด) คำสั่งในการสร้างไฟล์ที่มีขนาดที่แน่นอนบน Linux คืออะไร?

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