Unix & Linux

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

17
ฉันควรรวบรวมซอฟต์แวร์ที่รวบรวมไว้ที่ไหน?
ฉันต้องรวบรวมซอฟต์แวร์บางอย่างในเครื่อง Fedora ของฉัน สถานที่ที่ดีที่สุดในการวางไว้จึงไม่รบกวนการทำงานของซอฟต์แวร์สำเร็จรูป

3
การอ้างอิงภายใน $ (การทดแทนคำสั่ง) ใน Bash
ในสภาพแวดล้อม Bash ของฉันฉันใช้ตัวแปรที่มีช่องว่างและฉันใช้ตัวแปรเหล่านี้ภายในการทดแทนคำสั่ง น่าเสียดายที่ฉันไม่พบคำตอบใน SE วิธีที่ถูกต้องในการอ้างอิงตัวแปรของฉันคืออะไร? และฉันควรทำอย่างไรถ้าสิ่งเหล่านี้ซ้อนอยู่? DIRNAME=$(dirname "$FILE") หรือฉันจะพูดนอกทดแทน? DIRNAME="$(dirname $FILE)" หรือทั้งคู่? DIRNAME="$(dirname "$FILE")" หรือฉันจะใช้เห็บกลับ? DIRNAME=`dirname "$FILE"` วิธีที่ถูกต้องในการทำเช่นนี้คืออะไร? และฉันจะตรวจสอบได้อย่างง่ายดายว่าราคาถูกต้องหรือไม่

4
ความสำคัญของตัวดำเนินการเชิงตรรกะของเชลล์ &&, ||
ฉันพยายามที่จะเข้าใจว่าการทำงานของตัวดำเนินการทางตรรกะในการทุบตี ตัวอย่างเช่นฉันคาดว่าคำสั่งต่อไปนี้ไม่ได้สะท้อนอะไรเลย true || echo aaa && echo bbb อย่างไรก็ตามตรงกันข้ามกับความคาดหวังของฉันbbbได้รับการพิมพ์ ใครช่วยอธิบายหน่อยได้ไหมฉันจะทำให้รู้สึกถึงการทบต้น&&และ||ผู้ปฏิบัติงานในการทุบตีได้อย่างไร?
126 bash  shell 

9
วิธีลบบรรทัดที่ซ้ำกันในไฟล์ข้อความ?
ไฟล์ข้อความขนาดใหญ่ (มากถึง 2 GiB) ของฉันมีข้อมูลที่ซ้ำกันประมาณ 100 รายการทุกบรรทัดในนั้น (ไร้ประโยชน์ในกรณีของฉันเนื่องจากไฟล์เป็นตารางข้อมูลที่เหมือน CSV) สิ่งที่ฉันต้องการคือการลบการทำซ้ำทั้งหมดในขณะที่ (โดยเฉพาะอย่างยิ่ง แต่สิ่งนี้สามารถเสียสละเพื่อเพิ่มประสิทธิภาพที่สำคัญ) การรักษาลำดับเดิม ในผลลัพธ์แต่ละบรรทัดจะต้องไม่ซ้ำกัน หากมี 100 เส้นเท่ากัน (โดยปกติรายการที่ซ้ำกันจะกระจายไปทั่วไฟล์และจะไม่เป็นเพื่อนบ้าน) จะต้องมีเพียงหนึ่งในประเภทที่เหลือ ฉันได้เขียนโปรแกรมใน Scala (พิจารณาเป็น Java ถ้าคุณไม่ทราบเกี่ยวกับ Scala) เพื่อดำเนินการนี้ แต่บางทีมีเครื่องมือดั้งเดิมที่เขียนด้วยภาษา C เร็วกว่าสามารถทำสิ่งนี้ได้เร็วขึ้น? อัปเดต: awk '!seen[$0]++' filenameดูเหมือนว่าโซลูชันจะทำงานได้ดีสำหรับฉันตราบใดที่ไฟล์อยู่ใกล้กับ 2 GiB หรือเล็กกว่า แต่ตอนนี้เมื่อฉันต้องล้างไฟล์ 8 GiB มันไม่ทำงานอีกต่อไป ดูเหมือนว่าจะไม่มีที่สิ้นสุดบน Mac ที่มี 4 GiB RAM และ 64-bit Windows 7 …

10
จะทราบเวอร์ชั่นของ CentOS ได้อย่างไร?
ฉันจะกำหนดเวอร์ชันของเซิร์ฟเวอร์ CentOS โดยไม่ต้องเข้าถึงส่วนต่อประสานกราฟิกใด ๆ ได้อย่างไร ฉันได้ลองหลายคำสั่งแล้ว: # cat /proc/version Linux version 2.6.18-128.el5 (mockbuild@hs20-bc1-7.build.redhat.com) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)) … # cat /etc/issue Red Hat Enterprise Linux Server release 5.3 (Tikanga) แต่อันไหนที่ถูกต้อง: 4.1.2-4 จาก/proc/versionหรือ 5.3 จาก/etc/issue?
125 centos  version 

