看完这篇图文我应该能保证读者在Linux系统下对文件的操做能跟用Windows环境下同样流畅吧,好了下面正文html
linux里共有如下几类文件,分别为目录(directory)、(普通)文件(file)、连接文件(link file)、块设备(block)、字符设备(character)、管道文件(pipe)、套接字文件(sockt),灰色标记文件可先忽略。linux
而后文件属性跟windows同样有最新修改时间、文件的大小、所属用户、所属组、文件的操做权限(读入、写入、执行)等,咱们能够用下面的命令查看当前目录下的文件的类型及文件属性。vim
ls -l
这是执行完上面的命令的结果,我从上往下从左到右分析下,分析点前面有 * 的是重点:windows
1. 首先最顶上的 total 20 ——总共20个文件的意思(包含了隐藏文件)less
*2. 下面第二行 -rw-r--r-- 这个参数得拆成 - ,rw- ,r-- ,r-- 这四组来看:spa
3. 而后就是上面这堆参数跟root之间的数字表明了这个文件相同索引编号的个数,通俗的讲就是有几种能够访问到它的路径,这个如今可忽略code
*4. 接下来就是这两个root ,第一个root表明这个文件的所属者是root,第二个root表明这个文件的所属组htm
*5. 第二个root后面跟着的的数字就是这个文件的大小,单位是字节(byte)blog
*6. 后面这个显而易见,是这个文件的修改时间,最后就是文件的名字索引
大概分析就是这些,其实文件类型从最后文件名的颜色一眼就能看出来,蓝色的就是目录,灰色的就是普通文件,浅蓝色的就是连接文件,还有压缩包是红色的,固然颜色不必定准确,由于文件颜色是能够在哪一个配置文件里更改的,不过通常不会去改颜色,我也就不说了。
基础知识普及完了,开讲命令了
1. cd 命令(change directory,切换工做路径),能够这么理解,它能够用来打开具体某个目录(文件夹),用法以下
cd /home
通常就是这么用,cd后面加路径,路径有相对路径和绝对路径之分。
2. pwd 命令(print working directory,打印出工做路径)cd命令的好搭档,做用是显示出当前路径
pwd
pwd 还有一个用法 pwd -p,这个用法是专门找连接文件指向的原文件用的,其余没了。
这两个命令就这些,不过提到路径,有几个特殊的路径要注意下:
3. touch命令,建立新的空文件,用法是touch后面加要创的文件名,以下面这个命令就是建立了一个名为test.txt的文件
touch test.txt
4. mkdir(make directory,建立新目录)命令,上面的命令是建立空文件,这个是建立新目录,以下面这个命令就是建立了叫test的目录
mkdir test
5. vi / vim 命令,建立完了文件该怎么写内容呢,这就用到了这两个文本编辑软件vi和vim,用法以下,vi / vim 后面加要编辑的文件(注意路径)
vim test.txt
不对,这个提的早了,那就先简单说下吧,输完上面这个命令会进入编辑界面,但你仍是无法编辑,得输入i 才能进入编辑模式左下角会有提示,以下图所示,这才能开始写东西
而后输完东西要退出来怎么办,先按esc键,再按shift+;输入wq回车才算保存退出,好了文本编辑就这些
6. mv (move,移动)命令,用来移动文件或目录,用法mv + 要移动的文件路径 + 目的路径,以下面这个命令就是把咱们以前在/home目录下建立的txt文件移动到/tmp下的test目录里
mv /home/test.txt /tmp/test
注:这个命令有许多独到之处,暂时先说下这个用处,对平常帮助还挺大,以下所示
mv /tmp/test.txt /home/a.conf
7. cp (cpoy,拷贝)命令,用来拷贝文件或目录,用法同mv命令,以下面这个命令就是把刚更名后的a.conf文件粘贴到了/tmp目录下
cp /home/a.conf /tmp
8. rm(remove,删除)命令,用来删除文件或目录,这是linux里最有杀伤力的命令,用法rm后面跟文件名,删目录的话加个 - r 选项能够把目录下的文件也都删了,加个 - f选项是强制执行的意思,以下面这个命令就能够把咱们以前的a.conf文件删了
rm /tmp/a.conf
注:这里得强调下,rm -rf /* 这个命令至关于rm -rf / 命令,结果都懂的,删库跑路,关键rm -rf /还会警告提醒,/*的话直接二话不说开始删东西,总之rm这个命令不经常使用因此灰色标记,慎用
9. cat 命令,用来查看文件内容,最经常使用的查看文本内容的命令,用法以下cat + 要查看的文件路径
cat /tmp/test.txt
以下图就是查看的结果,固然查看文件内容的命令还有more、less(more、less一页一页的显示,文件内容多的能够用这两个命令,配合pageup,和pagedn这两个功能键实现翻页)等不少,不一一介绍了,使用方法跟cat相似,能够本身尝试
10. ls (list,列举)命令,用来显示目录下的内容,也就是看文件夹下有哪些文件,用法是ls 后面跟要查看的目录的路径,以下面这个命令就是列出/tmp目录下的内容,-a 选项列出全部文件(包括隐藏文件),-l 选项列出文件的具体属性
ls -al /tmp
11. ln(link,连接)命令,建立连接文件,连接还分硬连接和软连接,通常咱们软连接用的比较多,这个内容如今还很差讲,就先暂时能够把它看成是建立Windows下的快捷方式来用,用法ln -s + 源文件 + 连接文件名,-s 选项就是建立软连接的意思,这个命令就是之后访问连接文件就能访问源文件,因此仍是挺经常使用的我不得不提下,如今知道怎么用就行,以下面这个命令就是建立一个叫test.lnk的连接文件指向test.txt文件,你能够cat /tmp/test.lnk查看下里面的内容,确定是跟test.txt同样的
ln -s /tmp/test.txt /tmp/test.lnk
12. chmod(change mode)命令,用来更改文件的属性(主要是改用户user、用户组group、访客other的权限),用法有下面两种
chmod u=rwx,g=rx,o=r test.txt
执行完后的结果以下图所示,可用ls -l text.txt 命令查看test.txt文件属性,检验下 结果是rwxr-xr-- 没问题
chmod 754 test.txt
第一位7对应user用户,7=4+2+1意味着user有读写执行的权限,后面5和4就对应group和other用户的权限,我比较倾向后面这种方法
可是这个命令有什么用呢,用处不少,有些程序或脚本是你写的,那给其余用户看你的脚本或程序没什么问题,但要是给他们写的权限,那万一他不当心改了,而后文件执行起来就出错了那就gg咯,还有可能你写脚本遇到了问题,你想找人帮助,可是文件是你建立的,默认别人没有写的权限那么就能够临时改个写的权限,还有许多诸如相似的状况因此特别重要这个chmod命令,固然还有chown(change owner)命令,chgrp(change group)命令改变文件所属用户和组的命令我以为暂时不会太用到,这两个可能放到用户和组里讲比较合适,对于用户和组如今就先提下,不作深刻
先是切换路径(cd和pwd),再是建立一个文件或目录(touch和mkdir),再是编辑文件的内容(vi和vim),再是编辑目录的内容有(cp和mv),再是查看文件或目录的内容(cat和ls),再是删除一个文件或目录(rm)对了,还有rmdir(rmdir)命令也能删除一个目录可是是空目录,因此没有用它的必要,由于rm都能作到它却不行(我是这么认为的,简单用下就好,用法跟rm同样),最后就是特殊的连接文件的建立(ln)还有(chmod)修改文件权限,总共13个命令,有这些命令,文件的基操应该没什么大问题了
忘了先提了,一个大前提,要对一个文件的属性得了如指掌,这是个大知识点,对之后文件上的操做颇有帮助,我要是文件属性没讲好的地方还望各位指出,有问题我会及时更正
原文出处:https://www.cnblogs.com/masterb/p/12384581.html