Linux常用命令
Posted hello4world
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令相关的知识,希望对你有一定的参考价值。
Linux有三个分区
/boot 分区
swap 虚拟内存分区
/ 根目录分区
root 超级用户
密码 centos2019
重启Linux的命令
reboot
Linux的目录结构
是层级式的树状目录结构,最上层的根目录是“/”
在Linux的世界里,一切皆文件
/bin目录:存放经常使用的命令
/home目录:存放普通用户的主目录
/root目录:系统管理员的主目录
/lib目录:基本的动态连接共享库,几乎所有的应用程序都需要用到这些共享库
/etc目录:所有的系统管理所需要的配置文件和子目录
/usr目录:非常重要的目录,用户的很多应用程序和文件都放在这个目录中,类似于Windows的program files目录
/boot目录:存放启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
/dev目录:类似Windows的设备管理器,把所有的硬件用文件的形式存储
/media目录:Linux会识别一些设备,比如U盘,光驱等,当识别后,Linux会把识别的设备挂载到这个目录中
/mnt目录:让用户临时挂载别的文件系统,我们可以将外部的存储挂载到/mnt/上,进入该目录即可查看内容
/opt目录:给主机额外安装软件所摆放的目录
/usr/local目录:另一个给主机额外安装软件所安装的目录,一般通过编译源码方式安装的程序
/var目录:存放不断扩充着的东西,习惯将经常被修改的目录放在这个目录中,包括各种日志文件
远程登录常用软件(需要Linux开启一个sshd服务,开启22端口)
Xshell 远程登录到Linux的软件
SFTP 上传和下载文件的软件
查看ip:ifconfig
vi和vim的使用
所有的Linux系统都会内置vi文本编辑器,vim具有程序编辑能力,可看做是vi的增强版
vi和vim的三种模式
1.正常模式
可以使用快捷键
2.插入模式/编辑模式
可以输入内容,按下i/o/a等任何一个字母,就可以进入此模式
3.命令行模式
提供一些指令,完成读取、存盘、替换、离开vim等动作
vim Hello.java 创建Hello.java
输入i,进入插入模式
编辑完,按下esc,退出插入模式
再输入:wq保存退出(w是保存,q是退出)
在命令行中输入 vim xxxx进入正常模式,正常模式输入i进入编辑模式,编辑模式按下ESC回到正常模式,正常模式输入:进入命令模式,
命令模式按下ESC回到正常模式,在命令模式下输入wq q q!(强制退出)
常用快捷键 正常模式下
输入yy,拷贝当前行,输入p粘贴。5yy,拷贝当前行向下的5行,输入p并粘贴
输入dd,删除当前行,输入5dd,删除当前行向下的5行
输入 /关键字 回车查找,输入n就是查找下一个
命令模式 set nu设置文件行号,set nonu取消文件的行号
vim /etc/profile 时,在正常模式下,输入G到达最底行,输入gg到达最顶行
vim /etc/profile时,先显示行号,然后回到正常模式,输入 20 shift+g,将跳到20行
正常模式下输入u,撤销上一次输入的内容
关机、重启命令
shutdown
shutdown -h now 立即关机
shutdown -h 1 一分钟后关机
shutdown -r now 立即重启
halt 直接使用,等价于关机
reboot 就是重启系统
sync 把内存的数据同步到磁盘(不管是重启还是关机,应先运行sync)
用户登录和注销
登录时尽量少用root账号(最大权限,防止误操作),可以用普通用户登录,登录后再用su -用户名命令切换成系统管理员身份
在命令行下,输入logout即可注销用户
logout注销指令在图形运行级别无效,在运行级别3下有效
Linux是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先要向系统管理员申请一个账号,然后以这个账号的身份进入系统
有用户、组、用户家目录的概念
添加用户
useradd 用户名 (用户创建成功后,会自动创建和用户同名的家目录)
也可以通过 useradd -d 指定目录 用户名,给创建的用户指定家目录
useradd -g 组名 用户名
用户至少要属于一个组(可以属于多个组)
cd change directory 改变目录
passwd 用户名 给用户指定密码
删除用户
userdel 用户名(删除用户,但是保留家目录)
userdel -r 用户名(删除用户名和家目录)
查询用户
id 用户名(当用户不存在时,返回"无此用户")
uid用户id号 gid所在组的id号 组=组名
切换用户
su - 切换用户名
在操作中权限不够,可切换到高权限用户
高权限用户切换到低权限用户,不用输密码(再想返回前一个用户,输入exit)
查看当前用户
whoami
用户组
类似于角色,系统可以对有共性的多个用户进行统一管理
新增组
groupadd 组名
clear 清除终端之前输入的历史命令
删除组
groupdel 组名
修改用户的组
usermod -g 组名 用户名
用户和组的相关文件
/etc/passwd文件
用户的配置文件,记录用户的各种信息
每行的含义:用户名 口令 用户标识号 组标识号 注释性描述 主目录 登录Shell
/etc/shadow文件
口令的配置文件
每行的含义:登录名 加密口令 最后一次修改时间 最小时间间隔 最大时间间隔 警告时间 不活动时间 失效时间 标志
/etc/group文件
组的配置文件,记录Linux包含的组的信息
每行的含义:组名 口令 组标识号 组内用户列表
指令运行级别(有7个运行级别)
0:关机
1:单用户(找回丢失的密码)
2:多用户无网络
3:多用户有网络
4:系统未使用保留给用户
5:图形界面
6:重启
常用的运行级别是3和5,要修改默认的运行级别可改文件/etc/inittab的id:5:initdefault:这一行的数字
命令:init [0123456]
利用单用户模式修改root密码(需在本机操作)
在开机引导界面按 回车键->看到界面输入 e ->看到一个新的界面,选中第二行(编辑内核),再输入 e->在最后一行输入 空格+1,再输入 回车键->输入 b,即可进入
帮助指令
对某个指令不熟悉时,可以使用Linux提供的帮助指令了解这个指令的使用方法
man [命令或配置文件] (功能描述:获得帮助信息)
比如查看ls命令的使用,man ls,就会弹出文档(按回车键往下翻,冒号输入q退出)
help [命令] (功能描述:获得Shell内置命令的帮助信息)
文件目录类
1. pwd指令:显示当前工作目录的绝对路径
2. ls [选项] [目录或是文件] 常用选项:-a 显示当前目录所有的文件和目录,包括隐藏的 -l 以列表的形式显示信息 -h 以符合人的方式显示(如显示xxM的文件大小)
3. cd [参数] 切换到指定目录 cd~或者cd 回到自己的家目录 cd.. 返回当前目录的上一级目录 绝对路径从根目录开始定位 相对路径从当前工作目录开始定位到需要的目录
4. mkdir [选项] 要创建的目录 常用选项: -p 创建多级目录
5. rmdir [选项] 要删除的空目录 如果目录下有内容时无法删除的,如果需要删除非空目录,使用 rm -rf 要删除的目录
6. touch 文件名称 创建新文件,也可以一次性创建多个文件,文件名称之间用空格隔开
7. cp [选项] source dest 常用选项:-r 递归复制整个文件夹 强制覆盖不提示的方法 cp
小技巧:通过上下方向键,可以调出历史输入指令。tab可以补全命令
8. rm [选项] 要删除的文件或目录 常用选项: -r 递归删除整个文件夹 -f 强制删除不提示
9. mv oldFileName newFileName 重命名 mv /moveFile /targetFolder 移动文件
10. cat [选项] 要查看的文件 查看文件内容 常用选项: -n 显示行号 cat只能浏览文件,一般会带上 管道命令 | more
11. more 要查看的文件 以全屏幕的方式按页显示文本文件的内容 快捷键 空格键(下翻一页) 回车键(下翻一行) q(退出) Ctrl+F(下一屏) Ctrl+B(上一屏) =(当前行号) :f(当前行号+文件名)
12. less 要查看的文件 与more类似但比more强大,它在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。 空格键(下翻一页) pagedown(下翻一页) pageup(上翻一页) /字符串(向下搜寻字符串) ?字符串(向上搜寻字符串) q(退出)
13. >指令:输出重定向 >>指令:追加 ls -l > 文件 列表的内容写入文件中(覆盖写) ls -al >> 文件 列表的内容追加到文件的末尾 cat 文件1 > 文件2 将文件1覆盖写到文件2中
14. echo [选项] [输出内容] 输出内容到控制台
echo $PATH 可查看Linux系统环境变量
15. head 文件 查看文件头10行(默认)内容 head -n 5 文件 查看文件前5行内容(5可是其他行数)
16. tail 输出文件中尾部的内容,默认后10行内容
tail 文件 默认显示后10行内容 tail -n 5 文件 默认显示后5行内容(5可是其他行数) tail -f 文件 可实时追踪该文档的所有更新
17. ln 软连接/符号链接,类似Windows的快捷方式,存放链接其他文件的路径
ln -s [原文件或目录] [软连接名] 给原文件创建一个软连接 使用pwd查看路径,仍然显示软连接所在的路径
rm -f 软连接名 删除软连接,后面不带 /
18. history 查看已经执行过的历史指令,也可以执行历史指令
history 查看所有执行过的指令
history 10 查看最近执行的10个指令
!178 执行历史指令中编号为178的历史指令
19. date指令,显示当前日期
date 显示当前时间 date +%Y 当前年份 date +%m 当前月份 date +%d 当前日 date "+%Y-%m-%d %H:%M:%S" 显示年月日时分秒
date -s "2020-11-11 10:10:10" 设置日期为2020-11-11 10:10:10
20. cal指令,查看日历
cal [选项] 如果不加选项,显示本月日历
cal 2020 显示2020年所有日历
21. find指令,将从指定目录向下递归遍历其各个子目录,将满足条件的文件或目录显示在终端
find [搜索范围] [选项] 文件名 *.txt 所有后缀名为txt的文件
选项可如 -name<查询方式> 按指定的文件名查找文件 -user<用户名> 指定用户名所有文件 -size<文件大小> 按文件大小查找 +数字 大于 -数字 小于 数字 等于
-size +20M 大于20M的文件 -20k 小于20k的文件
22. locate指令,快速定位文件路径。利用事先建立在系统中所有文件名及路径的locate数据库实现快速定位给定的文件。由于是基于数据库查询,第一次运行前需要
使用updatedb指令创建locate数据库。
locate 搜索文件
23. grep指令,过滤查找,管道符号 | 表示将前一个命令的处理结果输出传递给后一个命令处理
grep [选项] 查找文件 源文件 常用选项 -n 显示匹配行及行号 -i 忽略字母大小写
cat hello.txt | grep -n yes 在hello.txt中查找yes字符串
24. gzip压缩指令 gunzip解压指令
gzip 文件 将文件压缩为.gz文件,不会保留原来的文件
gunzip 文件 解压文件,不会保留压缩文件
25. zip压缩指令/unzip解压指令
zip [选项] xxx.zip 要压缩的文件或目录 常用选项 -r 递归压缩,即压缩目录
unzip [选项] xxx.zip 常用选项 -d 指定解压后的文件存放目录 unzip -d 目录 xxx.zip
26. tar指令,打包指令,最后打包后的文件是.tar.gz文件。
tar [选项] xxx.tar.gz 打包的内容 常用选项 -c 产生.tar打包文件 -v 显示详细信息 -f 指定压缩后的文件名 -z 打包同时压缩 -x 解包.tar文件
tar -zcvf a.tar.gz a1.txt a2.txt 把a1.txt和a2.txt文件压缩成a.tar.gz
tar -zxvf a.tar.gz 把a.tar.gz文件解压出来
tar -zxvf a.tar.gz -C /home 把a.tar.gz解压到home目录下
以上是关于Linux常用命令的主要内容,如果未能解决你的问题,请参考以下文章