备注以操作系统centos6为例
1.查看目录下有什么文件/目录
> ls //list列出目录的文件信息
> ls -l 或ll //list -list以“详细信息”查看目录文件
> ls -a //list -all查看目录“全部”(包括隐藏文件)文件
> ls -al //list -all list 查看目录“全部”(包括隐藏文件)文件,以“详细信息”展示
> ls 目录 //查看指定目录下有什么文件
> ls -i //查看文件索引号码
2.进行目录切换
> cd dirname //进行目录切换
> cd .. //向上级目录切换
3.查看完整的操作位置
> pwd
4.用户切换
> su - 或 su - root //向root用户切换
> exit //退回到原用户
> su 用户名 //普通用户切换
多次使用su指令,会造成用户的“叠加”: (su和exit最好匹配使用)
5.查看当前用户是谁
> whoami
6. 查看一个指令对应的执行程序文件在哪
> which 指令
7. 目录相关操作
1) 创建目录 make directory
> mkdir 目录名字
> mkdir -p newdir/newdir/newdir //递归方式创建多个连续目录
//新的多级目录数目如果大于等于2个,就要使用-p参数
mkdir dir/newdir //不用-p参数
mkdir -p dir/newdir/newdir //使用-p参数
mkdir -p newdir/newdir/newdir //使用-p参数
2) 移动目录(文件和目录) move
> mv dir1 dir2 //把dir1移动到dir2目录下
> mv dir1/dir2 dir3 //把dir2移动到dir3目录下
> mv dir1/dir2 dir3/dir4 //把dir2移动到dir4目录下
> mv dir1/dir2 ./ //把dir2移动到当前目录下
3) 改名字 (文件和目录)
> mv dir1 newdir //修改dir1的名字为newdir
mv是“移动” 和 “改名字” 合并的指令
> mv dir1 ./newdir //dir1移动到当前目录下 并改名字为newdir
> mv dir1/dir2 dir3 //dir2移动到dir3目录下, 并改名字为“原名”
> mv dir1/dir2 dir3/newdir //dir2移动到dir3目录下,并改名字为“newdir”
> mv dir1/dir2 dir3/dir4 //dir2移动到dir4目录下, 并改名字为“原名”
> mv dir1/dir2 dir3/dir4/newdir //dir2移动到dir4目录下, 并改名字为“newdir”
4) 复制(改名字)(文件和目录) copy
① 文件的复制
> cp file1 dir/newfile2 //file1被复制一份到dir目录下,并改名字为“newfile2”
> cp file1 dir //file1被复制一份到dir目录下,并改名字为“原名”
> cp dir1/filea dir2/newfile //filea被复制一份到dir2目录下,并改名字为“newfile”
② 目录的复制(需要设置-r[recursive递归]参数,无视目录的层次)
> cp -r dir1 dir2 //dir1被复制到dir2目录下,并改名字为"原名"
> cp -r dir1/dir2 dir3/newdir //dir2被复制到dir3目录下,并改名字为"newdir"
> cp -r dir1/dir2 dir3/dir4 //dir2被复制到dir4目录下,并改名字为"原名"
> cp -r dir1/dir2 dir3/dir4/newdir //dir2被复制到dir4目录下,并改名字为"newdir"
> cp -r dir1 ../../newdir //dir1被复制到上两级目录下,并改名字为"newdir"
⑤ 删除(文件和目录)remove
> rm 文件
> rm -r 目录 //-r[recursive递归]递归方式删除目录
> rm -rf 文件/目录 //-r force 递归强制方式删除文件
force强制,不需要额外的提示
8.文件操作
1) 查看文件内容
> cat filename //打印文件内容到输出终端
> more filename //通过敲回车方式逐行查看文件的各个行内容
//默认从第一行开始查看
//不支持回看
//q 退出查看
> less //通过“上下左右”键查看文件的各个部分内容
//支持回看
//q 退出查看
> head -n filename //查看文件的前n行内容
> tail -n filename //查看文件的最末尾n行内容
> tail -f logfile 动态跟踪日志文件logfile,最初的时候打印文件的最后10行内容。
> wc filename //查看文件的行数
2) 创建文件
> touch dir1/filename
> touch filename
3) 给文件追加内容
> echo 内容 > 文件名称 //把“内容”以[覆盖写]方式追加给“文件”
> echo 内容 >> 文件名称 //把“内容”以[追加]形式写给“文件”(如果文件不存在会创建文件)
9. 用户操作
配置文件:/etc/passwd
1) 创建用户 user add
> useradd
> useradd liming //创建liming用户,同时会创建一个同名的组出来
> useradd -g 组别编号 username //把用户的组别设置好,避免创建同名的组出来
> useradd -g 组编号 -u 用户编号 -d 家目录 username
2) 修改用户 user modify
> usermod -g 组编号 -u 用户编号 -d 家目录 -l 新名字 username
(修改家目录时需要手动创建之)
3) 删除用户 user delete
> userdel username
> userdel -r username //删除用户同时删除其家目录
4) 给用户设置密码,使其登录系统
> passwd 用户名
10. 组别操作
配置文件: /etc/group
1) 创建组 group add
> groupadd music
> groupadd movie
> groupadd php
2) 修改组 group modify
> groupmod -g gid -n 新名字 groupname
3) 删除组 group delete
> groupdel groupname //组下边如果有用户存在,就禁止删除
11. 查看指令可设置的参数
> man 指令
12. 给文件设置权限
1) 字母相对方式设置权限
// 针对一个组别设置权限,其他组别权限没有变化,称为“相对方式”权限设置
chmod指令
chmod u+rwx filename //给filename文件的主人增加“读、写、执行”权限
chmod g-rx filename //给filename文件的同组用户 删除“读、执行”权限
chmod u+/-rwx,g+/-rwx,o+/-rwx filename
说明:
① 每个单元"+" "-"只能使用一个
② 可以同时给一个组或多个组设置权限,组别之间使用","分割
③ 每个单元的权限可以是"rwx"中的一个或多个
>chmod u+w,g-rx,o+rw filename //给filename文件主人增加写权限,同组删除读、执行权限,其他组增加读、写权限
>chmod u+w,u-x filename //给filename文件主人“增加写权限”同时“删除执行权限”
chmod +/-rwx filename //无视具体组别,统一给全部的组设置权限
>chmod +rw filename //给filename全部用户增加“读、写”权限
2) 数字绝对方式设置权限
r读:4 w写:2 x执行:1
0: 没有权限
1:执行
2:写
3:写、执行
4:读
5:读、执行
6:读、写
7:读、写、执行
chmod ABC filename //ABC分别代表主人、同组、其他组用户的数字权限
>chmod 753 filename //主人读、写、执行;同组读、执行;其他组写、执行
问:字母相对 和 数字绝对 方式权限设置取舍?
答:修改的权限相对“比较少”的时候使用“字母”方式
相反,权限变动“非常多”的时候就使用“数字”方式
13. 在文件中查找内容
grep 被搜寻内容 文件
> grep hello passwd //在passwd文件中搜索hello内容
//会把hello所在行的内容都打印到终端显示
14. 计算文件占据磁盘空间大小
> du -h 文件(目录)
15. 文件查找
find 查找目录 选项 选项值 选项 选项值 ...
1) -name选项 根据名字进行查找
> find / -name passwd[完整名称] //"递归遍历"系统全部目录,寻找名称等于"passwd"的文件
> find / -name "pas*"[模糊查找] //在系统全部目录,模糊查找一个名字是“pas”开始的文件
> find / -name "*er*" //文件名字有出现“er”字样即可,不要位置
2) 限制查找的目录层次 -maxdepth -mindepth
-maxdepth 限制查找的最深目录
-mindepth 限制查找的最浅目录
> find / -maxdepth 4 -name passwd
> find / -maxdepth 4 -mindepth 3 -name passwd
3) 根据大小为条件进行文件查找
-size +/-数字
+号表示大小大于某个范围
-号表示大小小于某个范围
大小单位:
-size 5 //单位是“512字节” 5*512字节
-size 10c //单位是“字节” 10字节
-size 3k //单位是“千字节” 3*1024字节
-size 6M //单位是“1024*千字节” 6M兆字节
> find ./ -size 14c //在当前目录查找大小等于14字节的文件
> find / -size +50M //在系统全部目录里边查找大小大于50M的文件