Unix & Linux

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

3
อาร์กิวเมนต์บรรทัดคำสั่ง ssh รีโมตรับการวิเคราะห์คำได้อย่างไร
ฉันเห็นคำถามและคำตอบเกี่ยวกับการต้องหลีกเลี่ยงการขัดแย้งกับคำสั่ง ssh จากระยะไกล คำถามของฉันคือ: การแยกวิเคราะห์ครั้งที่สองเสร็จสมบูรณ์เมื่อใดและเมื่อไร ถ้าฉันเรียกใช้ต่อไปนี้: $ ssh otherhost pstree -a -p ฉันเห็นสิ่งต่อไปนี้ในผลลัพธ์: |-sshd,3736 | `-sshd,1102 | `-sshd,1109 | `-pstree,1112 -a -p กระบวนการหลักสำหรับคำสั่งระยะไกล ( pstree) คือsshdไม่ปรากฏว่ามีเปลือกใด ๆ ที่จะแยกวิเคราะห์บรรทัดคำสั่งไปยังคำสั่งระยะไกลดังนั้นมันดูเหมือนว่าจะไม่จำเป็นต้องมีการอ้างถึงหรือหนีสองครั้ง ( แต่มันก็แน่นอน) ถ้าฉันกลับไปที่นั่นก่อนและรับเชลล์ล็อกอินจากนั้นเรียกใช้pstree -a -pฉันจะเห็นสิ่งต่อไปนี้ในผลลัพธ์: ├─sshd,3736 │ └─sshd,3733 │ └─sshd,3735 │ └─bash,3737 │ └─pstree,4130 -a -p เห็นได้ชัดว่ามีbashเชลล์ที่จะทำการแยกบรรทัดคำสั่งในกรณีนั้น แต่ในกรณีที่ฉันใช้คำสั่งระยะไกลโดยตรงดูเหมือนจะไม่เป็นเปลือกดังนั้นทำไมจึงจำเป็นต้องมีการอ้างอิงสองครั้ง
11 bash  shell  ssh  process  quoting 

13
ฉันจะเรียงลำดับรายการที่คั่นด้วยบรรทัดเดียวได้อย่างไร
ฉันมีจำนวนบรรทัด (หรือหลายบรรทัด) ที่คั่นด้วยอักขระที่กำหนดเอง เครื่องมือ UNIX ใดที่ฉันสามารถใช้เพื่อเรียงลำดับรายการของแต่ละบรรทัดเป็นตัวเลขรักษาตัวคั่น ตัวอย่างรวมถึง: รายการของตัวเลข อินพุต: 10 50 23 42; เรียง:10 23 42 50 ที่อยู่ IP; อินพุต: 10.1.200.42; เรียง:1.10.42.200 CSV; อินพุต: 1,100,330,42; เรียง:1,42,100,330 ท่อที่คั่น; อินพุต: 400|500|404; เรียง:400|404|500 เนื่องจากตัวคั่นมีความอิสระให้คุณตอบ (หรือขยาย) คำตอบโดยใช้ตัวคั่นตัวเดียวที่คุณเลือก

1
สามารถใช้ keyfile เป็นรหัสผ่านสำหรับ sudo ได้หรือไม่?
บริบท ฉันชอบที่จะทำงานในที่สาธารณะบนแล็ปท็อปของฉัน แต่ฉันก็ชอบที่จะใช้ sudo โดยไม่ต้องใช้รหัสผ่าน จากสิ่งที่ฉันรู้ตอนนี้ฉันจะใช้NOPASSWDตัวเลือกในsudoersไฟล์ของฉันแต่แน่นอนว่าทุกคนสามารถใช้ sudo ได้ตามที่ต้องการ ความคิดสำคัญอย่างหนึ่งที่อยู่ในใจของฉันคือมีโปรแกรมล็อคอยู่ อย่างไรก็ตามฉันต้องการใช้แฟลชไดรฟ์ (และใช้เพื่อ sudo) เพราะ (1) เร็วกว่า (2) ง่ายกว่าการป้อนรหัสผ่านและ (3) ฉันไม่เกี่ยวข้องกับผู้ที่เข้าถึงเนื้อหาของฉันหรือทำสิ่งชั่วช้าสามานย์ สิ่ง: แล็ปท็อปจะปรากฏต่อสาธารณะรอบ ๆ คนอื่นและทรัพย์สินทางปัญญาเพียงหนึ่งเดียวบนแล็ปท็อปของฉันคือโครงการแองกูลาร์ขั้นพื้นฐาน นอกจากนี้ตัวฉันและคนอื่น ๆ อาจต้องการป้องกันการใช้ sudo ในทางที่ผิดในคอมพิวเตอร์ที่ไม่ได้ใช้สภาพแวดล้อม X หรือ Wayland งานปัจจุบันของฉันต้องการเว็บเบราว์เซอร์ที่ทันสมัย ​​แต่ถ้าฉันมีโอกาสที่จะไม่ใช้ X และใช้มัลติเพล็กเซอร์ฉันทำเช่นนั้น - แล็ปท็อปของฉันค่อนข้างเก่าและช้า คำถาม สิ่งที่ฉันต้องการจะทำคือใส่ keyfile ลงในแฟลชไดรฟ์และเพียงเสียบแฟลชไดรฟ์เมื่อฉันอยู่ที่แล็ปท็อปและนำมันออกไปเมื่อฉันก้าวออกไป ดังนั้นคำถามสามข้อของฉันมาจากปัญหานี้: เป็นไปได้กับ sudo ตามนี้หรือไม่ ถ้าไม่ฉันจะสามารถเขียนโปรแกรมที่ให้ฉันทำสิ่งนี้ได้หรือไม่? ถ้าใช่ภาษาใดที่ดีที่สุดในการเขียนโปรแกรมนี้ (4. [อาจเป็นคำถามที่ไม่เกี่ยวข้อง] แพคเกจนี้สามารถแยกออกจากกันได้หรือจะต้องแยกจาก …
11 sudo  usb  usb-drive 

3
ในเชลล์สคริปต์ฉันจะ (1) เริ่มคำสั่งในพื้นหลังได้อย่างไร (2) รอ x วินาที (3) เรียกใช้คำสั่งที่สองขณะที่คำสั่งนั้นกำลังทำงานอยู่
นี่คือสิ่งที่ฉันต้องเกิดขึ้น: เริ่มกระบวนการ A ในพื้นหลัง รอ x วินาที เริ่มกระบวนการ B ในเบื้องหน้า ฉันจะรอให้เกิดขึ้นได้อย่างไร ฉันเห็นว่า 'หลับ' ดูเหมือนว่าจะหยุดทุกอย่างและฉันไม่ต้องการ 'รอ' เพื่อให้กระบวนการ A สิ้นสุดโดยสิ้นเชิง ฉันเคยเห็นลูปเป็นระยะเวลาหนึ่งแล้ว แต่ฉันสงสัยว่ามีบางอย่างที่สะอาดกว่านี้หรือไม่

8
นับจำนวนบรรทัดว่างที่ท้ายไฟล์
ฉันมีไฟล์ที่มีบรรทัดว่างที่ท้ายไฟล์ ฉันสามารถใช้grepเพื่อนับจำนวนบรรทัดว่างท้ายไฟล์ด้วยชื่อไฟล์ที่ถูกส่งเป็นตัวแปรในสคริปต์ได้หรือไม่

2
%% หมายถึงอะไรในชื่อฟังก์ชัน
เมื่อดูที่ผลลัพธ์ของenvฉันพบว่ามีฟังก์ชั่นต่อไปนี้ BASH_FUNC_mc%%=() { . /usr/share/mc/mc-wrapper.sh } เนื้อหาของไฟล์ /usr/share/mc/mc-wrapper.sh มีดังต่อไปนี้ MC_USER=`id | sed 's/[^(]*(//;s/).*//'` MC_PWD_FILE="${TMPDIR-/tmp}/mc-$MC_USER/mc.pwd.$$" /usr/bin/mc -P "$MC_PWD_FILE" "$@" if test -r "$MC_PWD_FILE"; then MC_PWD="`cat "$MC_PWD_FILE"`" if test -n "$MC_PWD" && test -d "$MC_PWD"; then cd "$MC_PWD" fi unset MC_PWD fi rm -f "$MC_PWD_FILE" unset MC_PWD_FILE สิ่งที่ทำ%%อักขระหมายถึงในชื่อฟังก์ชัน? พวกเขาทำให้มันเป็นฟังก์ชั่นที่เรียกใช้ในกรณีที่เฉพาะเจาะจงหรือพวกเขาอนุญาตให้ฉันเรียกมันแตกต่างจากฟังก์ชั่นอื่น ๆ ? ฉันใช้ …

2
มลพิษของหมู่เกาะคานารีถูกบันทึกไว้อย่างไร?
แฟล็ก GCC -fstack-protector แฟล็กเปิดใช้งานการใช้ canaries สแต็กสำหรับการป้องกันโอเวอร์โฟลว์สแต็ก การใช้งานค่าสถานะนี้ตามค่าเริ่มต้นมีความโดดเด่นมากขึ้นในปีที่ผ่านมา หากแพ็คเกจถูกคอมไพล์ด้วย -fstack-protector และเราล้นบัฟเฟอร์ในโปรแกรมเราก็น่าจะได้รับข้อผิดพลาดเช่น: *** buffer overflow detected ***: /xxx/xxx terminated อย่างไรก็ตาม "ใคร" เป็นผู้รับผิดชอบข้อความผิดพลาดเหล่านี้? ข้อความเหล่านี้ถูกบันทึกไว้ที่ไหน? syslog daemon เลือกข้อความเหล่านี้หรือไม่
11 logs  gcc 

4
ไดเรกทอรีที่มีสองไฟล์ขึ้นไป
ฉันต้องการค้นหาไดเรกทอรีย่อยของไดเรกทอรีปัจจุบันซึ่ง (นั่นคือไดเรกทอรีย่อย) มีไฟล์ปกติอย่างน้อย 2 ไฟล์ ฉันไม่สนใจไดเรกทอรีที่มีไฟล์น้อยกว่า 2 ไฟล์และไม่ได้อยู่ในไดเรกทอรีที่มีไดเรกทอรีย่อยเท่านั้น
11 files  find 

2
Linux - แสดงหรืออัปเดตการปรับปรุงความปลอดภัยโดยใช้ apt
มีวิธีแสดงหรือติดตั้งการอัพเกรดความปลอดภัยโดยใช้ apt หรือไม่? ถ้าฉันอัพเกรดรายการด้วย: apt list --upgradable สามารถฉันยังเห็นโดยไม่ทราบว่าแพคเกจและห้องสมุดซึ่งมีความเกี่ยวข้องอัพเกรดอัพเกรดการรักษาความปลอดภัย และนอกจากจะมีตัวเลือกที่จะเพียงใช้เหล่านั้นโดยการกระโดดข้ามคนอื่น ๆ ดังนั้นการอัพเกรดที่ไม่ใช่การรักษาความปลอดภัยที่เกี่ยวข้องจะได้รับการแจ้งเตือนในครั้งต่อไปที่ผมทำงานapt upgrade?
11 debian  security  apt  upgrade 

3
เหตุใดแหล่งที่มา lib / * จึงไม่ทำงาน
ฉันมีโปรแกรมขนาดเล็กซึ่งมีโครงสร้างโฟลเดอร์ต่อไปนี้: - main.sh - lib/ - clean.sh - get.sh - index.sh - test.sh main.shแต่ละไฟล์ที่มีฟังก์ชั่นเดียวที่ผมใช้ใน main.sh: source lib/* get_products clean_products make_index test_index ในสองฟังก์ชันแรกด้านบนทำงานได้ แต่ฟังก์ชันที่สองไม่ทำงาน แต่ถ้าฉันแทนที่source lib/*ด้วย: source lib/get.sh source lib/clean.sh source lib/index.sh source lib/test.sh ทุกอย่างทำงานตามที่คาดไว้ ใครรู้ว่าทำไมsource lib/*ไม่ทำงานตามที่คาดไว้
11 bash  source 

2
Bash: กดหลบหนี 4 ครั้ง
เมื่อฉันกด escape 4 ครั้งในเทอร์มินัล bash มันจะแสดงดังนี้: -bash-4.1$ Display all 2837 possibilities? (y or n) : ! ./ [ [[ ]] { } 411toppm a2p ac accept accton aclocal aclocal-1.11 acpi_listen คุณลักษณะนี้คืออะไรและมีการค้นพบรายการเหล่านี้อย่างไร (ในการกด esc ครั้งที่สองเทอร์มินัลจะส่งเสียงเตือน)
11 bash 


8
ติดตั้ง Firefox Quantum ใน debian 9 Stretch
ฉันกำลังมองหาที่ฉันสามารถติดตั้งและลองใช้เบราว์เซอร์ Firefox Quantum ใหม่ฉันไม่พบวิธีการรับ มีคนช่วยบอกฉันว่าที่เก็บหรือลิงก์ใดบ้างที่จะดาวน์โหลดและติดตั้ง ขอขอบคุณ.

1
คุณจะกำหนดหนึ่ง IP ต่อผู้ใช้อย่างไร
ฉันกำลังสร้างเซิร์ฟเวอร์เกม Steam ที่ไม่มีหัวซึ่งใช้การสตรีมในบ้านของ Steam เพื่อให้คนสองคนเล่นในเวลาเดียวกัน ส่วนมัลติเซ็ตของการตั้งค่าเสร็จสิ้นและใช้งานได้ แต่การใช้งานไร้สายนั้นค่อนข้างลำบาก Steam ไคลเอ็นต์เดียวเท่านั้นที่สามารถเปิดใช้งานการสตรีมได้ที่บ้าน นี่น่าจะเกิดจากการใช้พอร์ตและที่อยู่ IP เดียวกัน ฉันจะกำหนดที่อยู่ IP ของผู้ใช้แต่ละคนได้อย่างไร การสตรีมจะทำได้จากภายในเครือข่ายภายในบ้านเท่านั้น ตัวเครื่องมี IP อยู่ 3 ตัวในอินเตอร์เฟสเดียว
11 linux  networking  users  ip 


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