一、Linux 文件
根据上文Linux 文件说明
1.文件的rwx
d开头表示文件夹,
-开头的表示文件,
l开头表示链接文件
r:read,w:write,x:execute
三部分分别表示
文件所有者的权限、所属组的权限、其他人的权限
2.链接数
3.所有者
4.所属组
5.文件大小
6.文件的创建或修改时间
7.文件的名称
二、文件处理命令
命令:touch
语法:touch[文件名]
描述:创建一个空文件
命令:mkdir
语法:mkdir [-p] [文件夹名称]
描述:[递归]创建文件夹
命令:cp(copy)
语法:cp [源文件][目标文件]
cp -r [源目录][目标目录]
描述:复制文件或目录
命令:rm(remove)
语法:rm -f [文件]
rm -r [目录]
rm -rf [目录,包含目录下的内容]
描述:删除文件或目录
命令:cat
语法:cat [文件名称]
描述:查看文件内容(内容过多,显示内容可能不全)
命令:more
语法:more [文件名称]
描述:查看文件内容,可完全显示
用法:使用空格进行法爷,回车显示下一行,q退出(或者ctrl+c)
命令:head
语法:head -number [文件名]
描述:查看文件的前多少行
命令:tail
语法:tail -number [文件名]
描述:查看文件的后多少行
mv 1 修改文件名称的功能:mv [源文件名][新文件名]
2 移动文件位置:mv [源文件名称][新文件位置+新文件名称]
命令:ln(link)
语法:ln -s [源文件][目标文件](硬连接则不需要加-s选项)
描述:创建软连接文件
软连接的特点:权限是所有人都可以访问,并且软连接指向源文件,就类型win的快捷方式
硬链接的特点:cp源文件,两个文件是同步修改的
另外:硬链接是不可以跨文件系统分区的,而软连接可以。
命令:chmod
语法:chmod[{ugo}{+-=}{rwx}][文件或目录]
chmod[mode=421][文件或目录]
421分别表示rwx,4+2+1 = 7
描述:改变文件或目录的权限
形如:chmod g+w filename
形如:chmod 761 filename
问题示例:新建一个目录,下面一个文件,用普通用户删除文件
尝试:在root下将文件的权限设置成777然后用普通用户删除文件
尝试:在root下将文件夹的权限设置成777然后用普通用户删除文件
结论:文件夹的写权限表示能否删除文件夹下的文件
文件的写权限表示能否编辑文件,不代表能否删除文件
文件的rwx权限
r:可执行catch、more等读操作
w:修改文件的内容等写操作,单不代表可以把这个文件删除
x:对文件进行执行操作
文件夹的rwx权限
r:刻度操作,可以列出目录的内容,比如ls命令。
w:表示可以在目录下创建或者删除文件的权限
x:表示可以进入这个目录(基本上所有目录都会有rx权限)
root用户切换到普通用户是不需要输入密码的
普通用户切换到root要密码
普通用户之间切换要密码
命令:chown
语法:chown user 文件
描述:改变文件的所有者
实例:chown newuser t1.sh
useradd username 添加用户
passwd username 为用户设置密码
命令:chgrp
语法:chgrp group 文件
描述:改变文件的所属组
示例:chgrp adm t1.sh
查看系统默认的权限:umask -S(umask查看权限掩码值022 使用777-022得到真实权限
命令:find
语法:find[搜索方位路径] [文件名] (根据文件名查找)
find[搜索范围路径] -size [+-文件大小] (根据文件大小查找,大于+小于-)
find[搜索范围路径] -user (文件所有者)
[以天为单位] 1 ctime、atime、mtime
[以分钟为单位] 2 cmin、amin、mmin
c:表示文件属性发生变更
a:表示被访问过(比如被查看过)
m:表示内容被修改过
如 find /usr -ctime -1 表示24小时以内文件属性发生变化
描述:查找任何文件或者目录
* 匹配任意字符
?匹配一个字符
1k = 2block
find应用的逻辑连接
-a(and的意思,逻辑与)
-o(or的意思,逻辑或)
示例:find -size +12345 -a -size -22345
find查找:根据文件类型查找
-type
f表示二进制文件,l表示软连接文件d表示目录
示例:find /test -type d
命令:which
语法:which [命令名称]
描述:查看命令所在目录位置
在linux中一般只有两种命令,一是所有用户都可使用,二则是指允许管理员使用,还有whereis和which类似
示例:which rm
alias别名的意思,
m就能使用源命令,而不是别名,也就是不询问直接删除
对找到的文件执行某个命令:find /test -name a.txt -exec rm -f {} ;
{}表示查询到的结果集(-exec换成-ok也可以)
find -inum [i节点号] 根据i节点查找文件,在linux系统中,所有的文件都有一个唯一的标识,方便linux内核去调用,这就是i节点
命令:locate
语法:locate [文件名]
描述:查找文件,根据linux数据库内部的索引(updatedb命令,可以手工更新updatedb数据库,一般和locate配合使用)
注意:locate的查找速度非常快,比find查找快得很多,原因是locate找的是linux系统构建的文件数据库的索引值,所以速度非常快,但是有的时候新创建的文件使用locate命令差查不到,原因是这个文件索引没有马上更新到linux系统文件数据库里。
帮助手册命令
命令:man
语法:man [命令或者配置文件]
描述:帮助命令,非常有用,可以获得命令的帮助文档,如何使用等。
命令:whatis
语法:whatis [命令]
描述:查看命令的描述
命令:--help
语法:[命令] --help
描述:查看命令的选项用法
压缩解压缩命令
命令:zip
语法:zip 选项[-r][压缩后的文件名称][源文件]
描述:zip格式是window和linux通用的格式,可以压缩文件和目录,压缩目录是需要选项 -r
命令:unzip
语法:unzip [解压缩的文件]
描述:进行解压缩
最后配置加-d 表示文件加压后存放的路径
命令:tar [zcvf|zxvf] [打包文件名.tar.gz] [源文件]
-c 产生tar打包文件(必选)
-x 尝试的解压缩文件 (必选)
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
描述:打包目录生成的后缀名.tar.gz,或者进行解压最后配置加-C表示文件解压后配置的路径
file命令可以查看任何文件的类型
关机:shutdown -h now
重启:reboot
ctrl+l 清屏
ctrl+c 退出应用
过滤:grep,可以对指定内容进行过滤然后输出
管道:将一个命令的输出传送给另一个命令,作为另外一个命令的输入,管道可以连接N个命令
ls -l /etc|more (表示将ls -l/etc的输出单做more命令的数据,即more命令浏览的内容是前面命令的输出结果)
ls -l /etc|grep init(表示将ls -l /etc 的输出结果进行过滤,显示为init的结果)
ls -1 /etc|grep init|wc -l(最后进行统计显示的个数)
逻辑与(&&)
形如:ls&&pwd(第一个命令执行成功,第二个命令才会执行)
逻辑或(||)
形如 ls || pwd (第一个命令执行成功则第二个不执行;第一个执行失败则执行第二个)
输出重定向
shell对每个进程预定义3个文件描述字(0,1,2)
0(stdin)标准输入 1(stdout)标准输出 2(stderr)标准错误输出
输出重定向:就是把输出的结果显示到一个文件上(>表示输出重定向,>> 表示追加内容)
ls -l /etc > /usr/a.log 覆盖
ls -l /etc >> /usr/a.log 追加
输入重定向:就是把输入的信息重定向,比如吧文件里的内容进行输出
wall < /test/a.log
错误重定向:一般是把程序执行的错误日志信息放到指定的log文件中
ll /adasdfdsf 2> /test/b.log