linux常用命令总结
1. 查看当前目录下有哪些文件和目录 > ls //list > ls -al //all list 显示当前目录全部的文件详细信息(以列表形式显示) 会显示隐藏文件 > ls -l //list显示当前目录一般文件的详细信息(以列表形式显示) > ls -a //显示当前目录全部文件信息,只有文件的名字 > ls 目录 //罗列指定目录的文件信息 > ll //以列表形式列出当前目录文件的详细内容(不会显示隐藏文件) 2. 查看我当前在哪个目录 >pwd 3. 显示当前用户信息 >who am i //显示用户名 和 其登录系统的时间信息 >whoami //只显示当前登录系统的用户名信息 4. 从普通用户切换到root用户 > su - //提示输入密码 > su root // 两种切换方式:前者切换为超级管理员用户,权限也是超级管理员权限 后者虽然切换为超级管理员,其权限是普通权限 5. 从root用户切换到普通用户 > su cqh //从root切回普通用户 6. 从桌面窗口切换为“命令行窗口”(通过超级管理员切换) > init 3 > init 5 //从“命令行”切换回“桌面” 7. 目录切换 > cd 具体目录 8. 输出文件的信息,全部内容直接都输出 >cat 文件 9. 创建目录指令 > mkdir 目录 > mkdir -p 目录1/目录2/目录3 //递归创建目录 10. 修改目录的名字 > mv 目录1 目录2 //把"目录1"的名字改为"目录2"的名字 > mv 目录/目录a 目录/目录b //把“目录a”改成"目录b" 11. 移动操作 > mv 文件 目录 //移动文件到指定的目录 > mv 目录 目录 //移动目录到指定目录(包括多级目录) 12. mv指令什么时候是移动,什么时候是该名字 mv 一参 二参 二参 是不存在的,就是改名字 二参 是存在的目录,就是移动 mv com.txt red.txt red.txt是存在的文件,com.txt也是存在的文件 首先明确,不可以移动操作 不能 【能】把名字由com.txt改为red.txt mv guangzhou hello.txt guangzhou 是存在的目录 hello.txt 是存在的文件 首先明确不能移动 是否可以把guangzhou的名字改为hello.txt 【不能】把名字由“guangzhou”改为"hello.txt" 能 13. 删除目录 > rmdir 目录 //删除单个目录(没有子级目录) > rm -rf 文件名字 //force强制 recursive 递归删除 > rm -rf / //kill your self [root用户可以删除更多的文件] > rm -rf shanghai/beijing //这是删除shanghai下边的beijing目录,不会删除shanghai 14. 复制 >cp copy >cp 目录 地址 -R //复制目录需要加上固定参数-R,目录会进行递归复制 >cp 文件 目录/不存在名字 //文件在被复制到指定目录的同时被“改名字” >cp 文件 新文件名字 //复制同时并起新名字 15. 查看文件内容 > more 文件 //从文件内容第一行开始显示,有显示内容查看%百分比 //敲回车,会逐行查看后边的内容,到最后会释放光标 > less 文件 //逐行显示文件内容,通过“上、下、左、右”可以查看文档的各部分内容 //允许向前查看,没有百分比显示 //通过"q"键释放光标 > head -n 文件 //查看文件前n行内容 > tail -n 文件 //查看文件尾部n行内容 > wc 文件 //计算文件内容行数、段落 16. 创建新文件 > touch 文件名 //创建文件 17. 给文件添加内容 > echo 内容 > 文件 //把指定内容输入到“文件”里边 > echo 内容 >> 文件 //把内容追加到文件里边 18. 重定向内容到一个文件 > cat 文件1 > 文件2 //把文件1的内容重定向到文件2里边,文件2没有则会自动创建 > cat 文件1 >> 文件2 //追加重定向 19.增加用户 /etc/passwd存放系统用户信息(组编号、家目录) > useradd 用户名 > useradd -g 编号 用户名 //增加用户的同时设置“组编号” > useradd -d 目录名 用户名 //增加用户同时设置“家目录”,目录没有会自动创建 > useradd -g 编号 -d 家目录 用户名 //同时设置组编号和家目录地址 > useradd -g 组编号 用户 //常用操作 20. 创建组 (可以设置组本身编号) > groupadd 组名 //常用操作 > groupadd -g 编号 组名 //可以设置组编号,下一个组的编号要从最大的自增 21. 修改用户信息(组编号、家目录地址、用户名) > usermod -g 组编号 用户名 //修改用户的组编号 > usermod -d 家目录 用户名 //修改用户的家目录,passwd文件有修改,实际并没有这个目录(手动创建) > usermod -u 编号 用户名 //修改用户本身的编号 > usermod -l 新名字 旧用户名 //修改用户的名字 22. 修改组 (组编号、组名) > groupmod -g 组编号 组名 //修改组编号 > groupmod -n 新组名 旧组名 //修改组名字 23. 删除用户(用户信息、家目录地址) > userdel 用户 > userdel -r 用户 //删除用户同时,其“家目录”地址也会被删除 24. 删除组 > groupdel 组名 //一个组下边有具体用户,该组不允许删除 25. 查看一个指令在使用的时候有何种参数可以设置 > useradd --help 命令 --help 26. 给一个用户设置密码(可以让其登录系统) > passwd 用户名 //密码根据提示输入两遍 27. 查看命令具体参数设置 > man 命令 //前后反复查看命令的使用参数 28. 给文件进行权限设置[相对方式] > chmod u+x 文件 > chmod g+x 文件 //给同组用户设置执行权限 > chmod o+x 文件 //给其他组用户设置执行权限 > chmod o+w,o+x 文件 //同时给文件设置可写、可执行全选 > chmod u-r 文件 //取消主人的可读权限 > chmod g-w,g-x 文件 //取消同组用户写、执行权限 > chmod o-r,o-x 文件 //取消其他组用户读、执行权限 > chmod g+rx,o+wx 文件 //给文件同组用户设置“读、执行”权限,其他组用户有“写、执行权限” > chmod u-rwx,g-rw //取消具体用户的权限 29. 数字[绝对方式]设置文件权限 读、写、可执行 二进制代码表示计算机的信息 1-------------1 10-------------2 100-------------4 例如:读:1 写:2 执行3 如果文件权限是读写执行都有就是数字6 如果文件只有读的权限就是数字1 3 不知道是“读写” 还是 “执行权限”,歧义产生 正确的用法是:读4 写2 执行1 1:执行 2:写 3:写、执行 4:读 5:读、执行 6:读、写 7:读、写、执行 > chmod 777 文件 //主人、同组用户、其他组用户权限是满的 > chmod 001 文件 //主人、同组用户都没有权限,其他组用户有可执行权限 ppink.txt 主人有写、执行 同组用户有读 其他组用户有读、执行 > chmod 345 ppink.txt 30. 给目录递归设置权限 > chmod 755 目录 -R //-R参数可以递归目录进行权限设置 31. 文件权限使用 -w- 文件只有可写权限[不可以看到原内容,可以写,覆盖写,强行保存] r-- 文件只有可读权限[可以看到原内容,可以写,不会覆盖,强行保存] --x 文件有可执行权限[不可以看到原内容,可以写,覆盖写,强行保存] 32. 目录权限 r-- 目录有可读权限[可以阅读里边的文件,不允许进入] --x 目录有执行权限[不能阅读,不允许写,允许进入目录] -w- 目录有些权限[不能阅读,不能增加或减少文件,不能进入目录] rw- 有读、写权限[可以阅读,不能进入目录] rwx 读、写、可执行[可以阅读,可以增加减少文件、可以进入] 一个目录如何进行写操作:给目录增加文件或减少文件就是写 33. 同组用户对文件权限操作 r-- 操作只读文件[可以阅读,可以写,强行保存,文件的主人和组已经更改] -w- 写权限 [不能读,可以强行覆盖写,文件的主人和组有更改] --x 是否可以进入目录 [一个目录有可执行权限,说明用户可以切换进该目录] 34. 文件或目录的各种权限对超级管理员root没有影响 35. 在指定文件里边查找我们需要的内容 > grep 内容 文件 36. 查看“任务管理器” > top 37. 查看内存信息 > free -m //以M兆为单位显示内存大小使用情况 38. 查看文件或目录占用大小的情况 > du -h 目标 //有最小单元限制(4k) 1字节 39. 文件查找 find 目录 选项 选项值 > find ./ -name abc.txt //在当前目录查找名字为abc.txt的这个文件 > find / -name xxx //在根目录查找文件 > find ./ -size 大小 //根据文件的大小来查找 单位: 10 512字节默认 100c 1字节单位 100k 1024字节单位 > find ./ -size +100c //查找文件大小大于100字节的 > find ./ -size -100c //查找大小小于100字节的文件 > find ./ -size 4 //查找大小等于2048字节的文件 > find ./ -size 2k //查找大小等于2048字节的文件 > find ./ -maxdepth 1 //查找文件目录最深是2层 > find ./ -mindepth 1 //查找文件通过最浅层次进行查找 > find ./ -type f //通过类型查找,查找文件类型 > find ./ -type d //通过类型查找,查找目录类型 > find ./ -user 用户名 //查找文件主人为XX的文件 > find ./ -uid 用户编号 //查找文件主人编号为XX的文件 > find ./ -nouser //查找没有主人的文件 文件创建的时候,是某个用户创建的 有的一些文件创建好后,被用户发布到网络上边 我们把网络的文件下载本地,放到我们自己的系统里边 创建这个文件的用户,在我自己的系统里边并没有 例如,创建这个文件的用户编号是710(用户名:runfa) > find ./ -perm 权限764 //根据文件的权限进行查找 > find ./ -name 'bao*' //进行模糊查找,名字前缀是bao的文件 40. 设置软连接 > ln -s 源文件 链接文件 > ln -s /home/cqh/shanghai/passwd /var/passwd 41. 查看文件索引号码 > ls -li 42. 制作任务调度指令 > crontab -e //编辑任务调度指令 > crontab -l //查看任务调度指令设置情况 在17:38来执行具体任务指令 分钟 小时 日期 月份 星期 具体命令 38 17 * * * /home/cqh/shanghai/newout.sh 0代表周日 43. 设置系统时间 > date -s "2013-08-13 17:39:40"; > date //查看系统时间 44. 给文件设置主人 > change owner > chown 主人 文件 45. 给文件设置组 > change group > chgrp 组 文件 > chown .组 文件 46. 同时给文件设置主人和组 > chown 主人.组 文件 > chown 主人.组 目录 -R //递归给目录设置主人和组的信息,二级目录和三级目录等等都会设置 47. 实现设备挂载、卸载 > mount /dev/cdrom /home/cqh/rom //把光驱挂载到rom的目录下边 > mount /dev/hda1 /home/cqh/upan //挂载u盘 > mount /dev/sda3 /home/cqh/pan3 //挂载硬盘 > umount 设备 或者 挂载点 > umount /dev/cdrom > umount /home/cqh/rom 48. rpm指令安装软件 > rpm -ivh 软件文件名(vsftpd-2.0.5-16.el5_4.1.i386.rpm) //安装软件 > rpm -e 软件名(vsftpd) //卸载软件 > rpm -q 软件名 //query检查是否安装该软件 > rpm -qa //查看系统全部安装软件情况 > rpm -qa | grep ftp //在全部安装软件里边,通过模糊方式查找是否有ftp这个软件 > rpm -u 文件名 //对软件升级 49. 让vsftpd软件运行 > service vsftpd start 50. 服务器重新启动 > reboot 重新启动 > shutdown 关机 > poweroff 关机