1.ls
ls -l 列出隐藏文件,并显示10项权限,类似如同下图
在部分发行版本的linux下,ll等同于ls -l
首先,第一列为-则代表着这一列是文件,
第一列为d则代表这一列为目录
除了第一位,那么其他还有9位,分为3组,每组都是交代3个权限,r:read,w:write,x:execute(执行权限)
第一组三位代表该文件/目录的owner对该文件的权限,
第二组的三位代表同用户组的其他成员对该文件的权限
第三组代表其他用户对该文件的权限
ls -a 列出所有文件,包括隐藏文件(有些以.开头的文件可能会被隐藏,比如.aliases,.vimrc)
ls -al 列出所有文件并显示十项权限
2.修改权限chmod
首先是被使用的chmod命令,修改文件的权限,具体的使用方法为
chmod 777 xxxx.txt
这三个7可以与上一个条目的命令ls -l结合起来,ls -l里有三组权限,而这边的三个7就分别对应这三个权限,第一个7代表owner(4®+2(w)+1(x)),第二个7代表同组其他成员的权限,第三7代表others
其他一些ch命令
chown 改变文件所有者,通常用于复制文件给别人
chgrp 改变文件所属组
设置默认权限使用umask, umask 002 代表设置权限是是chmod 775,umask后的3位每位代表被抽走的权限
chattr 代表赋予文件出了WRX之外额外的属性
chattr +a 赋予文件新的a权限:这个文件只能增加数据,不能删改数据,root用户才可以使用
chattr +i 让一个文件不能被增删改,不能被设置链接,root专属
chattr -i 移除文件本来设置好的i属性
除了rwx这三个权限,还有另外三个权限SUID,SGID,SBIT可以略作了解以作吹牛逼用
SUID仅对二进制程序有效,执行者对程序有X的执行权限(SUID不能用在SHELL脚本上,因为SHELL脚本不过将很多二进制文件调用执行罢了),SUID在使用ls -l之后可显示为s,
如【-rwsrwx—】
SGID与SUID类似,不过是应用于目录,用户在这个目录下创建的文件属于目录所在的组
SBIT代表用户在目录下有写入权限,并且用户建立的文件仅有自己和root用户有权修改
SUID:4,SGID:2,SBIT:1 配置这三个权限,可以chmod 6777,在原先的3位前面再加一位
3.cp
cp -l aa.txt ~ 会生成一个硬链接文件
cp -s aa.txt ~ 会生成一个符号链接,也就是快捷方式,会指向源文件
这边cp命令用到l和s两个参数,那就不得不提一下硬链接和符号链接的相关知识了:
每个文件都会占用一个inode,也就是区块,所谓的硬链接就是在目录下新建一个文件名同时链接到同一个inode。不管使用哪个不同的文件名,读取到的都是同一个inode下的数据。因此,当一个链接出现问题,不能读取inode的数据时,一般不会影响另一个链接的数据读取。硬链接不能跨文件系统,不能链接目录。
符号链接也就是快捷方式,是建立一个独立的文件,这个文件仅作指向作用,它指向另一个文件,当源文件被删除后,符号链接的文件就打不开了。这两个文件指向不同的inode。
制作链接的命令是ln
ln [-s] 源文件 目标文件 有s就是符号链接,无s就是硬链接
4.rm
rm -r 删除该目录下的所有子目录和文件
rm *.txt
rmdir 删除目录(注意只能删空目录,有东西要用rm -r)
5.mv
mv .aliases ~ 吧文件移动到home下
6.文件内容查看(纯文本文件)
cat/tac 从第一行/最后一行开始显示 tac是cat倒着写的
more/less 以页显示,more向后翻页,less向前翻页
head/tail 显示前/后几行的内容
nl 显示文件内容并显示行号,cat -n也可以显示行号
file 显示文件的类型
7.与目录/文件相关的一些命令
cd,mkdir,rmdir,pwd(显示当前位置)
touch 可以修改文件的时间属性,如果touch后的文件并不存在,则创建相应的空文件
which 用来查找命令文件如ls文件,touch文件
find 找普通文件,+name,找文件名,+size 【+size 50K】找比50K大的文件
+exec 代表找到后继续执行其他命令,find … -exec ls -s 代表找到文件后显示属性