What the Waters Left Behind Trailer 2 (2018) Los Olvidados
สารบัญ:
- Linux
find
ไวยากรณ์คำสั่ง - ค้นหาไฟล์ตามชื่อ
- ค้นหาไฟล์ตามนามสกุล
- ค้นหาไฟล์ตามประเภท
- ค้นหาไฟล์ตามขนาด
- ค้นหาไฟล์ตามวันที่แก้ไข
- ค้นหาไฟล์ตามสิทธิ์
- ค้นหาไฟล์โดยเจ้าของ
- ค้นหาและลบไฟล์
- ข้อสรุป
คำสั่ง
find
เป็นหนึ่งในเครื่องมือที่ทรงพลังที่สุดในคลังข้อมูลผู้ดูแลระบบ Linux มันค้นหาไฟล์และไดเรกทอรีในลำดับชั้นของไดเรกทอรีขึ้นอยู่กับการแสดงออกของผู้ใช้ที่ได้รับและสามารถดำเนินการที่ผู้ใช้ระบุในแต่ละไฟล์ที่ตรงกัน
คุณสามารถใช้คำสั่ง
find
เพื่อค้นหาไฟล์และไดเรกทอรีตามสิทธิ์ประเภทวันที่ความเป็นเจ้าของขนาดและอื่น ๆ นอกจากนี้ยังสามารถใช้ร่วมกับเครื่องมืออื่น ๆ เช่น
grep
หรือ
sed
Linux
find
ไวยากรณ์คำสั่ง
ไวยากรณ์ทั่วไปสำหรับคำสั่ง
find
มีดังนี้:
find
- แอ็ตทริบิวต์
options
ควบคุมการจัดการลิงก์สัญลักษณ์ตัวเลือกการดีบักและวิธีการปรับให้เหมาะสมpath…
แอตทริบิวต์กำหนดไดเรกทอรีเริ่มต้นหรือไดเรกทอรีที่ค้นหาจะค้นหาไฟล์แอตทริบิวต์expression
ประกอบด้วยส่วนของตัวเลือกรูปแบบการค้นหาและ การกระทำคั่นด้วยตัวดำเนินการ
ในการค้นหาไฟล์ในไดเรกทอรีผู้ใช้ที่เรียกใช้คำสั่ง
find
จะต้องมีสิทธิ์อ่านในไดเรกทอรีนั้น
ลองมาดูตัวอย่างต่อไปนี้:
find -L /var/www -name "*.js"
- ตัวเลือก
-L
(ตัวเลือก) บอกให้คำสั่งfind
ทำตามลิงก์สัญลักษณ์/var/www
(เส้นทาง…) ระบุไดเรกทอรีที่จะค้นหา (นิพจน์)-name "*.js
บอกให้ค้นหาไฟล์ที่ลงท้ายด้วย.js
(ไฟล์ JavaScript)
ค้นหาไฟล์ตามชื่อ
การค้นหาไฟล์ตามชื่อน่าจะเป็นคำสั่ง
find
ใช้บ่อยที่สุด หากต้องการค้นหาไฟล์ตามชื่อให้ใช้ตัวเลือก
-name
ตามด้วยชื่อของไฟล์ที่คุณกำลังค้นหา
ตัวอย่างเช่นหากต้องการค้นหาไฟล์ชื่อ
document.pdf
ในไดเร็กทอรี
/home/linuxize
คุณจะใช้คำสั่งต่อไปนี้:
find /home/linuxize -type f -name document.pdf
หากต้องการรันการค้นหาแบบคำนึงถึงขนาดตัวพิมพ์ให้เปลี่ยนตัวเลือก
-name
ด้วย
-iname
:
find /home/linuxize -type f -iname document.pdf
คำสั่งด้านบนจะตรงกับ“ Document.pdf”, “ DOCUMENT.pdf”..etc
ค้นหาไฟล์ตามนามสกุล
การค้นหาไฟล์ตามนามสกุลนั้นเหมือนกับการค้นหาไฟล์ตามชื่อ ตัวอย่างเช่นหากต้องการค้นหาไฟล์ทั้งหมดที่ลงท้ายด้วย.
.log.gz
ภายใน
.log.gz
/var/log/nginx
คุณสามารถใช้:
find /var/log/nginx -type f -name '*.log.gz'
เป็นสิ่งสำคัญที่ต้องกล่าวถึงว่าเมื่อคุณใช้อักขระตัวแทนคุณต้องอ้างอิงรูปแบบหรือยกเว้นเครื่องหมายดอกจัน
*
ด้วยเครื่องหมายแบ็กสแลช
\
เพื่อไม่ให้เชลล์ตีความได้
หากต้องการค้นหาไฟล์ทั้งหมดที่ไม่ตรงกับ regex
*.log.gz
คุณสามารถใช้ตัวเลือก
*.log.gz
ตัวอย่างเช่นหากต้องการค้นหาไฟล์ทั้งหมดที่ไม่ได้ลงท้ายด้วย
*.log.gz
คุณจะต้องใช้:
find /var/log/nginx -type f -not -name '*.log.gz'
ค้นหาไฟล์ตามประเภท
บางครั้งคุณอาจต้องค้นหาไฟล์บางประเภทเช่นไฟล์ปกติไดเรกทอรีหรือ symlink ใน Linux ทุกอย่างเป็นไฟล์
ในการค้นหาไฟล์ตามประเภทของไฟล์ให้ใช้ตัวเลือก
-type
และเลือกหนึ่งตัวให้คำอธิบายต่อไปนี้เพื่อระบุประเภทไฟล์:
-
f
: ไฟล์ปกติd
: ไดเรกทอรีl
: ลิงก์สัญลักษณ์c
: อุปกรณ์อักขระb
: อุปกรณ์บล็อกp
: ชื่อไปป์ (FIFO)s
: ซ็อกเก็ต
ตัวอย่างเช่นหากต้องการค้นหาไดเรกทอรีทั้งหมดในไดเรกทอรีการทำงานปัจจุบันคุณจะต้องใช้:
find. -type d
ตัวอย่างทั่วไปจะเปลี่ยนการอนุญาตไฟล์เว็บไซต์ซ้ำเป็น
644
และการอนุญาตไดเรกทอรีเป็น
755
โดยใช้คำสั่ง
chmod
:
find /var/www/my_website -type d -exec chmod 0755 {} ;
find /var/www/my_website -type f -exec chmod 0644 {} ;
ค้นหาไฟล์ตามขนาด
ในการค้นหาไฟล์ตามขนาดไฟล์ให้ผ่านพารามิเตอร์
-size
พร้อมกับเกณฑ์ขนาด คุณสามารถใช้คำต่อท้ายต่อไปนี้เพื่อระบุขนาดไฟล์:
-
b
: บล็อก 512- ไบต์ (ค่าเริ่มต้น)c
: ไบต์w
: คำสองไบต์k
: KilobytesM
: เมกะไบต์G
: กิกะไบต์
คำสั่งต่อไปนี้จะค้นหาไฟล์ทั้งหมดที่
1024
ไบต์ภายในไดเร็กทอรี
/tmp
:
find /tmp -type f -size 1024c
คำสั่ง
find
ยังอนุญาตให้คุณค้นหาไฟล์ที่มีขนาดใหญ่กว่าหรือน้อยกว่าขนาดที่ระบุ
ในตัวอย่างต่อไปนี้เรากำลังค้นหาไฟล์ทั้งหมดที่น้อยกว่า
1MB
ภายในไดเรกทอรีการทำงานปัจจุบัน สังเกตุเครื่องหมายลบ
-
หน้าค่าขนาด:
find. -type f -size -1M
find. -type f -size +1M
คุณสามารถค้นหาไฟล์ภายในขนาดที่กำหนดได้ คำสั่งต่อไปนี้จะค้นหาไฟล์ทั้งหมดระหว่าง
1
ถึง
2MB
:
find. -type f -size +1M -size 21M
ค้นหาไฟล์ตามวันที่แก้ไข
คำสั่ง
find
ยังสามารถค้นหาไฟล์ตามการปรับเปลี่ยนการเข้าถึงหรือการเปลี่ยนแปลงครั้งล่าสุด
เช่นเดียวกับเมื่อค้นหาตามขนาดใช้สัญลักษณ์บวกและลบสำหรับ "มากกว่า" หรือ "น้อยกว่า"
สมมติว่าไม่กี่วันที่ผ่านมาคุณแก้ไขไฟล์กำหนดค่า dovecot ไฟล์ใดไฟล์หนึ่ง แต่คุณลืมไฟล์ใดไฟล์หนึ่ง คุณสามารถกรองไฟล์ทั้งหมดได้อย่างง่ายดายภายใต้ไดเรกทอรี
/etc/dovecot/conf.d
ที่ลงท้ายด้วย.
.conf
และได้รับการแก้ไขในห้าวันที่ผ่านมาด้วย:
find /etc/dovecot/conf.d -name "*.conf" -mtime 5
นี่เป็นอีกตัวอย่างของการกรองไฟล์ตามวันที่แก้ไขโดยใช้ตัวเลือก
-daystart
คำสั่งด้านล่างจะแสดงรายการไฟล์ทั้งหมดใน
/home
directory ที่ถูกแก้ไข
30
วันขึ้นไป:
find /home -mtime +30 -daystart
ค้นหาไฟล์ตามสิทธิ์
ตัวเลือก
-perm
อนุญาตให้คุณค้นหาไฟล์ตามการอนุญาตของไฟล์
ตัวอย่างเช่นหากต้องการค้นหาไฟล์ทั้งหมดที่มีสิทธิ์
775
เท่าในไดเรกทอรี
/var/www/html
คุณจะต้องใช้:
find /var/www/html -perm 644
คุณสามารถใส่คำนำหน้าโหมดตัวเลขด้วยเครื่องหมายลบ
-
หรือเครื่องหมายสแลช
/
เมื่อ slash
/
ใช้เป็นคำนำหน้าอย่างน้อยหนึ่งหมวดหมู่ (ผู้ใช้กลุ่มหรืออื่น ๆ) จะต้องมีบิตที่เกี่ยวข้องอย่างน้อยตั้งค่าสำหรับไฟล์ให้ตรงกัน
พิจารณาคำสั่งตัวอย่างต่อไปนี้:
find. -perm /444
คำสั่งดังกล่าวจะจับคู่ไฟล์ทั้งหมดที่มีสิทธิ์การอ่านที่กำหนดไว้สำหรับผู้ใช้กลุ่มหรืออื่น ๆ
หากลบ
-
จะใช้เป็นคำนำหน้าจากนั้นสำหรับไฟล์เพื่อให้ตรงกับอย่างน้อยบิตที่ระบุจะต้องตั้งค่า คำสั่งต่อไปนี้จะค้นหาไฟล์ที่มีการอ่านและเขียนสิทธิ์สำหรับเจ้าของและกลุ่มและผู้ใช้รายอื่นสามารถอ่านได้:
ค้นหาไฟล์โดยเจ้าของ
ในการค้นหาไฟล์ของผู้ใช้หรือกลุ่มเฉพาะให้ใช้ตัวเลือก
-group
และ
-group
ตัวอย่างเช่นหากต้องการค้นหาไฟล์และไดเรกทอรีทั้งหมดที่
linuxize
ผู้ใช้เป็นเจ้าของคุณจะเรียกใช้:
find / -user linuxize
นี่คือตัวอย่างจริงของโลก สมมติว่าคุณต้องการค้นหาไฟล์ทั้งหมดที่เป็นของผู้ใช้
www-data
และเปลี่ยนความเป็นเจ้าของของไฟล์ที่จับคู่จาก
www-data
เป็น
nginx
:
find / -user www-data -type f -exec chown nginx {} ;
ค้นหาและลบไฟล์
หากต้องการลบไฟล์ที่ตรงกันทั้งหมดให้เพิ่มตัวเลือก
-delete
ต่อท้ายนิพจน์การจับคู่
ตรวจสอบให้แน่ใจว่าคุณใช้ตัวเลือกนี้เฉพาะเมื่อคุณมั่นใจว่าผลลัพธ์ตรงกับไฟล์ที่คุณต้องการลบ เป็นความคิดที่ดีที่จะพิมพ์ไฟล์ที่ตรงกันก่อนที่จะใช้ตัวเลือก
-delete
ตัวอย่างเช่นการลบไฟล์ทั้งหมดที่ลงท้ายด้วย.
.temp
จาก
/var/log/
คุณจะใช้:
find /var/log/ -name `*.temp` -delete
ใช้ตัวเลือก
-delete
ด้วยความระมัดระวังอย่างยิ่ง บรรทัดคำสั่ง find ถูกประเมินเป็นนิพจน์และหากคุณเพิ่มตัวเลือก
-delete
ก่อนคำสั่งจะลบทุกอย่างด้านล่างจุดเริ่มต้นที่คุณระบุ
เมื่อมาถึงไดเร็กทอรี
find
สามารถลบเฉพาะไดเร็กทอรีที่ว่างเปล่าเช่นเดียวกับ
rmdir
ข้อสรุป
เราได้แสดงวิธีใช้คำสั่ง
find
พร้อมตัวเลือกและเกณฑ์ที่หลากหลาย
บทความนี้ควรให้ความเข้าใจพื้นฐานเกี่ยวกับวิธีการค้นหาไฟล์บนระบบ Linux ของคุณ นอกจากนี้คุณยังสามารถเยี่ยมชมหน้าคนค้นหาและอ่านเกี่ยวกับตัวเลือกที่มีประสิทธิภาพอื่น ๆ ของคำสั่ง
find
Linux Foundation กำลังพยายามที่จะทำให้ผู้ใช้ขั้นปลายของ Linux "end-end" มีส่วนร่วมมากขึ้นในการพัฒนาเคอร์เนล

