Unix & Linux

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

8
วิธีง่ายๆในการสร้างอุโมงค์จากพอร์ตท้องถิ่นหนึ่งไปยังอีก?
ฉันมีเซิร์ฟเวอร์การพัฒนาซึ่งสามารถเข้าถึงได้จาก 127.0.0.1:8000 ไม่ใช่ 192.168.1.x: 8000 ในฐานะที่เป็นแฮ็คที่รวดเร็วมีวิธีตั้งค่าบางอย่างให้ฟังบนพอร์ตอื่น (เช่น 8001) เพื่อให้จากเครือข่ายท้องถิ่นฉันสามารถเชื่อมต่อ 192.168.1.x: 8001 และจะสร้างการรับส่งข้อมูลระหว่างไคลเอ็นต์และ 127.0 .0.1: 8000?


6
Linux: กำหนดวันที่ผ่านบรรทัดคำสั่ง
จะเปลี่ยนวันที่ของระบบใน Linux ได้อย่างไร? ฉันต้องการเปลี่ยน: ปีเดียวเท่านั้น เดือนเดียวเท่านั้น วันที่เท่านั้น การรวมกันของทั้งสามข้างต้น
76 linux  date  clock 

10
วิธีแทรกข้อความก่อนบรรทัดแรกของไฟล์?
ฉันได้ดูรอบ ๆsedคำสั่งเพื่อเพิ่มข้อความลงในไฟล์ในบรรทัดเฉพาะ งานนี้เพิ่มข้อความหลังบรรทัด 1: sed '1 a\ แต่ฉันต้องการเพิ่มก่อนบรรทัด 1 มันจะเป็น: sed '0 a\ invalid usage of line address 0แต่ฉันได้รับข้อผิดพลาดนี้: ข้อเสนอแนะใด ๆ

4
อะไรคือความแตกต่างระหว่างการจัดหา ('.' หรือ 'แหล่งที่มา') และการเรียกใช้ไฟล์ใน bash?
ความแตกต่างระหว่างการเรียกใช้งานสคริปต์เช่นนี้: ./test.sh และดำเนินการสคริปต์เช่นนี้: . test.sh? ฉันลองสคริปต์สองบรรทัดแบบง่าย ๆ เพื่อดูว่าฉันสามารถค้นหาได้หรือไม่ว่ามีความแตกต่าง: #!/bin/bash ls แต่ทั้งสอง. test.shและ./test.shส่งคืนข้อมูลเดียวกัน
76 bash  shell 

2
ฉันจะกำหนดเอาต์พุตของคำสั่งให้กับตัวแปร shell ได้อย่างไร?
ฉันต้องการกำหนดผลลัพธ์ของนิพจน์ให้กับตัวแปรและเชื่อมโยงกับสตริงแล้วสะท้อนกลับ นี่คือสิ่งที่ฉันได้รับ: #!/bin/bash cd ~/Desktop; thefile= ls -t -U | grep -m 1 "Screen Shot"; echo "Most recent screenshot is: "$thefile; แต่ผลลัพธ์นั้น: Screen Shot 2011-07-03 at 1.55.43 PM.png Most recent screenshot is: ดังนั้นดูเหมือนว่าจะไม่ได้รับมอบหมาย$thefileและกำลังถูกพิมพ์ขณะดำเนินการ

2
ระบบไฟล์ใหม่ / รันนี้คืออะไร
ฉันเพิ่งวิ่งไปdf -hหนึ่งนาทีก่อนและสังเกตว่ามีการเพิ่มระบบไฟล์ที่ฉันไม่คุ้นเคย ไม่มีใครรู้ว่าทำไม/runมีอยู่จริง? นี่เป็นบางสิ่งที่ถูกเพิ่มโดยเคอร์เนลหรือไม่ โดยArch ลินุกซ์ ? run 10M 236K 9.8M 3% /run

5
มีคำสั่งให้แสดงรายการที่เปิดอยู่ทั้งหมดบนเครื่องหรือไม่?
เมื่อ SSH ลงในคอมพิวเตอร์ของฉัน (ไม่ต้องถามมันเป็นวิธีแก้ปัญหา) ฉันไม่สามารถเริ่มแอปพลิเคชันแบบกราฟิกโดยไม่ต้องรัน: export DISPLAY=:0.0 ถ้าฉันเรียกใช้สิ่งนี้ก่อนแล้วจึงเรียกใช้โปรแกรมประยุกต์แบบกราฟิก หากไม่เป็นเช่นนั้นก็ใช้ไม่ได้ไม่มีการเชื่อมต่อกับจอแสดงผล มีคำสั่งสำหรับการแสดงรายการจอแสดงผลที่มีอยู่ทั้งหมด (เช่น: ค่าที่เป็นไปได้ทั้งหมด) บนเครื่องหรือไม่?
76 ssh  x-server 

10
วิธี grep สตรีมข้อผิดพลาดมาตรฐาน (stderr)?
ฉันใช้ ffmpeg เพื่อรับข้อมูลเมตาของคลิปเสียง แต่ฉันไม่สามารถ grep มัน $ ffmpeg -i 01-Daemon.mp3 |grep -i Duration FFmpeg version SVN-r15261, Copyright (c) 2000-2008 Fabrice Bellard, et al. configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib --mandir=/usr/share/man --arch=i386 --extra-cflags=-O2 ... ฉันตรวจสอบเอาต์พุต ffmpeg นี้โดยตรงไปที่ stderr $ ffmpeg -i 01-Daemon.mp3 2> /dev/null ดังนั้นฉันคิดว่า grep ไม่สามารถอ่านสตรีมข้อผิดพลาดเพื่อตรวจจับเส้นที่ตรงกันได้ เราจะเปิดใช้งาน grep เพื่ออ่านสตรีมข้อผิดพลาดได้อย่างไร? การใช้ลิงก์nixCraftฉันเปลี่ยนเส้นทางสตรีมข้อผิดพลาดมาตรฐานไปยังสตรีมเอาต์พุตมาตรฐานจากนั้น …

