首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
Linux终端的使用
Linux命令行介绍
Linux基本命令与常用符号
Linux的基本优化
Linux目录结构和文件属性管理
深入理解linux文件
VIM文本编辑器
linux用户管理
linux 组管理
linux 密码管理
linux shadow文件
linux基本权限
linux 特殊权限
linux 隐藏权限
linux acl权限
linux文件压缩与解压
linux软件包管理
linux服务介绍
linux服务管理
linux 进程管理
linux 网络管理
linux nmcli命令详解
linux网络相关设置
linux 路由管理
linux 聚合链路
linux网络故障排查
linux日志管理
linux日志服务器部署
构建可视化日志管理服务器
linux磁盘基本管理
linux 磁盘分区与格式化
GPT磁盘管理
linux分区挂载
linux磁盘使用实战案例
LVM逻辑卷介绍
逻辑卷常用命令
逻辑卷实战案例-逻辑卷应用
逻辑卷实战案例-逻辑卷扩容
逻辑卷实战案例-逻辑卷裁剪
逻辑卷实战案例-swap分区
逻辑卷实战案例-其他常见操作
创建高可用逻辑卷
linux磁盘管理-RAID介绍
创建一个软raid阵列
CentOS 8启动流程
linux 计划任务
shell 数据处理
Linux系统监控工具-glances
当前位置:
首页>>
技术小册>>
Linux系统管理小册
小册名称:Linux系统管理小册
## 一、常用命令介绍 在linux系统中存在很多命令,这些命令可以帮助我们完成不同的工作,在这里面我们先介绍一些常用的基础命令,这些命令可以帮助我们完成对应的基本操作,随着以后的学习,我们还会接触到更多可以帮助我们完成不同工作的linux命令,我们来一起看一下这些基础命令都有哪些 **1、关机、重启命令** **关机命令** - init 0 #管理员可以使用 - halt - shutdown -h - poweroff **重启命令** - shutdown -r - reboot - shutdown -r 强烈推荐:关机或重启命令及步骤 ``` 1) sync:将缓冲区的数据同步到磁盘中(关机,重启前都需要执行,避免数据丢失),在Linux系统中,当数据需要存入磁盘时,通常会先放到缓冲区内,等到适当的时刻再写入磁盘,如此可提高系统的执行效率 2) shutdown: 以一种安全的方式关闭或重启系统。所有登陆用户都可以看到关机信息提示,并且禁止登陆 -k 并非真正关机,只向所有人显示警告信息。 如:shutdown -k +5 -r 重启。默认延迟一分钟 如:shutdown -r +3 "shutdown in 3 minutes" -h 关机。默认延迟一分钟 如:shutdown -h 12:00/shutdown -h now -f 重启时跳过磁盘检测。 -F 重启时强制磁盘检测。 -c 取消shutdown 推荐理由: 1、将内存中的数据刷入硬盘,避免因为重启或关机数据没有及时保存而丢失 2、避免多用户使用突然某个用户强行关机,影响其他用户,使用shutdown关机和重启可以通知其他用户,给予缓冲时间 ``` **2、系统信息** - uname ``` -s 输出内核名称 -n 输出网络节点上的主机名 -r 输出内核发行号 -v 输出内核版本 -m 输出主机的硬件架构名称 -p 输出处理器类型或"unknown" -i 输出硬件平台或"unknown" -o 输出操作系统名称 -a 以如下次序输出所有信息。其中若-p和-i的结果不可知则省略 ``` - hostname 查看主机名 ``` # hostnamectl set-hostname hello ``` - date 查看和设置时间 ``` 时间方面: %n : 下一行 %t : 跳格 tab %H : 小时(00..23) %I : 小时(01..12) %k : 小时(0..23) %l : 小时(1..12) %M : 分钟(00..59) %p : 显示本地 AM 或 PM %r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M) %s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数 %S : 秒(00..60) %T : 直接显示时间 (24 小时制) %X : 相当于 %H:%M:%S %Z : 显示时区 日期方面: %a : 星期几 (Sun..Sat) %A : 星期几 (Sunday..Saturday) %b : 月份 (Jan..Dec) %B : 月份 (January..December) %c : 直接显示日期与时间 %d : 日 (01..31) %D : 直接显示日期 (mm/dd/yy) %h : 同 %b %j : 一年中的第几天 (001..366) %m : 月份 (01..12) %U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形) %w : 一周中的第几天 (0..6) %W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形) %x : 直接显示日期 (yyyy-mm-dd) %y : 年份的最后两位数字 (00.99) %Y : 完整年份 (0000..9999) [root@zutuanxue ~]# date '+%I%M%S' 025929 [root@zutuanxue ~]# date '+%r' 上午 02时59分49秒 [root@zutuanxue ~]# date '+%s' 1584428402 [root@zutuanxue ~]# date '+%Z' EDT [root@zutuanxue ~]# date '+%a' 二 [root@zutuanxue ~]# date '+%A' 星期二 [root@zutuanxue ~]# date '+%b' 3月 [root@zutuanxue ~]# date '+%B' 三月 [root@zutuanxue ~]# date '+%c' 2020年03月17日 星期二 03时01分36秒 [root@zutuanxue ~]# date '+%T%n%D' 03:03:35 03/17/20 [root@zutuanxue ~]# date '+%T%t%D' 03:03:58 03/17/20 [root@zutuanxue ~]# date -s 2021-10-25 2021年 10月 25日 星期一 00:00:00 EDT [root@zutuanxue ~]# date -s 18:00 2021年 10月 25日 星期一 18:00:00 EDT [root@zutuanxue ~]# date -s 18:30:21 2021年 10月 25日 星期一 18:30:21 EDT [root@zutuanxue ~]# date -s "2021-04-28 15:30:20" 2021年 04月 28日 星期三 15:30:20 EDT ``` **3、文件和目录** - cd 目录 进入目录 - pwd: 查看当前的工作路径 ``` -P 显示实际位置 -L 显示所在位置 [root@zutuanxue ~]# cd /etc #进入到/etc这个目录 [root@zutuanxue ~]# cd / [root@zutuanxue /]# ls bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var [root@zutuanxue /]# cd bin/ [root@zutuanxue bin]# pwd /bin [root@zutuanxue bin]# pwd -P /usr/bin [root@zutuanxue bin]# pwd -L /bin ``` - ls: 查看当前目录下有哪些文件 ``` -a 列出目录下的所有文件,包括以 . 开头的隐含文件。 -A 显示除 “.”和“..”外的所有文件。 -B 不输出以 “~”结尾的备份文件。 -c 与lt一起使用,显示并按照修改时间(ctime)排序,与l一起使用,显示修改时间,按名称排序。 -d 将目录象文件一样显示,而不是显示其下的文件。 -f 对输出的文件不排序,使用此选项后aU选项生效,lst选项失效 -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。 -g 类似l但是不显示所有者 -h 与l一起,以易于阅读的格式输出文件大小(例如 1K 234M 2G) -i 输出文件的i节点的索引信息。 -k 以k字节的形式表示文件的大小。--si类似k但是以1000为进制而非1024 -l 列出文件的详细信息。 -L 遇到链接文件是,显示原文件的信息,而非链接信息 -m 横向输出文件名,并以“,”作分格符。 -n 类似l,但是用数字的 UID,GID 代替名称。 -o 显示文件的除组信息外的详细信息。 -p 目录后面加上/标识 -q 用?代替不可输出的字符。 -r 对目录反向排序。 -s 在每个文件名后输出该文件的大小。 -t 以修改时间排序。 -u 与lt一起使用,以访问时间(atime)排序;与l一起使用显示访问时间,按照名称排序 -x 按列输出,横向排序。 -Q 把输出的文件名用双引号括起来。 -R 列出所有子目录下的文件。 -S 以文件大小排序。 -X 以文件的扩展名(最后一个 . 后的字符)排序。 -1 一行只输出一个文件。 --color=no 不显示彩色文件名 --help 在标准输出上显示帮助信息。 --version 在标准输出上输出版本信息并退出。 ``` - mkdir 建立目录 ``` -m 设置权限模式(类似chmod) -p 需要时创建目标目录的上层目录,但即使这些目录已存在也不当作错误处理 -v 每次创建新目录都显示信息 -Z 将每个创建的目录的SELinux 安全环境设置为CTX ``` - rmdir 删除空文件夹 ``` -p 递归删除空目录,从最后一个目录倒删 ``` - touch 建立文件 ``` -a 只更改访问时间 -c 不创建任何文件 -m 只更改修改时间 -r 使用指定文件的时间属性替代当前时间 -t 使用[[CC]YY]MMDDhhmm[.ss] 格式的时间替代当前时间 [root@zutuanxue ~]# stat hello 文件:hello 大小:0 块:0 IO 块:4096 普通空文件 设备:fd00h/64768d Inode:34502264 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 最近访问:2020-03-17 16:51:35.502961371 -0400 最近更改:2020-03-17 16:51:35.502961371 -0400 最近改动:2020-03-17 16:51:35.502961371 -0400 创建时间:- [root@zutuanxue ~]# touch -a -t 202002010101.30 hello [root@zutuanxue ~]# stat hello 文件:hello 大小:0 块:0 IO 块:4096 普通空文件 设备:fd00h/64768d Inode:34502264 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 最近访问:2020-02-01 01:01:30.000000000 -0500 最近更改:2020-03-17 16:51:35.502961371 -0400 最近改动:2020-03-17 16:51:53.143475189 -0400 创建时间:- [root@zutuanxue ~]# touch -m -t 202002050101.30 hello [root@zutuanxue ~]# stat hello 文件:hello 大小:0 块:0 IO 块:4096 普通空文件 设备:fd00h/64768d Inode:34502264 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 最近访问:2020-02-01 01:01:30.000000000 -0500 最近更改:2020-02-05 01:01:30.000000000 -0500 最近改动:2020-03-17 16:52:07.837453512 -0400 创建时间:- #将hello-linux.txt的属性改成与anaconda-ks.cfg一样 [root@zutuanxue ~]# stat hello-linux.txt 文件:hello-linux.txt 大小:12 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:34513350 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 最近访问:2020-03-17 22:50:51.319377144 -0400 最近更改:2020-03-17 22:50:45.909483733 -0400 最近改动:2020-03-17 22:50:45.912483674 -0400 创建时间:- [root@zutuanxue ~]# stat anaconda-ks.cfg 文件:anaconda-ks.cfg 大小:1378 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:34973658 硬链接:1 权限:(0600/-rw-------) Uid:( 0/ root) Gid:( 0/ root) 最近访问:2020-03-16 23:08:34.121427663 -0400 最近更改:2020-02-04 15:01:33.273959663 -0500 最近改动:2020-03-18 16:33:48.873881970 -0400 创建时间:- [root@zutuanxue ~]# touch -r anaconda-ks.cfg hello-linux.txt [root@zutuanxue ~]# stat hello-linux.txt 文件:hello-linux.txt 大小:12 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:34513350 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 最近访问:2020-03-16 23:08:34.121427663 -0400 最近更改:2020-02-04 15:01:33.273959663 -0500 最近改动:2020-03-18 18:22:48.694597233 -0400 创建时间:- ``` - cat 查看文件内容 ``` -A 等价于-vET -b 对非空输出行编号 -e 等价于-vE -E 在每行结束处显示$ -n 对输出的所有行编号 -s 不输出多行空行 -t 与-vT等价 -T 将跳格字符(tab)显示为 ^I -v 使用^和M ``` - rm 删除文件或目录 ``` -f 强制删除。忽略不存在的文件,不提示确认 -i 在删除前需要确认 -I 超过三个文件或者递归删除前要求确认。比-i提示内容更少 -d 删除空目录 -r 递归删除目录及其内容 ``` 这些命令都是初学者可能会经常用到的,大家可以在自己的虚拟机上练习一下 - cp 拷贝 ``` -i 覆盖前询问(使前面的 -n 选项失效) -n 不要覆盖已存在的文件(使前面的 -i 选项失效) -R, -r, --recursive 递归复制目录及其子目录内的所有内容 -s 只创建符号链接而不复制文件 -f 强制,将目标文件无法打开则将其移除并重试 ``` - mv 移动/改名 ``` -f 覆盖前不询问 -i 覆盖前询问 -n 不覆盖已存在文件 #如果您指定了-i、-f、-n 中的多个,仅最后一个生效。 ``` ## 二、常用符号 ``` * 任意字符串 ? 任意字符 / 路径间隔符 ~ 当前用户的家目录 管理员家目录为/root,其它用户的家目录在/home/用户名 ```
上一篇:
Linux命令行介绍
下一篇:
Linux的基本优化
该分类下的相关小册推荐:
Linux云计算网站集群之nginx核心
RocketMQ入门与实践
Ansible自动化运维平台
Linux云计算网站集群架构之存储篇
shell脚本编程高手速成
Web大并发集群部署
Linux性能优化实战
Kubernetes云计算实战
系统性能调优必知必会
人人都会用的宝塔Linux面板
虚拟化之KVM实战
云计算Linux基础训练营(下)