ไฟล์ลินุกซ์และการจัดการไดเรกทอรี
เรารู้ว่าโครงสร้างไดเรกทอรีของลินุกซ์เป็นโครงสร้างด้านบนของไดเรกทอรีราก /
คุณสามารถติดไดเรกทอรีอื่น ๆ ด้วยการเพิ่มต้นไม้ให้คุณสามารถลบพวกเขาโดย unmounting
ก่อนที่จะเริ่มการกวดวิชานี้เราจำเป็นต้องรู้ว่าสิ่งที่เป็นเส้นทางที่แน่นอนและทางญาติ
- เส้นทางแน่นอน:
เขียนเส้นทางจากไดเรกทอรีราก / เขียนจากตัวอย่างเช่น: / usr / share / directory doc - เส้นทางสัมพันธ์:
เขียนเส้นทางไม่ได้โดย / เขียนจากตัวอย่างเช่น / usr / share / doc เพื่อไปที่ / usr / share / คนใต้ก็สามารถเขียนเป็น: CD ../man นี้เป็นเส้นทางที่ญาติเขียนมัน!
ไดเรกทอรีการประมวลผลคำสั่งที่พบบ่อย
ต่อไปเราจะดูที่ไดเรกทอรีการประมวลผลคำสั่งพื้นฐานหลายประการมัน
- LS: Directory รายการ
- CD: เปลี่ยนไดเรกทอรี
- รหัสผ่าน: แสดงไดเรกทอรีปัจจุบัน
- mkdir: สร้างไดเรกทอรีใหม่
- rmdir: ลบ directory ว่าง
- CP: คัดลอกไฟล์หรือไดเรกทอรี
- RM: ลบไฟล์หรือไดเรกทอรี
คุณสามารถใช้คนที่ [คำสั่ง] เพื่อดูเอกสารโดยใช้คำสั่งของแต่ละบุคคลเช่นคน CP
LS (directory รายการ)
ท่ามกลางระบบ Linux คำสั่ง LS น่าจะเป็นถูกเรียกใช้ที่พบมากที่สุด
ไวยากรณ์:
[root@www ~]# ls [-aAdfFhilnrRSt] 目录名称 [root@www ~]# ls [--color={never,auto,always}] 目录名称 [root@www ~]# ls [--full-time] 目录名称
ตัวเลือกและพารามิเตอร์:
- -a: (. ที่จุดเริ่มต้นของไฟล์) เอกสารทั้งหมดพร้อมกับไฟล์ที่ซ่อนอยู่มีการระบุไว้ร่วมกันเพื่อ (ธรรมดา)
- -d: รายชื่อเพียงไดเรกทอรีของตัวเองแทนรายการแฟ้มข้อมูลในสารบบ (ธรรมดา)
- -l: ข้อมูลแบบอนุกรมยาวออกรวมถึงแอตทริบิวต์แฟ้มและสิทธิ์และข้อมูลเพื่อ; (ธรรมดา)
ไฟล์ทั้งหมดที่อยู่ภายใต้ไดเรกทอรีบ้าน (รวมถึงไฟล์ที่ซ่อนและแอตทริบิวต์)
[root@www ~]# ls -al ~
CD (เปลี่ยนไดเรกทอรี)
cd เปลี่ยนไดเรกทอรีเป็นคำย่อซึ่งเป็นคำสั่งที่ใช้ในการเปลี่ยนไดเรกทอรีการทำงาน
ไวยากรณ์:
cd [相对路径或绝对路径]
#使用 mkdir 命令创建w3cschool.cc目录 [root@www ~]# mkdir w3cschool.cc #使用绝对路径切换到w3cschool.cc目录 [root@www ~]# cd /root/w3cschool.cc/ #使用相对路径切换到w3cschool.cc目录 [root@www ~]# cd ./w3cschool.cc/ # 表示回到自己的家目录,亦即是 /root 这个目录 [root@www w3cschool.cc]# cd ~ # 表示去到目前的上一级目录,亦即是 /root 的上一级目录的意思; [root@www ~]# cd ..
ไม่กี่ครั้งต่อไปที่คุณควรจะสามารถที่จะดำเนินการเกินความเข้าใจที่ดีของคำสั่ง cd
pwd (แสดงไดเรกทอรีปัจจุบันอาศัยอยู่)
พิมพ์รหัสผ่านไดเรกทอรีการทำงานเป็นตัวย่อซึ่งเป็นคำสั่งเพื่อแสดงไดเรกทอรีปัจจุบันคือ
[root@www ~]# pwd [-P] 选项与参数: -P :显示出确实的路径,而非使用连结 (link) 路径。 范例:单纯显示出目前的工作目录: [root@www ~]# pwd /root <== 显示出目录啦~ 范例:显示出实际的工作目录,而非连结档本身的目录名而已 [root@www ~]# cd /var/mail <==注意,/var/mail是一个连结档 [root@www mail]# pwd /var/mail <==列出目前的工作目录 [root@www mail]# pwd -P /var/spool/mail <==怎么回事?有没有加 -P 差很多~ [root@www mail]# ls -ld /var/mail lrwxrwxrwx 1 root root 10 Sep 4 17:54 /var/mail -> spool/mail # 看到这里应该知道为啥了吧?因为 /var/mail 是连结档,连结到 /var/spool/mail # 所以,加上 pwd -P 的选项后,会不以连结档的数据显示,而是显示正确的完整路径啊!
mkdir (สร้างไดเรกทอรีใหม่)
หากคุณต้องการที่จะสร้างไดเรกทอรีใหม่แล้วใช้ mkdir (ทำ directory) มัน
ไวยากรณ์:
mkdir [-mp] 目录名称
ตัวเลือกและพารามิเตอร์:
- -m: สิทธิโปรไฟล์ Oh! การกำหนดค่าโดยตรงคุณต้องดูค่าเริ่มต้นสิทธิ์ (umask) ใบหน้า ~
- -p ที่จะช่วยให้คุณโดยตรงไปยังไดเรกทอรีที่ต้องการ (รวมไดเรกทอรีแม่) ซ้ำสร้างมันขึ้นมา!
ตัวอย่าง: ไป tmp / ภายใต้ความพยายามหลายครั้งที่จะสร้างไดเรกทอรีใหม่จะดู:
[root@www ~]# cd /tmp [root@www tmp]# mkdir test <==创建一名为 test 的新目录 [root@www tmp]# mkdir test1/test2/test3/test4 mkdir: cannot create directory `test1/test2/test3/test4': No such file or directory <== 没办法直接创建此目录啊! [root@www tmp]# mkdir -p test1/test2/test3/test4
-P เพิ่มตัวเลือกนี้ช่วยให้คุณสามารถสร้างตัวเองหลายไดเรกทอรีของคุณ!
ตัวอย่าง: การสร้างสิทธิ์ rwx - X - X ไดเรกทอรี
[root@www tmp]# mkdir -m 711 test2 [root@www tmp]# ls -l drwxr-xr-x 3 root root 4096 Jul 18 12:50 test drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1 drwx--x--x 2 root root 4096 Jul 18 12:54 test2
สิทธิ์ส่วนข้างต้นถ้าคุณไม่ได้เพิ่ม -m จะบังคับให้คุณสมบัติการกำหนดค่าระบบใช้คุณลักษณะเริ่มต้น
ถ้าเราใช้ -m เช่นในตัวอย่างที่เราให้ -m 711 เพื่อให้ไดเรกทอรีใหม่ drwx - X - X สิทธิ์
rmdir (ลบไดเรกทอรีว่างเปล่า)
ไวยากรณ์:
rmdir [-p] 目录名称
ตัวเลือกและพารามิเตอร์:
- -p: ร่วมกันในไดเรกทอรี "ว่าง" นอกจากนี้ยังจะถูกลบออกไปด้วยกัน
ลบไดเรกทอรี w3cschool.cc
[root@www tmp]# rmdir w3cschool.cc/
ตัวอย่าง: ไดเรกทอรี mkdir จะถูกสร้างขึ้นในตัวอย่าง (tmp / ใต้) ลบออก!
[root@www tmp]# ls -l <==看看有多少目录存在? drwxr-xr-x 3 root root 4096 Jul 18 12:50 test drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1 drwx--x--x 2 root root 4096 Jul 18 12:54 test2 [root@www tmp]# rmdir test <==可直接删除掉,没问题 [root@www tmp]# rmdir test1 <==因为尚有内容,所以无法删除! rmdir: `test1': Directory not empty [root@www tmp]# rmdir -p test1/test2/test3/test4 [root@www tmp]# ls -l <==您看看,底下的输出中test与test1不见了! drwx--x--x 2 root root 4096 Jul 18 12:54 test2
ใช้ตัวเลือก P- ก็สามารถทันที test1 / test2 / test3 / test4 ลบ
แต่โปรดทราบว่า rmdir นี้เท่านั้นที่สามารถลบไดเรกทอรีว่างคุณสามารถใช้คำสั่ง RM เพื่อลบไดเรกทอรีที่ไม่ว่างเปล่า
CP (คัดลอกไฟล์หรือ directory)
ที่คัดลอกไฟล์และไดเรกทอรี CP
ไวยากรณ์:
[root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination) [root@www ~]# cp [options] source1 source2 source3 .... directory
ตัวเลือกและพารามิเตอร์:
เป็นรากคัดลอก .bashrc ภายใต้ไดเรกทอรีบ้าน / tmp และตั้งชื่อ bashr
[root@www ~]# cp ~/.bashrc /tmp/bashrc [root@www ~]# cp -i ~/.bashrc /tmp/bashrc cp: overwrite `/tmp/bashrc'? n <==n不覆盖,y为覆盖
RM (ลบไฟล์หรือไดเรกทอรี)
ไวยากรณ์:
rm [-fir] 文件或目录
ตัวเลือกและพารามิเตอร์:
- -f: กำลังจะหมายถึงการละเว้นไฟล์ไม่ได้อยู่ไม่มีข้อความเตือน;
- -i: โหมดโต้ตอบผู้ใช้จะถูกถามว่าจะลบก่อนที่จะดำเนินการ
- -R: recursive ลบ ah! ที่ใช้กันมากที่สุดในไดเรกทอรีที่ถูกลบ! นี้เป็นตัวเลือกที่อันตรายมาก! ! !
bashrc เพิ่งสร้างขึ้นในตัวอย่างของซีพีที่ถูกลบ!
[root@www tmp]# rm -i bashrc rm: remove regular file `bashrc'? y
ถ้าเราเพิ่มตัวเลือก -i จะใช้ความคิดริเริ่มที่จะถามโอ้คุณหลีกเลี่ยงการลบชื่อไฟล์ผิด!
MV (ย้ายไฟล์และไดเรกทอรีหรือปรับเปลี่ยนชื่อ)
ไวยากรณ์:
[root@www ~]# mv [-fiu] source destination [root@www ~]# mv [options] source1 source2 source3 .... directory
ตัวเลือกและพารามิเตอร์:
- -f: บังคับความรู้สึกบังคับถ้าแฟ้มเป้าหมายอยู่แล้วจะไม่ขออะไรและคุ้มครอง;
- -i: ถ้าแฟ้มปลายทาง (ปลายทาง) อยู่แล้วก็จะถามว่าจะเขียนทับ!
- -u: ถ้าแฟ้มปลายทางมีอยู่แล้วและแหล่งที่มาที่ค่อนข้างใหม่อัพเกรดเท่านั้น (ปรับปรุง)
คัดลอกไฟล์สร้างไดเรกทอรีย้ายไฟล์ไปยังไดเรกทอรี
[root@www ~]# cd /tmp [root@www tmp]# cp ~/.bashrc bashrc [root@www tmp]# mkdir mvtest [root@www tmp]# mv bashrc mvtest
จะย้ายไฟล์ไปยังไดเรกทอรีที่จะไปก็คือการทำเช่นนั้น!
ชื่อไดเรกทอรีเพียงแค่เปลี่ยนชื่อ mvtest2
[root@www tmp]# mv mvtest mvtest2
ลินุกซ์ดูเนื้อหาของแฟ้ม
ระบบ Linux ใช้คำสั่งต่อไปนี้เพื่อดูเนื้อหาของแฟ้ม:
- แมวจากบรรทัดแรกจะแสดงเนื้อหาของแฟ้ม
- Tac แสดงจากแถวสุดท้ายคุณสามารถดูแทคเป็นแมวที่เขียนไปข้างหลัง!
- แสดงเวลา NL, ใช้โอกาสที่จะหมายเลขบรรทัดส่งออก!
- เนื้อหาการแสดงไฟล์ขึ้นหน้าโดยหน้า
- ที่คล้ายกันน้อยมีมากขึ้น แต่ดีกว่ามากขึ้นเขาสามารถส่งพลิก!
- ดูไม่กี่บรรทัดแรกของหัว
- ดูที่หางเส้นหาง
คุณสามารถใช้คนที่ [คำสั่ง] เพื่อดูเอกสารโดยใช้คำสั่งของแต่ละบุคคลเช่นคน CP
แมว
จากบรรทัดแรกจะแสดงเนื้อหาของแฟ้ม
ไวยากรณ์:
cat [-AbEnTv]
ตัวเลือกและพารามิเตอร์:
- -A: ตัวเลือกการรวมเทียบเท่า -vET ซึ่งจะแสดงรายการตัวอักษรพิเศษบางอย่างแทนเพียงที่ว่าง;
- -b: แสดงหมายเลขบรรทัดหมายเลขบรรทัดจำนวนบรรทัดทำเฉพาะสำหรับการแสดงผลโฆษณาที่ไม่ว่างบรรทัดว่างไม่ได้ทำเครื่องหมาย!
- -E: ปลายของการแบ่งสายไบต์ $ แสดง;
- -n: พิมพ์หมายเลขบรรทัดพร้อมกับบรรทัดว่างจะมีหมายเลขบรรทัดและตัวเลือก -b จะแตกต่างกัน;
- -T: [Tab] ^ ปุ่มฉันจะแสดง;
- -v: รายชื่อบางส่วนไม่เห็นตัวอักษรพิเศษ
ดู / etc / ปัญหาเนื้อหาของไฟล์นี้:
[root@www ~]# cat /etc/issue CentOS release 6.4 (Final) Kernel \r on an \m
แทค
แทคที่มีคำสั่งแมวตรงกันข้ามเริ่มที่จะแสดงเนื้อหาของไฟล์จากบรรทัดสุดท้ายที่คุณสามารถดูแทคเป็นแมวที่เขียนไปข้างหลัง! เช่น:
[root@www ~]# tac /etc/issue Kernel \r on an \m CentOS release 6.4 (Final)
NL
แสดงหมายเลขบรรทัด
ไวยากรณ์:
nl [-bnw] 文件
ตัวเลือกและพารามิเตอร์:
- -b: ระบุจำนวนบรรทัดในลักษณะที่ระบุไว้มีสอง:
-ba: บ่งชี้ว่าหรือไม่บรรทัดว่างยังแสดงหมายเลขบรรทัด (คล้ายกับแมว -n);
-bt: หากมีสายที่ว่างเปล่าแถวที่ว่างเปล่าไม่แสดงหมายเลขบรรทัด (ค่าเริ่มต้น); - -n: แสดงวิธีเส้นจำนวนตัวแทนที่มีสาม:
LN -n: หมายเลขบรรทัดในซ้ายสุดของการแสดงผลหน้าจอ;
RN -n: หมายเลขบรรทัดในเขตของตัวเองในด้านขวาสุดของจอแสดงผลและไม่เพิ่ม 0;
RZ-n: หมายเลขบรรทัดในเขตของตัวเองในด้านขวาสุดของจอแสดงผลและเพิ่ม 0; - ฟิลด์หมายเลขบรรทัดของสถานที่ครอบครอง: -w
ตัวอย่างที่ 1: รายการ NL / etc / เนื้อหาปัญหา
[root@www ~]# nl /etc/issue 1 CentOS release 6.4 (Final) 2 Kernel \r on an \m
ขึ้น
พลิกจากหน้าไปยังหน้า
[root@www ~]# more /etc/man.config # # Generated automatically from man.conf.in by the # configure script. # # man.conf from man-1.6d ....(中间省略).... --More--(28%) <== 重点在这一行喔!你的光标也会在这里等待你的命令
ในกระบวนการของการใช้โปรแกรมมากขึ้นนี้, คุณจะต้องกดปุ่มไม่กี่:
- สเปซบาร์ (เว้นวรรค): ในนามของการเปิดลง
- Enter: ตัวแทนหันมา "สาย";
- / String: จอแสดงผลนี้แสดงเนื้อหาที่ลดลงการค้นหาสำหรับ "สตริง" คำหลัก;
- : F: แสดงชื่อไฟล์และจำนวนแถวแสดงอยู่ในปัจจุบันในครั้งเดียว;
- Q: ปล่อยตัวแทนทันทีไม่แสดงเนื้อหาของแฟ้ม
- B หรือ [Ctrl] -b: ตัวแทนกลับพลิก แต่การกระทำนี้จะมีประโยชน์สำหรับเอกสารในบรรทัดที่ไร้ประโยชน์
น้อยกว่า
พลิกจากหน้าไปยังหน้าเนื้อหาของตัวอย่างต่อไปนี้ /etc/man.config ไฟล์ที่ส่งออก:
[root@www ~]# less /etc/man.config # # Generated automatically from man.conf.in by the # configure script. # # man.conf from man-1.6d ....(中间省略).... : <== 这里可以等待你输入命令!
คำสั่งน้อยลงเวลาทำงานสามารถป้อนคือ:
- Spacebar: เลื่อนลงหนึ่ง;
- [PageDown]: เลื่อนลงหนึ่ง;
- [PageUp]: พลิกขึ้นหนึ่ง;
- / String: ค้นหาลง "สตริง" ฟังก์ชั่น;
- ? สตริง: Up ค้นหา "สตริง" ฟังก์ชั่น;
- N: ทำซ้ำการค้นหาก่อนหน้า (และ / หรือที่เกี่ยวข้อง ?!)
- N: ฤๅษีซ้ำการค้นหาก่อนหน้า (และ / หรือที่เกี่ยวข้อง ?!)
- Q: น้อยออกจากโปรแกรมนี้;
หัว
นำหน้าของเส้นไฟล์
ไวยากรณ์:
head [-n number] 文件
ตัวเลือกและพารามิเตอร์:
- -n: ตามด้วยหมายเลขที่แสดงถึงความหมายของการไม่กี่บรรทัดแสดง
[root@www ~]# head /etc/man.config
โดยค่าเริ่มต้นแถวหน้าจอแสดงผล 10! เพื่อแสดง 20 สายแรกที่คุณจะต้องเป็นเช่นนี้
[root@www ~]# head -n 20 /etc/man.config
หาง
นำไม่กี่บรรทัดต่อมาในแฟ้ม
ไวยากรณ์:
tail [-n number] 文件
ตัวเลือกและพารามิเตอร์:
- -n: ตามด้วยหมายเลขที่แสดงถึงความหมายของการไม่กี่บรรทัดแสดง
- -f: แสดงอย่างต่อเนื่องตรวจสอบการเชื่อมต่อหลังชื่อแฟ้มที่คุณต้องการที่จะรอจนกว่าจะกดปุ่ม [Ctrl] -c จะสิ้นสุดการตรวจจับหาง
[root@www ~]# tail /etc/man.config # 默认的情况中,显示最后的十行!若要显示最后的 20 行,就得要这样: [root@www ~]# tail -n 20 /etc/man.config