3
ฉันจะเขียนทุกบรรทัดจากน้อยไปยังไฟล์ได้อย่างไร?
ฉันได้ไพพ์คำสั่งlessและตอนนี้ฉันต้องการบันทึกผลลัพธ์ของคำสั่งไปยังไฟล์ ฉันจะทำอย่างไร ในกรณีนี้ผมไม่ต้องการที่จะใช้ผมต้องการแก้ปัญหาโดยตรงจากน้อยเพื่อที่ฉันจะได้ไม่ต้องเรียกคำสั่งยาวทำงานถ้าฉันลืมที่จะใช้teetee คำถามนี้คล้ายกับคำถามนี้ความแตกต่างเพียงอย่างเดียวคือฉันต้องการบันทึกทุกบรรทัดไม่ใช่ชุดย่อย: เขียนบรรทัดลงในไฟล์จากน้อยกว่า
76 less 

2
ฉันพิมพ์รหัสผ่านโดยไม่ได้ตั้งใจลงในช่องเข้าสู่ระบบจะปลอดภัยหรือไม่?
ฉันดูที่แป้นพิมพ์และพิมพ์รหัสผ่านของฉันเพราะฉันคิดว่าฉันได้พิมพ์ชื่อเข้าสู่ระบบแล้ว ผมกดEnterแล้วเมื่อมันถามรหัสผ่านที่ผมกด+Ctrlc ฉันควรใช้มาตรการป้องกันไว้ก่อนเพื่อให้แน่ใจว่ารหัสผ่านไม่ได้ถูกจัดเก็บในรูปแบบข้อความธรรมดาหรือฉันควรเปลี่ยนรหัสผ่าน? นอกจากนี้ยังมี tty บนเซิร์ฟเวอร์ ubuntu 16.04 LTS

6
การใช้ while loop เพื่อ ssh ไปยังเซิร์ฟเวอร์หลายเครื่อง
ฉันมีไฟล์servers.txtพร้อมรายการเซิร์ฟเวอร์: server1.mydomain.com server2.mydomain.com server3.mydomain.com เมื่อฉันอ่านไฟล์ทีละบรรทัดด้วยwhileและสะท้อนแต่ละบรรทัดทำงานได้ตามที่คาดหวัง พิมพ์ทุกบรรทัด $ while read HOST ; do echo $HOST ; done < servers.txt server1.mydomain.com server2.mydomain.com server3.mydomain.com อย่างไรก็ตามเมื่อฉันต้องการ ssh ไปยังเซิร์ฟเวอร์ทั้งหมดและรันคำสั่งทันใดนั้นwhileลูปของฉันก็หยุดทำงาน: $ while read HOST ; do ssh $HOST "uname -a" ; done < servers.txt Linux server1 2.6.30.4-1 #1 SMP Wed Aug 12 19:55:12 EDT 2009 i686 …

11
ฆ่าหลายอินสแตนซ์ของกระบวนการทำงานด้วยคำสั่งเดียว
สมมติว่าฉันมีหนึ่งพันหรือมากกว่าอินสแตนซ์ของกระบวนการใด ๆ (ตัวอย่างเช่นvi) ทำงาน ฉันจะฆ่าพวกเขาทั้งหมดในหนึ่งนัดเดียว / คำสั่งหนึ่งบรรทัด / คำสั่งเดียวได้อย่างไร
75 process  kill 


2
สร้างดัชนีการทำให้สมบูรณ์อัตโนมัติ (หรือสิ่งที่เรียกว่า) และไบนารีในแคช $ PATH ใน zsh
หลังจากติดตั้งซอฟต์แวร์ใหม่เทอร์มินัลที่เปิดแล้วพร้อม zsh จะไม่ทราบเกี่ยวกับคำสั่งใหม่และไม่สามารถสร้างการเติมข้อมูลอัตโนมัติให้กับสิ่งเหล่านั้นได้ เห็นได้ชัดว่าการเปิดเทอร์มินัลใหม่ช่วยแก้ไขปัญหาได้ แต่สามารถสร้างดัชนี (หรืออะไรก็ตามที่คุณเรียกว่า) เพื่อให้การเติมข้อความอัตโนมัติทำงานบนเทอร์มินัลเก่าได้หรือไม่ ฉันลองด้วยcompinitแต่ก็ไม่ได้ช่วย นอกจากนี้ยังมีวิธีที่ไม่ขึ้นกับเชลล์หรือไม่? ยินดีที่มีวิธีตรวจสอบคำตอบด้วย (ยกเว้นสำหรับการถอนการติดตั้งบางสิ่งและติดตั้งใหม่) สิ่งที่ฉันหมายถึงคือหลังจากพิมพ์อักขระสองสามตัวของชื่อคำสั่งฉันสามารถกดTabและzshควรใช้ส่วนที่เหลือเพื่อดึงชื่อเต็ม
75 zsh  autocomplete 

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