Unix & Linux

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

4
วิธีรวมเงื่อนไข 2-name เข้ากับ find
ฉันต้องการค้นหาไฟล์ที่ไม่ตรงกับ 2 -nameเงื่อนไข ฉันสามารถทำมันได้เช่น: find /media/d/ -type f -size +50M ! -name "*deb" ! -name "*vmdk" และสิ่งนี้จะให้ผลลัพธ์ที่เหมาะสม แต่ฉันสามารถเข้าร่วม 2 เงื่อนไขกับหรืออย่างใด?
94 bash  shell  find 

30
อะไรคือคุณสมบัติหรือลูกเล่นบรรทัดคำสั่งที่คุณชื่นชอบ?
แบ่งปันคุณสมบัติและลูกเล่นบรรทัดคำสั่งของคุณสำหรับ Unix / Linux พยายามเก็บเปลือกหอย / ผู้ไม่เชื่อเรื่องพระเจ้า distro ถ้าเป็นไปได้ สนใจเห็น aliases, one-liners, คีย์ลัด, เชลล์สคริปต์ขนาดเล็ก ฯลฯ

8
แถบสถานะ tmux เกิดความเสียหายหลังจากทำการส่งไบนารี่ไฟล์วิธีการรีเซ็ต
ฉันเผลอเทอร์มินัล tmux ของฉันหลังจากที่ได้catรับไฟล์ไบนารี ตอนนี้ฉันtmuxสับสน การแยกออกและการติดใหม่ไม่ได้ช่วยอะไรและไม่ได้วาดใหม่ (Cb r) การทำงานresetจะวาดเฉพาะบานหน้าต่างที่ใช้งานอยู่เท่านั้นไม่ใช่การพักผ่อน การทำงานssty saneทั้งในและนอกtmuxไม่ช่วยอะไรเลย ภายในแต่ละบานหน้าต่างฉันมีข้อเสนอแนะปกติจากสิ่งที่ฉันพิมพ์ (การโทรเริ่มต้นresetทันทีหลังจากที่เทอร์มินัลได้รับการแก้ไขปัญหานี้) แต่ฉันไม่สามารถแก้ไขแถบสถานะได้ ในgnome-terminalทุกการอัพเดทของแถบสถานะจะนำไปสู่แถบสถานะที่จะเติบโต (ดูภาพหน้าจอด้านบน) ตัวอย่างเช่นสิ่งนี้เกิดขึ้นเมื่อฉันเรียกใช้แอปพลิเคชันใหม่เมื่อฉันสลับบานหน้าต่างหรือเมื่อฉันปรับขนาดบานหน้าต่าง การบังคับให้วาดใหม่ (โดยC-b r, โดยการเรียกใช้resetหรือผ่านเมนู gnome-terminal) ลดขนาดแถบสถานะกลับไปเป็นบรรทัดเดียว แต่กลับยังคงเสียหาย ในxtermแถบสถานะจะยังคงอยู่ภายในหนึ่งบรรทัด แต่มันยังคงเสียหายตามภาพ ฉันใช้ tmux 1.5 ฉันจะแก้ไขtmux-terminal ได้อย่างไร รายงานข้อผิดพลาดนี้จากปี 2008 ดูเหมือนจะอธิบายปัญหาเดียวกัน แต่ถูกทำเครื่องหมายว่าแก้ไขแล้ว ฉันไม่ทราบว่าเป็นเวอร์ชันใดที่ได้รับการแก้ไข แต่ tmux 1.5 ควรมีการแก้ไขตั้งแต่ปี 2008
94 tmux 

4
เปิดไฟล์ครั้งสุดท้าย
เป็นไปได้ไหมที่จะมีเวลาเมื่อเปิดไฟล์ครั้งล่าสุดและเรียงลำดับไฟล์ทั้งหมดในไดเรกทอรีตามเวลาเหล่านั้น?
94 files  ls  date 

