1.文件处理命令
1.1.命令格式与目录处理命令ls
命令格式:命令 [-选项][参数]
例:ls -la /etc
说明:
- 个别命令使用不遵循此格式;
- 当有多个选项时,可以写在一起;
- 简化选项与完整选项-a等于-all;
例:
ls -a 可以查看有没有隐藏文件
ls -l 查询文件获取详细信息
-rw-r--r-- 1 root root 7 Mar 19 01:48 bin->usr/bin
第一部分-rw-r--r--(第一个字符可以是-,d,l。-说明是文件,d说明是目录, l说明是软链接)(rw- 说明所有者有读和写的权限)(r--说明所属组有读的权限)(r--其他人有读的权限)
第二部分是文件基数,第三部分说明文件所有者,第四部分说明文件所属组,第五部分说明文件大小,第六部分说明文件创建或修改日期,第七部分说的是文件名。
ls -d 查询指定目录的详细信息
ls -h (人性化显示)
ls -i 查询任何一个文件的i结点
小结: ls, -a, -l, -d, -h, -i
1.2目录处理命令
mkdir 用来创建新目录
mkdir /tmp/China :在tmp目录下创建一个名为China的目录
mkdir /tmp/America/City :假如目录America是没有的,那么这条命令是不可行的。
mkdir -p /tmp/America/City 假如目录America是没有的,加入-p选项后,那么这条命令是可行的。-p代表递归创建。
cd 用来切换目录
pwd 显示当前所在当前目录的绝对路径
. 代表当前目录
cd .. 代表回到当前目录的上一级目录
rmdir 只能删除一个空目录(比较呆)
cp 复制一个文件
cp -r 复制一个目录
cp -p 复制一个文件或目录保持其属性
mv 剪切或者给一个文件改名
rm 删除文件
rm -r 删除目录
rm -f 删除目录不需要询问,强制删除。
小结:mkdir, mkdir -p, cd, pwd, cd .. , rmdir, cp, cp -r, cp -p, mv, rm, rm -r, rm -f
1.3文件处理命令
touch 创建一个文件
cat 查看一个文件,但是不能翻页
cat -n 7 查看一个文件的前7行 (如果没有-n 默认是10行)
tac 倒着查看一个文件
tac -n 7倒着查看一个文件的末尾7行(如果没有-n 默认是10行)
more 查看一个文件 (可以用enter换行,按f键或者空格键向下翻页,不可以上翻喔)
less 查看一个文件 (可以用enter换行,按f键或者空格键向下翻页,可以按PgUp键上翻喔 再查找的时候要查找某个关键词可以用 /关键词 可以将关键字反白显示)
head 查看一个文件的前几行,默认是10行。
head -n -7 查看一个文件的前7行
tail 查看一个文件的后几行,默认是10行
head -n -7 查看一个文件的后7行
tail -f 查看一个文件的动态变化
小结:touch, cat, cat -n, tac, tac -n, more, less, head, head -n, tail, tail -n, tail -f
1.4链接命令
ln -s [原文件][目标文件]
软链接特征:类似于Windows快捷方式
- lrwxrwxrwx 软链接文件权限都为rwxrwxrwx
- 文件大小-只是符号链接
- /tmp/issue.soft->/etc/issue
ln [原文件][目标文件]
硬链接特征:
1.拷贝cp-p+同步更新
echo "www.lampbrother.net" >> /etc/issue
2.通过i节点识别
3.不能跨分区
4.不能针对目录使用
范例
- ln -s /etc/issue /tmp/issue.soft
- ln /etc/issue /tmp/issue.hard
小结:ln -s
2.权限管理命令
2.1权限管理命令chmod
方法一:chmod [{ugoa} {+-=} {rwx}] [文件或目录]
u:所有者
g:所属组
o:其他人
a:所有人
范例:
- chmod u+r issue.hard
- chmod u=rwx issue.hard
方法二:权限用数字表示: r-----4 w-----2 x------1
范例:rwxrwxrw- 776
chmod 640 issue.hard (就改成了rw-r-----)
chmod 777 issue.hard (就改成了rwxrwxrwx)
chmod -R 777 /tmp/a (可以将这个目录以及目录下所有的文件的权限都改成了rwx
-R是递归修改)
补充:通过useradd添加普通用户,passwd修改密码;
文件目录权限总结
代表字符 权限 对文件的含义 对目录的含义
r 读权限 可以查看文件内容 可以列出目录中的内容
w 写权限 可以修改文件内容 可以在目录中创建、删除文件
x 执行权限 可以执行文件 可以进入目录
小结:chmod 640 /tmp/issue.hard, chmod -R 777 /tmp/a
2.2其他权限管理命令
chown
chgrp
umask
3.文件搜索命令
3.1文件搜索命令find
find的功能描述:文件搜索
find [搜索范围][匹配条件]
注意点:不在服务器高峰期使用find查找,搜索的范围越小越好。
因为find查找是遍历硬盘,或者是分区,亦或是目录,
所以查找速度有点慢,但是是实时查找。
例子:
find /etc -name init
find /etc -name init*
find /etc -name * init *
find /etc -name init???
find /etc -iname init???
补充:Linux是用数据块来存储数据的,一个数据块是0.5MB,等于0.5k。
所以如果是100MB的文件,那么应该是100*1024*2=204800.
find /etc -size +n
find /etc -size -n
find /etc -size n
find /etc -size +204800 发现大于100MB的文件
find /home -user shenchao 查找shenchao这个所有者在/home目录下的所有文件。
补充:
-amin 访问时间 access
-cmin 文件属性 change
-mmin 文件内容 modify
-a 两个条件同时满足 (and)
-o 两个条件任意满足一个(or)
-type (f代表文件 d代表目录 l软链接文件)
-inum 根据i节点查找
-exec/-ok{}\;对搜索结果执行操作,而-ok与-exec的区别就在于,-ok会询问确认。
ls -i 查询i节点
find /etc -cmin -5
在/etc目录下查找5分钟以内文件属性改变过的文件。
find /etc -size +163840 -a -size -204800
在/etc下查找大于80MB小于100MB的文件。
find /etc -name inittab -exec ls -l {}\;
在etc下查找inittab文件并显示其详细信息。
find /etc -inum 31531 -exec rm {}\;
当文件名字奇形怪状的时候,可根据i节点来操作。
小结:find -name, find -iname, * , ?, -size, +, - ,-user ,-group, -amin, -cmin, -mmin, -type ,f, d , l, -inum, -a, -o, -exec/-ok{}\;
3.2其他文件搜索命令locate,which, whereis,grep等
locate是建立一个文件资料库,并定期更新,所以其查找文件较快。其缺点是:倘若新建一个文件,但是并没有收录到文件资料库中,那么用locate将搜索不到,此时可以手动更新文件资料库(updatedb),但是如果新建文件在/tmp临时文件下,那么locate将搜索不到。
尝试输入以下命令并发现不同:
- touch /root/yangmi
- locate yangmi
- find /root -name yangmi
- updatedb yangmi
locate yangmi
touch /tmp/zhangbozhi
- updatedb
locate zhangbozhi
touch /root/Teacher.Cang
- updatedb
- locate teacher.cang
- locate -i teacher.cang