Unix & Linux

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

7
เหตุใด [AZ] จึงตรงกับอักษรตัวพิมพ์เล็กใน bash
ในเชลล์ทั้งหมดที่ฉันรู้จักrm [A-Z]*ลบไฟล์ทั้งหมดที่ขึ้นต้นด้วยตัวอักษรตัวพิมพ์ใหญ่ แต่ด้วยการทุบตีสิ่งนี้จะลบไฟล์ทั้งหมดที่ขึ้นต้นด้วยตัวอักษร เนื่องจากปัญหานี้มีอยู่บน Linux และ Solaris ที่มี bash-3 และ bash-4 จึงไม่สามารถเป็นข้อบกพร่องที่เกิดจากตัวจับรูปแบบ buggy ใน libc หรือนิยามที่ตั้งที่พลาดไป พฤติกรรมที่แปลกและเสี่ยงนี้มีจุดประสงค์หรือเป็นเพียงข้อผิดพลาดที่มีอยู่ซึ่งไม่ได้ผสมกันมาหลายปีหรือไม่?
43 bash  shell  wildcards  locale 

4
วิธีรับบรรทัดคำสั่งทั้งหมดจากกระบวนการ
ฉันจะรับอาร์กิวเมนต์คำสั่งหรือบรรทัดคำสั่งทั้งหมดจากกระบวนการที่รันโดยใช้ชื่อกระบวนการได้อย่างไร ตัวอย่างเช่นกระบวนการนี้: # ps PID USER TIME COMMAND 1452 root 0:00 /sbin/udhcpc -b -T 1 -A 12 -i eth0 -p /var/run/udhcpc.eth0.pid และสิ่งที่ฉันต้องการคือ/sbin/udhcpc -b -T 1 -A 12 -i eth0 -p /var/run/udhcpc.eth0.pidหรือข้อโต้แย้ง ฉันรู้ชื่อกระบวนการและต้องการข้อโต้แย้ง ฉันใช้ Busybox กับ SliTaz

2
linux + g ++: ไม่พบคำสั่ง
gettext-0.19.1.tar.xzฉันต้องการที่จะติดตั้งบนเครื่องสีแดงหมวกของฉันลินุกซ์ ครั้งแรกฉันทำต่อไปนี้ cd gettext-0.19.1 ./configure make ระหว่างmakeนั้นก็ล้มเหลวg++: command not found libtool: compile: g++ -DIN_LIBASPRINTF -DHAVE_CONFIG_H -I. -c autosprintf.cc - o .libs/autosprintf.o ./libtool: line 1128: g++: command not found make[5]: *** [autosprintf.lo] Error 1 make[5]: Leaving directory `/var/tmp/gettext-0.19.1/gettext-runtime/libasprintf' make[4]: *** [all] Error 2 make[4]: Leaving directory `/var/tmp/gettext-0.19.1/gettext-runtime/libasprintf' make[3]: *** [all-recursive] Error …
43 linux  g++ 

4
ขนาดหน้าถูกกำหนดในพื้นที่ที่อยู่เสมือนอย่างไร
Linux ใช้ระบบหน่วยความจำเสมือนที่อยู่ทั้งหมดเป็นที่อยู่เสมือนไม่ใช่ที่อยู่จริง ที่อยู่เสมือนเหล่านี้จะถูกแปลงเป็นที่อยู่จริงโดยโปรเซสเซอร์ เพื่อให้การแปลนี้ง่ายขึ้นหน่วยความจำเสมือนและกายภาพจะถูกแบ่งออกเป็นหน้า ๆ แต่ละหน้าเหล่านี้จะได้รับหมายเลขที่ไม่ซ้ำกัน; หมายเลขเฟรมหน้า ขนาดหน้าบางขนาดอาจเป็น 2 KB, 4 KB เป็นต้น แต่จะมีการกำหนดหมายเลขขนาดหน้านี้อย่างไร มันได้รับอิทธิพลจากขนาดของสถาปัตยกรรมหรือไม่? ตัวอย่างเช่นบัส 32 บิตจะมีพื้นที่ที่อยู่ 4 GB