15
เครื่องมือมาตรฐานในการแปลงจำนวนไบต์เป็นมนุษย์ KiB MiB ฯลฯ เช่น du, ls1
มีเครื่องมือมาตรฐานที่แปลงจำนวนเต็มจำนวนไบต์เป็นจำนวนที่มนุษย์สามารถอ่านได้ของหน่วยขนาดที่ใหญ่ที่สุดที่เป็นไปได้ในขณะที่รักษาค่าตัวเลขระหว่าง 1.00 ถึง 1023.99? ฉันมีสคริปต์ทุบตี / awk ของตัวเอง แต่ฉันกำลังมองหาเครื่องมือมาตรฐานซึ่งพบได้ในหลาย / distros ส่วนใหญ่ ... บางสิ่งบางอย่างที่มีอยู่โดยทั่วไปมากขึ้นและมีคำสั่ง args บรรทัดคำสั่งง่าย ๆ และ / หรือสามารถรับอินพุต piped นี่คือตัวอย่างของประเภทของผลลัพธ์ที่ฉันกำลังมองหา 1 Byt 173.00 KiB 46.57 MiB 1.84 GiB 29.23 GiB 265.72 GiB 1.63 TiB นี่คือสคริปต์ไบต์ - มนุษย์ (ใช้สำหรับผลลัพธ์ด้านบน) awk -v pfix="$1" -v sfix="$2" 'BEGIN { split( "Byt KiB …

3
ฉันจะกู้คืนจาก Heartbleed bug ใน OpenSSL ได้อย่างไร
CVE-2014-0160 aka Heartbleedเป็นช่องโหว่ใน OpenSSL มันดูน่ากลัว ฉันจะตรวจสอบว่าฉันได้รับผลกระทบได้อย่างไร? หากฉันได้รับผลกระทบฉันต้องทำอย่างไร เห็นได้ชัดว่าการอัปเกรดไม่เพียงพอ
93 security  openssl 

2
วิธีย่อขนาดรูทระบบไฟล์โดยไม่ต้องบูต livecd
ฉันพบว่าตัวเองต้องการจัดเรียงพาร์ติชันของระบบใหม่เพื่อย้ายข้อมูลก่อนหน้านี้ภายใต้ระบบไฟล์รูทไปยังจุดเมานท์เฉพาะ ไดรฟ์ข้อมูลทั้งหมดอยู่ใน LVM ดังนั้นจึงค่อนข้างง่าย: สร้างไดรฟ์ใหม่ย้ายข้อมูลลงไปลดขนาดระบบไฟล์รูทแล้วติดตั้งไดรฟ์ใหม่ที่จุดที่เหมาะสม ปัญหาคือขั้นตอนที่ 3 ลดขนาดระบบไฟล์รูท ระบบไฟล์ที่เกี่ยวข้องคือ ext4 ดังนั้นจึงรองรับการปรับขนาดออนไลน์ อย่างไรก็ตามในขณะที่เมานต์ระบบไฟล์สามารถขยายได้เท่านั้น หากต้องการลดขนาดพาร์ติชันให้ถอนการติดตั้งซึ่งแน่นอนว่าไม่สามารถทำได้สำหรับพาร์ติชันรากในการทำงานปกติ คำตอบรอบ ๆ เว็บดูเหมือนจะหมุนรอบการบูท LiveCD หรือสื่อกู้ภัยอื่น ๆ ทำการลดขนาดจากนั้นบู๊ตกลับสู่ระบบที่ติดตั้ง อย่างไรก็ตามระบบที่มีปัญหานั้นอยู่ในระยะไกลและฉันสามารถเข้าถึงได้ผ่าน SSH เท่านั้น ฉันสามารถรีบู๊ตได้ แต่การบู๊ตดิสก์ช่วยเหลือและไม่สามารถทำการดำเนินการจากคอนโซลได้ ฉันจะยกเลิกการต่อเชื่อมระบบไฟล์รูทขณะที่ยังคงเข้าถึงเชลล์ระยะไกลได้อย่างไร
93 centos  lvm 

18
มีวิธีการรับ min, max, มัธยฐานและค่าเฉลี่ยของรายการตัวเลขในคำสั่งเดียวหรือไม่?
ฉันมีรายการตัวเลขในไฟล์หนึ่งรายการต่อบรรทัด ฉันจะรับค่าต่ำสุดสูงสุดค่ามัธยฐานและค่าเฉลี่ยได้อย่างไร ฉันต้องการใช้ผลลัพธ์ในสคริปต์ทุบตี แม้ว่าสถานการณ์ปัจจุบันของฉันจะเป็นจำนวนเต็ม แต่วิธีแก้ปัญหาสำหรับเลขทศนิยมจะเป็นประโยชน์ในบรรทัด
93 bash  awk  arithmetic  bc 

