Unix & Linux

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

5
การพิจารณาว่ากระบวนการใดถูกผูกไว้กับพอร์ต
ฉันรู้ว่าใช้คำสั่ง: lsof -i TCP (หรือตัวแปรบางตัวที่มี lsof) ฉันสามารถพิจารณาว่ากระบวนการใดที่ถูกผูกไว้กับพอร์ตเฉพาะ สิ่งนี้มีประโยชน์บอกถ้าฉันพยายามเริ่มต้นสิ่งที่ต้องการผูกกับ 8080 และบางคนกำลังใช้พอร์ตนั้นอยู่แล้ว แต่ฉันไม่รู้ว่าอะไร มีวิธีง่าย ๆ โดยไม่ใช้ lsof หรือไม่ ฉันใช้เวลาในการทำงานกับหลาย ๆ ระบบและมักจะไม่ได้ติดตั้ง
90 networking  process  tcp  lsof 

18
ตรวจจับระบบ init โดยใช้เชลล์
สิ่งนี้อาจมีอะไรเพิ่มเติมเกี่ยวกับการตรวจจับระบบปฏิบัติการ แต่ฉันต้องการระบบเริ่มต้นที่ใช้อยู่ในระบบเป็นพิเศษ Fedora 15 และ Ubuntu ตอนนี้ใช้ systemd, Ubuntu เคยใช้ Upstart (เริ่มต้นนานจนถึง 15.04), ในขณะที่คนอื่นใช้รูปแบบของ System V ฉันมีแอปพลิเคชันที่ฉันเขียนเพื่อเป็นภูตข้ามแพลตฟอร์ม สคริปต์ init กำลังถูกสร้างแบบไดนามิกขึ้นอยู่กับพารามิเตอร์ที่สามารถส่งผ่านไปยังการกำหนดค่า สิ่งที่ฉันต้องการทำคือสร้างสคริปต์สำหรับระบบเริ่มต้นเฉพาะที่ใช้ วิธีนี้สคริปต์การติดตั้งสามารถรันได้อย่างสมเหตุสมผลโดยไม่มีพารามิเตอร์เนื่องจากรูทและ daemon สามารถ "ติดตั้ง" โดยอัตโนมัติ นี่คือสิ่งที่ฉันเกิดขึ้น: ค้นหา systemd, พุ่งพรวด, ฯลฯ ใน / bin เปรียบเทียบ / proc / 1 / comm กับ systemd, พุ่งพรวด, ฯลฯ ถามผู้ใช้ สิ่งที่จะเป็นวิธีที่ข้าม / แพลตฟอร์มที่ดีที่สุดในการทำเช่นนี้? ประเภทที่เกี่ยวข้องฉันสามารถพึ่งพาการทุบตีเป็นส่วนใหญ่ของ …

6
ฉันจะเพิ่ม (ลบ ฯลฯ ) สองตัวเลขด้วย bash ได้อย่างไร
ฉันสามารถอ่านตัวเลขและการดำเนินการด้วย: echo "First number please" read num1 echo "Second number please" read num2 echo "Operation?" read op แต่ความพยายามของฉันทั้งหมดเพื่อเพิ่มหมายเลขล้มเหลว: case "$op" in "+") echo num1+num2;; "-") echo `num1-num2`;; esac วิ่ง: First number please 1 Second mumber please 2 Operation? + เอาท์พุท: num1+num2 ...หรือ... echo $num1+$num2;; # results in: 1+2 ...หรือ... echo …

3
เปิด `less` เลื่อนไปจนจบ
มีวิธีการเปิดlessและเลื่อนไปที่ท้ายไฟล์หรือไม่? ฉันมักจะทำless app.logแล้วกดGเพื่อไปที่ด้านล่าง ฉันหวังว่าจะมีสิ่งที่ต้องการหรือless --endless -exec 'G'
89 less 

4
คำสั่ง piped ทำงานในลำดับใด
ฉันไม่เคยคิดเลยจริงๆว่าเชลล์รันคำสั่ง piped อย่างไร ฉันได้รับแจ้งเสมอว่า "stdout ของโปรแกรมหนึ่งถูกส่งไปยัง stdin ของโปรแกรมอื่น" เป็นวิธีคิดเกี่ยวกับท่อ ดังนั้นโดยธรรมชาติฉันคิดว่าในกรณีที่พูดว่า A | B, A จะทำงานก่อนจากนั้น B รับ stdout ของ A และใช้ stdout ของ A เป็นอินพุต แต่ฉันสังเกตเห็นว่าเมื่อผู้คนค้นหากระบวนการเฉพาะใน ps พวกเขาต้องการรวม grep -v "grep" ที่ท้ายคำสั่งเพื่อให้แน่ใจว่า grep ไม่ปรากฏในผลลัพธ์สุดท้าย ซึ่งหมายความว่าในคำสั่ง ps aux | grep "bash" | grep -v "grep" ซึ่งหมายความว่า ps รู้ว่า grep กำลังทำงานอยู่ดังนั้นจึงอยู่ในเอาต์พุตของ ps …
89 pipe  ps 