1
บังคับให้ rsync เขียนทับไฟล์ที่ปลายทางแม้ว่าจะเป็นไฟล์ที่ใหม่กว่าก็ตาม
ฉันมีสคริปต์สำรองข้อมูล rsync ที่ฉันเรียกใช้ซึ่งคืนค่าไฟล์กลับมาจากที่ที่พวกเขาถาม แต่ถ้าไฟล์ที่อยู่ปลายทางนั้นใหม่กว่าในการสำรองข้อมูลเมื่อฉันพยายามกู้คืนมันจะไม่แทนที่มัน ฉันต้องการแทนที่ไฟล์ที่ใหม่กว่าด้วยไฟล์สำรอง แต่ฉันไม่เห็นวิธีที่จะทำให้ rsync ทำเช่นนี้ tldr: มีวิธีบังคับ rsync ให้เขียนทับไฟล์ที่ปลายทางหรือไม่ แก้ไข:ฉันได้ทำงานrsync -avhpเมื่อฉันต้องการคืนค่าการสำรองข้อมูลฉันใช้คำสั่งเดียวกันกับ "เพื่อ" และ "จาก" สลับ ดังนั้นจึงพยายามคัดลอกไฟล์จากไดรฟ์สำรองไปยังสถานที่บนคอมพิวเตอร์ของฉัน

2
วิธีตีความเอาต์พุต badblocks
หน้า man สำหรับ badblock ดูเหมือนจะไม่พูดถึงความหมายของตัวเลขสามตัวในผลลัพธ์โดยเฉพาะ: ผ่านไปแล้วพบบล็อกที่ไม่ดี 7 รายการ (ข้อผิดพลาด 7/0/01) ผ่านเสร็จพบ 120 บล็อกที่ไม่ดี (0/0/120 ข้อผิดพลาด) ฉันเดาว่าเป็น "ข้อผิดพลาดขณะอ่าน / เขียน / เปรียบเทียบ" ใครบางคนสามารถสอนฉันได้ไหม
43 badblocks 

2
เปลี่ยนแป้นพิมพ์ลัดทั่วโลก
ฉันใช้Alt+Spaceใน Emacs แต่ใน Xfce มันจะปรากฏเมนูตัวจัดการหน้าต่างที่มุมซ้ายบนของหน้าต่าง ฉันจะปิดการใช้งานAlt+Spaceสำหรับ Xfce และเปลี่ยนแป้นพิมพ์ลัดทั่วไปได้อย่างไร

4
เหตุใดลีนุกซ์จึงนิยมใช้เป็นระบบปฏิบัติการสำหรับซุปเปอร์คอมพิวเตอร์?
ตั้งแต่เดือนพฤศจิกายน 2010, Linux ใช้งานบน 459 จาก 500 ซูเปอร์คอมพิวเตอร์ของ TOP500 อ้างถึงตารางผ่านทางอินเทอร์เน็ตเอกสารเก่า อะไรคือเหตุผลเบื้องหลังการใช้งานลีนุกซ์ขนาดใหญ่ในพื้นที่ซุปเปอร์คอมพิวเตอร์?

3
วิธีการเพิ่ม / ลบองค์ประกอบไปยัง / จากอาร์เรย์ในทุบตี?
ฉันมีอาร์เรย์ที่มีองค์ประกอบบางอย่าง แต่ฉันต้องการผลักดันรายการใหม่ไปยังจุดเริ่มต้นของอาร์เรย์ ฉันจะทำอย่างไร

2
ใน bash scripting อะไรคือความแตกต่างระหว่างการประกาศและตัวแปรปกติ?
ในการทุบตีสคริปต์: เราสร้างตัวแปรโดยการตั้งชื่อ: abc=ok หรือเราสามารถใช้ declare declare abc=ok ความแตกต่างคืออะไร และทำไมทุบตีทำหลายวิธีในการสร้างตัวแปร?

3
เข้ารหัสไลบรารีวิดีโออีกครั้งใน x265 (HEVC) โดยไม่มีการสูญเสียคุณภาพ
ฉันพยายามแปลงไลบรารีวิดีโอของฉันเป็นรูปแบบ HEVC เพื่อเพิ่มพื้นที่ ฉันรันคำสั่งต่อไปนี้ในไฟล์วิดีโอทั้งหมดในห้องสมุดของฉัน: #!/bin/bash for i in *.mp4; do #Output new files by prepending "X265" to the names avconv -i "$i" -c:v libx265 -c:a copy X265_"$i" done ตอนนี้วิดีโอส่วนใหญ่แปลงได้ดีและคุณภาพเหมือนเดิม อย่างไรก็ตามวิดีโอบางเรื่องที่มีคุณภาพสูงมาก (เช่นภาพยนตร์ที่พิมพ์ที่มีขนาด 5GB) จะเสียคุณภาพ - วิดีโอนั้นเป็นพิกเซลทั้งหมด ฉันไม่แน่ใจว่าจะทำอย่างไรในกรณีนี้ ฉันจำเป็นต้องแก้ไขcrfพารามิเตอร์ในบรรทัดคำสั่งของฉันหรือไม่? หรืออย่างอื่น? สิ่งนี้คือฉันกำลังแปลงเป็นกลุ่ม ดังนั้นฉันต้องการวิธีที่avconvจะปรับพารามิเตอร์ใด ๆ ที่จำเป็นต้องปรับโดยอัตโนมัติสำหรับวิดีโอแต่ละรายการ UPDATE-1 ฉันพบว่าcrfเป็นปุ่มที่ฉันต้องปรับ CRF เริ่มต้นคือ 28 เพื่อคุณภาพที่ดีกว่าฉันสามารถใช้บางอย่างน้อยกว่า 28 ตัวอย่างเช่น: …