6
ฉันจะล้างประวัติเทอร์มินัลได้อย่างไร
ฉันใช้ Linux Mint 17.1 Rebecca เป็นเวลาประมาณ 2 วันและพิมพ์รหัสผ่านของฉันลงในเทอร์มินัลโดยไม่ได้ตั้งใจซึ่งจะปรากฏในรายการประวัติคำสั่งที่ฉันได้พิมพ์ไว้ก่อนหน้านี้ ฉันต้องการล้างประวัติเทอร์มินัลอย่างสมบูรณ์ ฉันได้ลองใช้คำสั่งต่อไปนี้ใน terminal ซึ่งฉันคิดว่าจะล้างประวัติตลอดไป แต่พวกเขาไม่ได้: history -c reset tput reset คำสั่งข้างต้น "จะ" ล้างประวัติจากเทอร์มินัล แต่เมื่อฉันออกและนำขึ้นใหม่ทั้งหมดประวัติก่อนหน้าของฉันยังคงอยู่ที่นั่นและสามารถแสดงรายการอีกครั้งโดยใช้ - คำสั่งประวัติศาสตร์และด้วยการกดลูกศรขึ้นบนแป้นพิมพ์ . ฉันไม่ต้องการให้สิ่งนี้เกิดขึ้นจนกว่าฉันจะล้างประวัติทั้งหมดของฉันแล้วฉันต้องการใช้มันต่อไป ฉันจะล้างประวัติเทอร์มินัลทั้งหมด - ตลอดไปและเริ่มต้นใหม่ได้อย่างไร โปรดทราบ: ฉันไม่ต้องการที่จะออกจากสถานีโดยไม่ต้องบันทึกประวัติศาสตร์เพียงแค่ล้างมันตลอดไปในกรณีนี้

7
เหตุใดจึงไม่มีโลแคล“ ยูโรอังกฤษ”
ฉันเคยใช้en_DK.UTF-8สถานที่แปลก ๆเมื่อทำการติดตั้งระบบใหม่เพราะนั่นจะทำให้เกิดผลลัพธ์ (โดยประมาณ) สถานที่ที่ฉันต้องการแม้ว่าฉันจะไม่ได้อยู่ในเดนมาร์กก็ตาม ตัวชี้วัดการวัด รูปแบบวันที่และเวลาที่เหมาะสม แต่ชื่อวันและเดือนเป็นภาษาอังกฤษ รูปแบบเวลา 24 ชั่วโมง สัปดาห์ทำงานเริ่มในวันจันทร์ วันที่ที่เป็นตัวเลขในรูปแบบ ISO (อย่างน้อยที่คล้ายกัน) yyyy-mm-dd วันที่ไม่เป็นทางการคือ dd / mm ไม่ใช่วิธีอื่น ขนาดกระดาษ A4 สกุลเงินยูโร ข้อความระบบเป็นภาษาอังกฤษ อนิจจาอูบุนตูและเดเบียนดูเหมือนจะไม่สนับสนุนen_DKภาษานั้นอีกต่อไป ฉันคิดว่าควรมีบางอย่างที่เหมือนกับen_EU"ยูโรอังกฤษ" ทุกที่ที่ฉันทำงานมีข้อกำหนดเช่นนี้ - ภาษาราชการขององค์กรคือภาษาอังกฤษ แต่เราต้องการค่าเริ่มต้นจากยุโรปสำหรับทุกสิ่ง ฉันจินตนาการว่าฉันไม่ใช่คนแรกที่คิดว่าสถานที่ภาษาอังกฤษ "ที่ไม่เชื่อเรื่องสถานที่" จะเป็นประโยชน์ต่อทั้งตัวฉันเองและองค์กรที่ฉันทำงานด้วย เหตุใดจึงไม่มีอยู่และฉันจะหาการสนทนาและเหตุผลเพิ่มเติมได้ที่ไหน ... หรือฉันควรจะนำเสนอหรือไม่ ถึงผู้ซึ่ง?
93 locale  i18n 

