常用Linux命令-学习
常用Linux命令
文件目录类命令
命令格式
命令名称 -选项 参数
命令
- 浏览目录命令
ls
命令英文原意:list
功能描述:显示目录文件pwd
命令英文原意:print working directory
功能描述:显示当前所在的工作目录
- 目录操作命令
cd
命令英文原意:change directory 功能描述:切换目录mkdir
命令英文原意:make directory 功能描述:创建新目录rmdir
命令英文原意:remove directory 功能描述:删除空目录
- 浏览文件命令
cat
命令英文原意:concatenate and display files 功能描述:连接文件并打印到输出设备上more
命令英文原意:more 功能描述:分页显示文件内容less
命令英文原意:less 功能描述:分页显示文件内容head
命令英文原意:head 功能描述:用于显示文件前几行的内容tail
命令英文原意:tail 功能描述:用于显示文件后几行的内容
- 文件操作命令
cp
命令英文原意:copy 功能描述:将文件从一个地方复制到另外一个地方。- 格式: cp [参数] <源文件路径> <目标文件路径>
- -p:连同文件的属性一起复制,非默认方式,常用于复制
- -i:若目标文件已经存在时,在覆盖时会先询问操作的进行
- -r: 递归持续复制,用于目录的复制行为
- -u:目标文件与源文件有差异时才会复制
rm
命令英文原意:remove 功能描述:删除文件或目录- 格式:rm [参数] <目标文件路径>
- -f:就是force的意思,忽略不存在的文件,不会出现警告消息
- -i:互动模式,在删除前会询问用户是否操作
- -r:递归删除,最常用于目录删除,是一个非常危险的参数
mv
命令英文原意:move 功能描述:用来移动文件或目录find
命令英文原意:find 功能描述:用来寻找文件或目录- 格式: find 路径 [参数]
- -name finename: 找出文件名为filename的文件
- -size [+-]SIZE: 找出比SIZE大(+)或小(-)的文件
- -type TYPE:查找文件的类型为TYPE的文件,TYPE的主要有:一般文件(f)、设备文件(b、c)、目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p)
- -perm mode:查找文件权限刚好等于mode的文件,mode用数字表示,如0755
grep
命令英文原意:Globally search a Regular Expression and Print 功能描述:在文件中搜索匹配的字符并进行输出- 格式:grep [参数] <要找的字符串> <要查找的字符串源文件>
- -a:将binary文件以text文件的方式查找数据
- -c:计算找到“查找字符串”的次数
- -i:忽略大小写的区别,即把大小写视为相同
- -v:反向旋转,即显示出不包含‘查找字符串’内容的那一行
tar
命令英文原意:tape archive 功能描述:将用户所指定的文件或目录打包成一个文件,也可以通过指定参数开启压缩/解压缩功能- 格式:tar [参数] <文件>
- -c: 新建打包文件
- -t:查看打包文件的内容含有哪些文件名
- -x:解压包或解压缩的功能,可以搭配-C指定解压的目录,注意
-c,-t,-x
不能同时出现在同一条命令中 - -j:通过bzip2的支持进行压缩或解压缩
- -z:通过gzip的支持进行压缩或解压缩
- -f filename:filename为要处理的文件
- -C dir:指定压缩或解压缩的目录dir
- 示例:
tar -cvf test.tar *
将当前目录的所有文件打包成test.tartar -czvf test.tar.gz *
将当前目录的所有文件打包成test.tar,在用gzip命令压缩tar -tf test.tar
查看test.tar文件中包含了哪些文件tar -xvf test.tar
将test.tar解压包tar -zxvf test.tar.gz
将test.tar.gz解压缩并解打包
进程控制类命令
命令
- 查看系统中的进程命令
ps
命令英文原意:process state 功能描述:用来显示系统瞬间的进程信息,可以显示出在用户输入ps命令时系统的进程及进程的相关信息。- 格式:ps [参数]
- l 长格式输出
- u 按用户名和启动时间的顺序来显示进程
- j 按任务格式来显示进程
- f 用树形格式来显示进程
- a 显示所有用户的进程(包括其他用户)
- x 显示无法控制终端的进程
- r 显示运行中的进程
top
功能描述:动态监视系统任务的工具,输出结果是连续的- 格式: top [参数]
- -b 以批量模式运行,但不能接受命令行输入
- -c 显示命令行,而不仅仅是命令名
- -d N显示两次刷新时间的间隔,比如-d 5,表示两次刷新时间间隔为5秒
- -i 禁止显示空闲进程或僵尸进程
- -n NUM显示更新次数,然后退出。比如-n 5,表示top更新5次数据就退出
- -p PID仅监视指定进程的ID; PID是一个数值
- -q 不经任何延时就刷新
- -s 安全模式运行,禁用一些效互指令
- -S 累积模式,输出每个进程的总和的CPU时间
- 控制系统中的进程命令
kill
功能描述:用于向某个进程(通过PID标识)传送一个信号,通常与ps
和jobs
命令一起使用- 格式 kill -signal PID, 常用的signal参数如下
- 1: SIGHUP,启动被终止的进程
- 2: SIGINT,相当于输入ctrl+c,中断一个程序的进行
- 9: SIGKILL,强制中断一个进程的进行
- 15:SIGTERM,以正常的结束进程方式来终止进程
- 17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行
killall
功能描述:使用进程名称来杀死进程,使用此命令可以杀死一组同名进程- 格式:killall [参数] <正在运行的进程名>
- -e: 对长名称进行精确匹配;
- -I:忽略大小写不同
- -p:杀死进程所属的进程组
- -i:交互式杀死进程,杀死进程前需要进行确认
- -l:打印所有一直信号列表
- -q:如果没有进程被杀死,则不输出任何信息
- -r:使用正则表达式匹配要杀死的进程名称
- -s:用指定的进程号代替默认信号“SIGTERM”
- -u:杀死指定用户的进程
nice
功能描述:允许在默认优先级的基础上进行增大或减小的方式来运行命令- 格式:nice [参数] <command [argumengts...]>
- command 是系统中任意可执行文件的名称
- -n, --adjustment 指定程序运行的优先级的调整值
- 优先级的调整范围为-20~19,其中数值越小优先级越高,数值越大优先级越低
- 若nice命令未指定优先级的调整值,则以缺省值10来调整程序运行优先级,即在命令通常运行优先级基础之上增加10
renice
功能描述:改变一个正在运行的进程的nice值- 格式:renice [参数]
- -n 指定程序运行优先级的调整值
- renice -5 777
- 格式:renice [参数]
- 进程后台运行命令
&
功能描述: 在后台运行
- 进程的挂起和恢复
- 进程的中止(挂起)和终止
- 挂起Ctrl+Z
- 终止 Ctrl+Z
- 进程的恢复
- 恢复到前台继续运行(fg)fg [n]
- 恢复到后台继续运行(bg)bg [n]
- 查看被挂起的进程(jobs)
- 进程的中止(挂起)和终止
用户账号信息文件/etc/passwd
- 文件中每一行为一个用户信息
- 文件中各个字段从左到右依次为:用户名、口令、用户ID、用户组、全称、用户家目录、登陆shell
- 口令字段用x来填充,加密后的口令保存在
/etc/shadow
文件中
用户密码信息文件/etc/shadow
- shadow 文件只有超级用户才能查看并修改其内容,且加密存储
用户组账号信息文件/etc/group
- 每一行为一个用户组信息
- 文件中各字段从左到右依次为:用户组名、口令、用户组ID、附加用户列表
用户组口令信息文件/etc/gshadow
- shadow 文件只有超级用户才能查看并修改其内容,且加密存储
用户及权限管理类命令
用户管理类命令
useradd
功能描述:信用用户账号(超级用户可用)- 格式: useradd [参数] <用户名>
- -d 指定用户登入的家目录
- -e 账号终止日志
- -g 指定账户所属的用户组
- -G 指定账户所属的附加组
- -s 指定账户登陆后使用的shell
- -u 指定用户ID号
usermod
功能描述:修改用户的属性(超级用户可用)- 格式: usermod [参数] <用户名>
- d 指定用户登入时的主目录
- -e 账号终止日期
- -g 指定账户所属的用户组
- -G 指定账户所属的附加组
- -s 指定账户登陆时所使用的shell
- -u 指定用户ID号
- -l 新用户名(用于修改用户名)
usermod -l zhangs zhangsan
将zhangsan改为zhangs
passwd
功能描述: 设置或修改用户的口令及口令的属性- 格式: passwd [参数] <用户>
- -d 删除用户的口令
passwd -d zhangsan
- -l 暂时锁定指定的用户账号
passwd -l zhangsan
- -u 解除指定用户账号的锁定
passwd -u zhangsan
- -s 显示指定用户账号的状态
passwd -s zhangsan
userdel
功能描述:删除指定的用户账号(超级用户可用)- 格式:userdel [参数] <用户名>
- -r: 不仅删除此用户账号,且删除用户主目录以及本地邮件存储目录或文件
- -f:删除用户登入目录以及目录中所有文件
*如果删除用户输入私人组群,而改组群没有其他用户,组群一并删除 - 正在使用的系统用户组不能删除
su
功能描述: 切换用户身份- 格式: su <用户名>
- 超级用户可以切换任何普通用户,而不需要输入口令;普通用户切换为其他用户时需要输入切换用户的口令
- 使用exit可以返回本来的用户身份;
id
功能描述:查看用户的UID、GID和用户所属用户组的信息;如果不指定用户,则显示当前用户的相关信息- 格式: id <用户名>
whoami
功能描述: 查看当前用户名w
功能描述:查看当前登陆系统用户和详细信息finger
用户组管理类命令
groupadd
功能描述:新建组群(超级用户可用)- 格式: groupadd [参数] <用户组名>
- -g: 指定用户组ID
- -o: 允许组ID号不唯一
groupmod
功能描述:修改指定用户组的属性(超级用户可用)- 格式:groupmod [参数] <用户组>
- -g:指定新的用户组ID
- -n:指定新的用户组名
- -o:允许组ID不唯一
groupdel
功能描述:删除指定用户组(超级用户可用)- 格式:groupdel <用户组名>
- 注意:在删除指定用户组之前必须保证该用户组不是任何用户的主要组群,否则要先删除以此用户组为主要族群的用户才可以删除该用户组
文件权限
- 读写权限: 浏览文件/目录中内容的权限
- 写入权限:
- 对文件而言就是修改文件内容的权限
- 对目录而言就是删除、添加、重命名目录内文件的权限
- 执行权限:
- 对可执行文件而言就是允许执行的权限
- 对目录而言就是进入目录的权限
文件权限管理类命令
chmod
功能描述: 修改文件访问权限- 格式: chmod <模式> <文件>
- 对象:u文件所有者、g同组用户、o其他用户
- 操作符:+增加、-删除、=赋予
- 权限:r读、w写、x执行、s设置用户ID
- 示例:
chmod g-w file
取消同组用户对file文件的写入权限chmod 755 file
将file文件的访问权限设置为755chmod u+s file
设置file文件的设置用户ID位
chown
功能描述:将指定文件拥有者改为指定的用户或用户组- 格式:chown [选项] <所有者/组> <文件>
- -c 显示更改的部分信息
- -f 忽略错误信息
- -h 修复符号链接
- -R 处理指定目录以及子目录下的所有文件
- -v 显示详细的处理信息
- -deference 作用于符号链接的指向,而不是符号链接文件本身
- 用户是用户名或用户ID,用户组可以是组名或组ID
- 文件以空格分开的要改变权限的文件列表,支持通配符
- 示例:
chown hellen ex1
将ex1的所有者改为hellen
chgrp
改变文件的所属用户组- 格式: chgrp [选项] <组> <文件>
- -c 当发生改变时输出调试信息
- -f 不显示错误信息
- -R 处理指定目录以及子目录的所有文件
- -v 运行时显示纤细的处理信息
- --derefenrence 作用于符号链接的指向,而不是符号链接本身
- --no-dereference 作用于符号链接本身
- 示例:
chgrp staff ex1
将ex1文件的所属用户组改为staff