5
วิธีการผูกอุปกรณ์ USB ในชื่อคงที่?
ฉันมี Arduino ซึ่งบางครั้งก็ถูกผูกมัด/dev/ttyUSB0และบางครั้ง/dev/ttyUSB1ทำให้สคริปต์ของฉันล้มเหลว ฉันไม่ต้องการให้ระบุเป็นไปได้ทั้งหมดของการที่อุปกรณ์ของฉันอาจจะมี /dev/arduinoแต่ฉันอยากจะมีมันจะผูกพันแบบคงที่บางแห่งเช่น ฉันจะบรรลุสิ่งนั้นได้อย่างไร

4
ระบบไฟล์ Linux ประสิทธิภาพสูงที่สุดสำหรับการจัดเก็บไฟล์ขนาดเล็กจำนวนมาก (HDD ไม่ใช่ SSD) คืออะไร
ฉันมีแผนผังไดเรกทอรีที่มีไฟล์ขนาดเล็กจำนวนมากและไฟล์ขนาดใหญ่จำนวนเล็กน้อย ขนาดเฉลี่ยของไฟล์ประมาณ 1 กิโลไบต์ มีไฟล์ 210158 และไดเรกทอรีในต้นไม้ (จำนวนนี้ได้รับจากการทำงานfind | wc -l) ไฟล์จำนวนเล็กน้อยได้รับการเพิ่ม / ลบ / เขียนใหม่หลายครั้งต่อสัปดาห์ สิ่งนี้ใช้กับไฟล์ขนาดเล็กเช่นเดียวกับไฟล์ที่มีขนาดใหญ่ขึ้น ระบบไฟล์ที่ฉันลอง (ext4, btrfs) มีปัญหากับการวางตำแหน่งไฟล์บนดิสก์ เมื่อเวลาผ่านไปนานกว่าตำแหน่งทางกายภาพของไฟล์บนดิสก์ (สื่อที่หมุนไม่ได้เป็นดิสก์สถานะของแข็ง) มีการกระจายแบบสุ่มมากขึ้น ผลกระทบเชิงลบของการกระจายแบบสุ่มนี้คือระบบไฟล์เริ่มช้าลง (เช่น: ช้ากว่าระบบไฟล์ใหม่ถึง 4 เท่า) มีระบบไฟล์ Linux (หรือวิธีการบำรุงรักษาระบบไฟล์) ที่ไม่ได้รับผลกระทบจากการลดลงของประสิทธิภาพนี้และสามารถรักษาโปรไฟล์ประสิทธิภาพที่มั่นคงบนสื่อที่หมุนได้หรือไม่? ระบบไฟล์อาจทำงานบน Fuse แต่จำเป็นต้องเชื่อถือได้

4
วิธีอ่านตัวแปรสภาวะแวดล้อมของกระบวนการ
ลินุกซ์/proc/<pid>/environไม่อัปเดต (ตามที่ฉันเข้าใจว่าไฟล์มีสภาพแวดล้อมเริ่มต้นของกระบวนการ) ฉันจะอ่านสภาพแวดล้อมปัจจุบันของกระบวนการได้อย่างไร

8
ฉันจะปิดฟังก์ชั่น“ วางปุ่มกลางของเมาส์” ในทุกโปรแกรมได้อย่างไร
ฉันไม่ชอบที่จะวางปุ่มกลางของเมาส์เพราะฉันมักจะจบด้วยโค้ดที่ไม่สามารถทำงานได้ใน Eclipse ฉันจะปิดตัวเลือกนี้ได้อย่างไร (ในโปรแกรมทั้งหมด) ฉันกำลังใช้งาน Fedora
43 xorg  mouse 

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