8
ความต้องการคำสั่ง 'fakeroot' ใน linux คืออะไร
ทำไมเราต้องมีfakerootคำสั่งเลย? เราไม่สามารถเพียงแค่ใช้sudoหรือsuคำสั่ง? หน้าคนพูดว่า: fakeroot - รันคำสั่งในสภาพแวดล้อมที่ปลอมแปลงสิทธิ์ของรูทสำหรับการจัดการไฟล์ About.com พูดว่า: ให้สภาพแวดล้อมของรูทปลอม แพคเกจนี้มีวัตถุประสงค์เพื่อเปิดใช้งานบางอย่างเช่น: dpkg-buildpackage -rfakerootเพื่อลบความต้องการที่จะกลายเป็นรากสำหรับการสร้างแพคเกจ นี้จะกระทำโดยการตั้งค่าLD_PRELOADการlibfakeroot.soซึ่งมีห่อรอบgetuid, chown, chmod, mknod, stat, ... , ดังนั้นการสร้างสภาพแวดล้อมที่รากของปลอม หากคุณไม่เข้าใจสิ่งนี้คุณไม่จำเป็นต้องทำfakeroot! คำถามของฉันคืออะไรมันมีวัตถุประสงค์พิเศษอะไรที่แก้ง่าย ๆsuหรือsudoเปล่า? ตัวอย่างเช่นสำหรับการแบ่งบรรจุหีบห่อที่ติดตั้งใหม่ทั้งหมดใน ubuntu เราให้คำสั่งต่อไปนี้: $ fakeroot -u dpkg-repack `dpkg --get-selections | grep install | cut -f1` เราสามารถทำคำสั่งข้างต้นกับ sudo หรือ su แทน fakeroot ดังนี้: $ sudo dpkg-repack `dpkg --get-selections …
93 sudo  su 

6
การใช้ && และ || สับสน ผู้ประกอบการ
ฉันอ่านผ่าน/etc/rc.d/init.d/sendmailไฟล์ (ฉันรู้ว่านี่ไม่ค่อยใช้ แต่ฉันกำลังเรียนเพื่อสอบ) และฉันสับสนเล็กน้อยเกี่ยวกับตัวดำเนินการ&&และตัว||ดำเนินการ ฉันอ่านที่พวกเขาสามารถใช้ในงบเช่น: if [ test1 ] && [ test2 ]; then echo "both tests are true" elif [ test1 ] || [ test2 ]; then echo "one test is true" fi อย่างไรก็ตามสคริปต์นี้แสดงคำสั่งบรรทัดเดียวเช่น: [ -z "$SMQUEUE" ] && SMQUEUE="QUEUE" [ -f /usr/sbin/sendmail ] || exit 0 สิ่งเหล่านี้ดูเหมือนจะใช้&&และ||โอเปอเรเตอร์เพื่อล้วงเอาการตอบสนองจากการทดสอบ แต่ฉันไม่สามารถขุดเอกสารเกี่ยวกับการใช้งานของผู้ให้บริการเหล่านี้ได้ …

6
ฉันจะลบ n บรรทัดแรกของไฟล์ ascii โดยใช้คำสั่ง shell ได้อย่างไร
ฉันมีไฟล์หลายไฟล์ที่มีข้อมูลข้อความ ascii ใน 5-10 บรรทัดแรกตามด้วยข้อมูลเมทริกซ์ที่จัดเรียงอย่างดี ในเชลล์สคริปต์ฉันต้องการลบข้อความสองสามบรรทัดแรกเพื่อที่ฉันจะสามารถใช้ข้อมูลเมทริกซ์บริสุทธิ์ในโปรแกรมอื่น ฉันจะใช้คำสั่ง bash shell เพื่อทำสิ่งนี้ได้อย่างไร หากเป็นความช่วยเหลือใด ๆ ฉันใช้ RedHat และระบบ Ubuntu linux

11
ฉันจะใช้ man pages เพื่อเรียนรู้วิธีใช้คำสั่งได้อย่างไร
ขณะที่การวิจัยปัญหาอื่นฉันมาข้ามคำสั่ง , locate something | xargs -I {} bash -c "if [ -d "{}" ]; then echo {}; fi" ที่ฉันต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ ดังนั้นฉันวิ่งman xargsและได้รับผลลัพธ์ต่อไปนี้: XARGS(1) General Commands Manual XARGS(1) NAME xargs - build and execute command lines from standard input SYNOPSIS xargs [-0prtx] [-E eof-str] [-e[eof-str]] [--eof[=eof-str]] [--null] [-d delimiter] [--delimiter delimiter] …
92 man 

11
วิธีการตรวจสอบสถาปัตยกรรมเคอร์เนล Linux?
uname -mให้ i686 และuname -mให้ผลลัพธ์ i686 i386 ใน Red Hat Enterprise Linux Server รีลีสเครื่อง 5.4 (Tikanga) ฉันต้องติดตั้ง Oracle Database 10g Release 2 บนเครื่องนั้น ดังนั้นฉันจะตัดสินใจได้อย่างไรว่าสถาปัตยกรรมเคอร์เนลเป็น 32 บิตหรือ 64 บิต

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