Linux Foundation กำลังเตรียมงาน Summit User Summit ครั้งแรกในกรุง New York ในวันจันทร์ที่ผ่านมาเพื่อพยายามให้นักพัฒนาเคอร์เนล Linux ได้ติดต่อกับผู้ใช้ที่สถาบันวอลล์สตรีทและ บริษัท ใหญ่อื่น ๆ
ด้วยการกระจาย Linux ที่ยอดเยี่ยมในปัจจุบันนี้คุณสามารถมุ่งเน้นเฉพาะบางส่วนที่ครองพาดหัวข่าวเช่น Ubuntu Linux, Linux Mint, Fedora และ Mageia ลินุกซ์เพื่อชื่อเพียงไม่กี่

การสแกน DistroWatch เป็นวิธีที่ดีในการสร้างมุมมองที่สมบูรณ์แบบให้เต็มไปด้วยรายละเอียดและประกาศเกี่ยวกับคนอื่น ๆ นับไม่ถ้วนที่ออกไปที่นั่น แต่ทุกครั้งที่มีการกระโดดออกจากข่าวเป็น โดยเฉพาะอย่างยิ่งที่น่าสนใจ
วิธีเพิ่ม ram ใน windows โดยใช้บรรทัดคำสั่ง

เคยต้องการที่จะเพิ่ม RAM ใน Windows โดยไม่ใช้อะไรนอกจากบรรทัดคำสั่งหรือไม่ นี่คือวิธีที่คุณสามารถทำได้ด้วยแอปเล็ก ๆ น้อย ๆ ที่ยอดเยี่ยม