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

แท็กนี้เป็นเอกสิทธิ์สำหรับคำถามการเขียนโปรแกรมที่เกี่ยวข้องโดยตรงกับ Unix; ปัญหาซอฟต์แวร์ทั่วไปควรถูกนำไปยังไซต์ Unix & Linux Stack Exchange หรือไปยัง Super User ระบบปฏิบัติการ Unix เป็นระบบปฏิบัติการอเนกประสงค์ที่พัฒนาโดย Bell Labs ในช่วงปลายทศวรรษ 1960 และปัจจุบันมีอยู่ในหลายเวอร์ชั่น

1
ใส่อักขระส่งคืนแคร่ในกลุ่ม
ฉันกำลังแก้ไขกรอบโปรโตคอลเครือข่ายที่จัดเก็บไฟล์ใน Unix (ขึ้น\nบรรทัดใหม่) ฉันต้องใส่อักขระส่งคืนแคร่ ( U+000Daka \r) เมื่อฉันพยายามวางจากคลิปบอร์ด ( "+p) หรือพิมพ์โดยใช้Ctrl+ Shift+ u- 000dตัวป้อนบรรทัดจะถูกแทรก ( U+000A) วิธีที่ถูกต้องทำอย่างไร?

8
กำหนดกระบวนการฟัง pid บนพอร์ตหนึ่ง ๆ
ตามชื่อเรื่องฉันใช้เซิร์ฟเวอร์เกมหลายเครื่องและทุกเซิร์ฟเวอร์มีเหมือนกันnameแต่แตกต่างกันPIDและมีportจำนวน ฉันต้องการจับคู่PIDเซิร์ฟเวอร์ที่กำลังฟังอยู่บนพอร์ตบางพอร์ตจากนั้นฉันต้องการที่จะฆ่ากระบวนการนี้ ฉันต้องการสิ่งนั้นเพื่อให้สคริปต์ทุบตีของฉันเสร็จสมบูรณ์ เป็นไปได้หรือไม่? เนื่องจากยังไม่พบวิธีแก้ปัญหาใด ๆ ในเว็บ
101 unix  port  freebsd  pid 

10
รับบรรทัดเฉพาะจากไฟล์ข้อความโดยใช้เชลล์สคริปต์
ฉันกำลังพยายามหาบรรทัดเฉพาะจากไฟล์ข้อความ จนถึงตอนนี้ออนไลน์ฉันได้เห็นสิ่งต่างๆเช่น sed เท่านั้น (ฉันสามารถใช้ sh -not bash หรือ sed หรืออะไรก็ได้แบบนั้น) ฉันต้องทำสิ่งนี้โดยใช้เชลล์สคริปต์พื้นฐานเท่านั้น cat file | while read line do #do something done ฉันรู้วิธีการวนซ้ำตามบรรทัดดังที่แสดงด้านบน แต่ถ้าฉันต้องการรับเนื้อหาของบรรทัดใดบรรทัดหนึ่ง
101 linux  shell  unix  sh 

11
จะใช้ sed, awk หรือ gawk เพื่อพิมพ์เฉพาะสิ่งที่จับคู่ได้อย่างไร?
ฉันเห็นตัวอย่างและหน้าคนมากมายเกี่ยวกับวิธีการทำสิ่งต่างๆเช่นการค้นหาและแทนที่โดยใช้ sed, awk หรือ gawk แต่ในกรณีของฉันฉันมีนิพจน์ทั่วไปที่ฉันต้องการเรียกใช้กับไฟล์ข้อความเพื่อแยกค่าเฉพาะ ฉันไม่ต้องการทำการค้นหาและแทนที่ สิ่งนี้ถูกเรียกจากทุบตี ลองใช้ตัวอย่าง: ตัวอย่างนิพจน์ทั่วไป: .*abc([0-9]+)xyz.* ตัวอย่างไฟล์อินพุต: a b c abc12345xyz a b c ง่ายเหมือนเสียงนี้ฉันไม่สามารถหาวิธีเรียก sed / awk / gawk ได้อย่างถูกต้อง สิ่งที่ฉันหวังว่าจะทำคือจากในสคริปต์ทุบตีของฉันมี: myvalue=$( sed <...something...> input.txt ) สิ่งที่ฉันได้ลอง ได้แก่ : sed -e 's/.*([0-9]).*/\\1/g' example.txt # extracts the entire input file sed -n 's/.*([0-9]).*/\\1/g' example.txt # …
101 regex  unix  sed  awk  gawk 

13
ทำไมต้องเป็นเลข 9 ในคำสั่ง kill -9 ในยูนิกซ์ [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการเมื่อปีที่แล้ว ปรับปรุงคำถามนี้ ฉันเข้าใจว่ามันไม่ตรงกับหัวข้อฉันไม่พบที่ไหนทางออนไลน์และฉันคิดว่าบางทีผู้เชี่ยวชาญด้านการเขียนโปรแกรมในชุมชนอาจรู้เรื่องนี้ ฉันมักจะใช้ kill -9 pid เพื่อฆ่างาน ฉันมักจะสงสัยที่มาของ 9 ฉันค้นหามันทางออนไลน์และมันบอก "9 หมายถึงสัญญาณ KILL ที่ไม่สามารถจับได้หรือไม่สามารถมองเห็นได้กล่าวอีกนัยหนึ่งก็คือการส่งสัญญาณให้กระบวนการ (แอปพลิเคชันที่กำลังทำงานอยู่) หยุดทำงานทันที" (ที่มา: http://wiki.answers.com/Q/What_does_kill_-9_do_in_unix_in_its_entirety ) แต่ทำไม 9? แล้วตัวเลขอื่น ๆ ล่ะ? มีความสำคัญทางประวัติศาสตร์หรือเป็นเพราะสถาปัตยกรรมของ Unix?
101 unix  command  history  kill 

14
คำสั่ง Linux / Unix เพื่อตรวจสอบว่ากระบวนการทำงานอยู่หรือไม่?
ฉันต้องการคำสั่งเชลล์ / bash ที่เป็นอิสระจากแพลตฟอร์ม (Linux / Unix | OSX) ซึ่งจะพิจารณาว่ามีกระบวนการใดกำลังทำงานอยู่หรือไม่ เช่นmysqld, httpd... เป็นวิธีที่คำสั่ง / ง่ายที่สุดในการทำเช่นนี้คืออะไร?
100 linux  bash  shell  unix  process 

17
ไม่พบทรัพยากร u'tokenizers / punkt / english.pickle '
รหัสของฉัน: import nltk.data tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle') ข้อความผิดพลาด: [ec2-user@ip-172-31-31-31 sentiment]$ python mapper_local_v1.0.py Traceback (most recent call last): File "mapper_local_v1.0.py", line 16, in <module> tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle') File "/usr/lib/python2.6/site-packages/nltk/data.py", line 774, in load opened_resource = _open(resource_url) File "/usr/lib/python2.6/site-packages/nltk/data.py", line 888, in _open return find(path_, path + ['']).open() File "/usr/lib/python2.6/site-packages/nltk/data.py", line 618, in …
100 python  unix  nltk 

5
ตัวเลือก“ -p” ของ mkdir
ดูเหมือนจะไม่ใช่คำถามที่ซับซ้อนเท่าที่ฉันมี แต่เป็นคำถามที่ฉันไม่สามารถหาคำตอบได้ ฉันสับสนเกี่ยวกับสิ่งที่-pตัวเลือกทำใน Unix ฉันใช้มันสำหรับการกำหนดห้องปฏิบัติการในขณะที่สร้างไดเร็กทอรีย่อยและไดเร็กทอรีย่อยอื่นภายในไดเร็กทอรีนั้น ดูเหมือนว่า: mkdir -p cmps012m/lab1 สิ่งนี้อยู่ในไดเร็กทอรีส่วนตัวที่มีสิทธิปกติ ( rlidwka) อ้อแล้วจะมีใครช่วยอธิบายหน่อยว่าrlidwkaหมายถึงอะไร? ฉันไม่ใช่ noob ทั้งหมดของ Unix แต่ฉันไม่ค่อยคุ้นเคยกับความหมายนี้ หวังว่าคำถามจะไม่คลุมเครือเกินไป

8
การระบุและลบอักขระว่างใน UNIX
ฉันมีไฟล์ข้อความที่มีอักขระว่างที่ไม่ต้องการ (ASCII NUL, \0) เมื่อฉันพยายามเปิดดูในviฉันเห็น^@สัญลักษณ์แทรกอยู่ในข้อความปกติ ฉันสามารถ: ระบุว่าบรรทัดใดในไฟล์มีอักขระ null? ฉันได้ลองใช้ grepping \0และ\x0แต่ไม่ได้ผล ลบอักขระว่าง? การทำงานstringsบนไฟล์จะล้างข้อมูล แต่ฉันแค่สงสัยว่านี่เป็นวิธีที่ดีที่สุดหรือไม่?

6
ทดสอบว่าตัวแปรถูกตั้งค่าเป็น bash หรือไม่เมื่อใช้“ set -o nounset”
รหัสต่อไปนี้ออกพร้อมกับข้อผิดพลาดตัวแปร unbound จะแก้ไขได้อย่างไรในขณะที่ยังใช้set -oตัวเลือก nounset อยู่ #!/bin/bash set -o nounset if [ ! -z ${WHATEVER} ]; then echo "yo" fi echo "whatever"
100 bash  shell  unix 

16
อักขระ '^ M' ที่ท้ายบรรทัด
เมื่อฉันเรียกใช้สคริปต์ SQL เฉพาะในสภาพแวดล้อม Unix ฉันเห็นอักขระ '^ M' ที่ท้ายแต่ละบรรทัดของสคริปต์ SQL เนื่องจากมีการสะท้อนกับบรรทัดคำสั่ง ฉันไม่ทราบว่าสคริปต์ SQL ถูกสร้างขึ้นในระบบปฏิบัติการใด สาเหตุนี้เกิดจากอะไรและจะแก้ไขได้อย่างไร

4
“ &” ที่ท้ายคำสั่ง linux หมายความว่าอย่างไร
ฉันเป็นผู้ดูแลระบบและถูกขอให้เรียกใช้สคริปต์ลินุกซ์เพื่อล้างระบบ คำสั่งคือ: perl script.pl > output.log & ดังนั้นคำสั่งนี้จึงลงท้ายด้วย&เครื่องหมายมีความสำคัญเป็นพิเศษหรือไม่? ฉันมีความรู้พื้นฐานเกี่ยวกับเปลือกหอย แต่ไม่เคยเห็นมาก่อน
99 linux  shell  unix 

2
Bash script เพื่อรับและส่งซ้ำพารามิเตอร์ที่ยกมา
ฉันกำลังพยายามรับพารามิเตอร์ที่ยกมาของสคริปต์ทุบตีเพื่อให้ได้รับสคริปต์ที่ซ้อนกันอย่างปลอดภัย ความคิดใด ๆ ? test.sh #!/bin/bash echo $* bash myecho.sh $* myecho.sh #!/bin/bash echo $1 echo $2 echo $3 echo $4 Sample: bash test.sh aaa bbb '"ccc ddd"' Result: aaa bbb "ccc ddd" aaa bbb "ccc ddd" Wanted result aaa bbb "ccc ddd" aaa bbb ccc ddd
98 bash  unix 

10
อนุญาตให้ผู้ใช้ตั้งค่าอุโมงค์ SSH แต่ไม่มีอะไรอื่น
ฉันต้องการอนุญาตให้ผู้ใช้ตั้งค่าอุโมงค์ SSH ไปยังเครื่องใดเครื่องหนึ่งบนพอร์ตใดพอร์ตหนึ่ง (เช่น 5000) แต่ฉันต้องการ จำกัด ผู้ใช้รายนี้ให้มากที่สุด (การตรวจสอบความถูกต้องจะใช้คู่กุญแจสาธารณะ / ส่วนตัว) ฉันรู้ว่าฉันต้องแก้ไขไฟล์ ~ / .ssh / Authorized_keys ที่เกี่ยวข้อง แต่ฉันไม่แน่ใจว่าจะใส่เนื้อหาอะไรในนั้น (นอกเหนือจากคีย์สาธารณะ)
98 unix  ssh 

8
วิธีสร้าง python โปรแกรมบรรทัดคำสั่งเติมข้อความอัตโนมัติโดยพลการไม่ล่าม
ฉันทราบวิธีตั้งค่าการเติมข้อความอัตโนมัติของออบเจ็กต์ python ในตัวแปล python (บน unix) Google แสดงเพลงฮิตมากมายสำหรับคำอธิบายเกี่ยวกับวิธีการทำเช่นนี้ น่าเสียดายที่มีข้อมูลอ้างอิงมากมายทำให้ยากที่จะหาสิ่งที่ฉันต้องทำซึ่งแตกต่างกันเล็กน้อย ฉันต้องการทราบวิธีเปิดใช้งานแท็บ / การเติมรายการโดยพลการโดยอัตโนมัติในโปรแกรมบรรทัดคำสั่งที่เขียนด้วย python กรณีการใช้งานเฉพาะของฉันคือโปรแกรม python บรรทัดคำสั่งที่ต้องการส่งอีเมล ฉันต้องการเติมที่อยู่อีเมลอัตโนมัติ (ฉันมีที่อยู่ในดิสก์) เมื่อผู้ใช้พิมพ์บางส่วน (และกดปุ่ม TAB เป็นทางเลือก) ฉันไม่ต้องการให้มันทำงานบน windows หรือ mac เพียง แต่ linux

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