5
จะเป็นตัวพิมพ์ใหญ่ของอาร์กิวเมนต์บรรทัดคำสั่งได้อย่างไร
ฉันค้นหาดังนั้นและพบว่าการใช้ตัวพิมพ์ใหญ่สตริงต่อไปนี้จะใช้งานได้ str="Some string" echo ${str^^} แต่ฉันพยายามทำสิ่งที่คล้ายกันในอาร์กิวเมนต์บรรทัดคำสั่งซึ่งทำให้ฉันมีข้อผิดพลาดดังต่อไปนี้ พยายาม #!/bin/bash ## Output echo ${1^^} ## line 3: ${1^^}: bad substitution echo {$1^^} ## No error, but output was still smaller case i.e. no effect เราจะทำสิ่งนี้ได้อย่างไร

6
โคลนความเป็นเจ้าของและการอนุญาตจากไฟล์อื่นหรือไม่
มีคำสั่งหรือการตั้งค่าสถานะเพื่อโคลนความเป็นเจ้าของผู้ใช้ / กลุ่มและการอนุญาตในไฟล์จากไฟล์อื่นหรือไม่? ที่จะทำให้ perms และความเป็นเจ้าของที่แน่นอนของไฟล์อื่นได้หรือไม่

5
Superblock, Inode, Dentry และไฟล์คืออะไร?
จากบทความกายวิภาคของระบบไฟล์ลินุกซ์โดยเอ็มทิมโจนส์ผมอ่านที่ลินุกซ์ทุกมุมมองระบบไฟล์จากมุมมองของชุดทั่วไปของวัตถุและวัตถุเหล่านี้เป็นซุปเปอร์บล๊อก , ไอโหนด , Dentryและไฟล์ แม้ว่าส่วนที่เหลือของย่อหน้าจะอธิบายข้างต้น แต่ฉันก็ไม่สบายใจกับคำอธิบายนั้น ใครสามารถอธิบายคำศัพท์เหล่านี้ให้ฉันได้บ้าง


11
Unix / Linux ยกเลิกการลบ / กู้คืนไฟล์ที่ถูกลบ
มีคำสั่งให้กู้คืน / ยกเลิกการลบไฟล์ที่ถูกลบrmหรือไม่ $ rm -rf /path/to/myfile ฉันจะกู้คืนได้myfileอย่างไร หากมีเครื่องมือดังกล่าวฉันจะใช้งานได้อย่างไร?

8
ทำไมต้องใช้ swap เมื่อมีพื้นที่ว่างใน RAM มากกว่าเพียงพอ
การใช้พื้นที่สว็อปแทน RAM อาจทำให้พีซีทำงานช้าลงอย่างมาก ดังนั้นทำไมเมื่อฉันมี RAM มากกว่าพอระบบ Linux (Arch) ของฉันจึงใช้ swap หรือไม่ ชำระเงินผลลัพธ์ของฉันด้านล่าง: และนี่อาจเป็นสาเหตุของปัญหาความเร็วและการตอบสนองของระบบที่ฉันมี ผลลัพธ์ของfree -m: $ free -m total used free shared buffers cached Mem: 1257 1004 252 0 51 778 -/+ buffers/cache: 174 1082 Swap: 502 144 357
124 performance  swap 

5
วิธีการเลือกชื่อไดเรกทอรีในขณะที่ไม่เปิดเผย
สมมติว่าฉันมีชื่อไฟล์ugly_name.tarซึ่งเมื่อแตกแล้วจะกลายเป็นugly_nameไดเรกทอรี ฉันสามารถใช้คำสั่งใดได้บ้างที่ชื่อไดเรกทอรีที่ได้คือpretty_nameอะไร
124 rename  tar 

3
การค้นหาไฟล์ขนาดใหญ่ทั้งหมดในระบบไฟล์รูท
ฉันมีเซิร์ฟเวอร์ linux ซึ่งปัจจุบันมีการใช้พื้นที่ด้านล่าง: /dev/sda3 20G 15G 4.2G 78% / /dev/sda6 68G 42G 23G 65% /u01 /dev/sda2 30G 7.4G 21G 27% /opt /dev/sda1 99M 19M 76M 20% /boot tmpfs 48G 8.2G 39G 18% /dev/shm อย่างที่เห็น. /อยู่ที่ 78% ฉันต้องการตรวจสอบว่าไฟล์หรือโฟลเดอร์ใดใช้พื้นที่ว่าง ฉันลองสิ่งนี้: find . -type d -size +100M ซึ่งแสดงผลลัพธ์แบบนี้: ./u01/app/june01.dbf ./u01/app/temp01.dbf ./u01/app/smprd501.dbf ./home/abhishek/centos.iso ./home/abhishek/filegroup128.jar …
124 find  disk-usage 

9
ออกเป็นกลุ่มเร็วขึ้น
ฉันใช้ Vim เป็นหลักในการแก้ไขอย่างรวดเร็วมากกว่าการทำงานที่ยาวนาน ในความรู้สึกที่ผมพบว่าลำดับแป้นพิมพ์สำหรับการเลิกสูบบุหรี่โดยเฉพาะอย่างยิ่งลำบาก: Esc, Shift+ ;, w, ,qEnter วิธีออกจาก Vim (อาจบันทึกเอกสาร) ด้วยการกดแป้นน้อยที่สุด? โดยเฉพาะจากโหมดแทรก

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

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