3
เหตุใดจึงมีความล่าช้าใหญ่หลังจากป้อนรหัสผ่านไม่ถูกต้อง
ฉันสังเกตเห็นสิ่งแปลก ๆ (ดีตามฉัน) เกี่ยวกับรหัสผ่าน ตัวอย่างเช่นถ้าฉันพิมพ์รหัสผ่านไม่ถูกต้องในระหว่างการเข้าสู่ระบบจะมีความล่าช้าไม่กี่วินาทีก่อนที่ระบบจะบอกฉัน เมื่อฉันพยายามsudoใช้รหัสผ่านผิดฉันจะต้องรอก่อนที่เชลล์จะบอกว่า "ขออภัยลองอีกครั้ง" ฉันสงสัยว่าทำไมต้องใช้เวลา "จำ" รหัสผ่านไม่ถูกต้อง สิ่งนี้มีให้เห็นในดิสทริบิวชันต่าง ๆ ที่ฉันใช้ (และแม้กระทั่ง OSX) ดังนั้นฉันคิดว่านี่ไม่ใช่สิ่งที่เฉพาะเจาะจงในการจัดจำหน่าย

3
su vs sudo -s vs sudo -i vs sudo bash
ความแตกต่างระหว่างคำสั่งต่อไปนี้คืออะไร: su sudo -s sudo -i sudo bash ฉันรู้ว่าsuฉันต้องรู้รหัสผ่านรูทและsudoฉันต้องอยู่ในsudoersไฟล์ แต่เมื่อดำเนินการแล้วจะมีความแตกต่างอะไรบ้าง? ฉันรู้ว่ามีความแตกต่างระหว่างsuและsudo -sเพราะไดเรกทอรีบ้านของฉันคือ/rootหลังจากที่ผมดำเนินการsuแต่ไดเรกทอรีบ้านของฉันยังคงหลัง/home/myname sudo -sแต่ฉันสงสัยว่านี่เป็นเพียงอาการของความแตกต่างพื้นฐานที่ฉันหายไป
89 sudo  su 

7
ฉันจะ จำกัด จำนวนไฟล์ที่พิมพ์โดย ls ได้อย่างไร
มีวิธี จำกัด ปริมาณไฟล์ที่ระบุในlsคำสั่งหรือไม่? ฉันเคยเห็น: ls | head -4 แต่จะได้รับheadหรือtailดำเนินการฉันต้องรอlsให้การดำเนินการเสร็จสิ้นและไดเรกทอรีที่มีไฟล์จำนวน enourmous ซึ่งอาจใช้เวลานาน ฉันต้องการรันlsคำสั่งที่ จำกัด โดยไม่ใช้headคำสั่งนั้น
89 command-line  ls  limit 


10
ฉันจะค้นหารุ่นฮาร์ดแวร์ใน Linux ได้อย่างไร
ฉันใช้โปรแกรมอรรถประโยชน์ข้อมูลระบบเพื่อใช้หมายเลขรุ่นของระบบและมาเธอร์บอร์ด DMI System Manufacturer LENOVO DMI System Product 2306CTO DMI System Version ThinkPad X230 DMI Motherboard Product 2306CTO มีวิธีรับหมายเลขรุ่นในกรณีนี้2306CTOใน Linux หรือไม่

4
สั่งรายการบัญชีผู้ใช้ PostgreSQL หรือไม่
มีcreateuser& dropuserคำสั่ง: createuser - define a new PostgreSQL user account dropuser - remove a PostgreSQL user account มีวิธีที่สอดคล้องกันในการแสดงรายการบัญชีผู้ใช้หรือไม่ คำสั่งสองคำสั่งนี้ไม่ต้องการให้ผู้ใช้เรียกใช้psqlหรือเข้าใจรายละเอียดในการใช้งาน
88 users  postgresql 

1
Chrome: คำขอ DNS ที่มีชื่อ DNS สุ่ม: มัลแวร์
ในช่วงหลายปีที่ผ่านมา (ตั้งแต่ปี 2005) ฉันได้เห็นบันทึกคำขอ DNS แบบสุ่มแปลก ๆ เสร็จแล้วบนเซิร์ฟเวอร์ DNS / BIND หลายเครื่องที่ฉันดูแล May 7 12:13:50 1.1.1.1 named[63742]: client 1.1.1.2#24123 (verxkgiicjmcnxg): view internal: query: verxkgiicjmcnxg IN A + (1.1.1.1) May 7 12:13:50 1.1.1.1 named[63742]: client 1.1.1.2#29159 (epqoaqsayo): view internal: query: epqoaqsayo IN A + (1.1.1.1) May 7 12:13:50 1.1.1.1 named[63742]: client …
88 security  dns  chrome 

13
จะเปรียบเทียบสองวันในเชลล์ได้อย่างไร?
จะเปรียบเทียบสองวันในเชลล์ได้อย่างไร นี่คือตัวอย่างของวิธีที่ฉันต้องการใช้ถึงแม้ว่ามันจะไม่ทำงานตามที่เป็นอยู่: todate=2013-07-18 cond=2013-07-15 if [ $todate -ge $cond ]; then break fi ฉันจะบรรลุผลลัพธ์ที่ต้องการได้อย่างไร

7
scp สามารถสร้างไดเรกทอรีได้หรือไม่?
ฉันต้องการใช้scpเพื่ออัปโหลดไฟล์ แต่บางครั้งอาจไม่มีไดเรกทอรีเป้าหมาย เป็นไปได้หรือไม่ที่จะสร้างโฟลเดอร์อัตโนมัติ ถ้าเป็นเช่นนั้นได้อย่างไร ถ้าไม่ฉันจะลองอีกวิธีได้อย่างไร
88 scp 


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