Linux基础篇学习——常见系统命令:ls,pwd,cd,date,hwclock,passwd,su,clear,who,w,uname,uptime,last,dmesg,free,ps,top
ls 显示指定目录中的内容
ls [OPTION]... [FILE]...
OPTION
-a --all,显示所有文件包括隐藏文件
-l 列出长属性,显示出文件的属性与权限等数据信息
-i 列出inode节点号 结合-l使用
-d 显示目录本身,且不列出目录中的列表文件
-h 将文件大小以易读的KB,MB方式显示出来
-A 显示所有文件,但不包括当前目录和上一级目录
-g 和-l类似,显示列表结果,但是不显示文件所属者
-n 和-l类似,只是显示的所属用户和组不是名称而是对应的id
-r --reverse,将排序结果以倒序方式显示
-c 和-lt一起使用,显示列表并且以ctime(文件状态最后改变时间)排序 ls默认以文件名排序
-s 以文件大小排序
-t 以修改时间排序
pwd 显示当前工作目录
pwd [OPTION]...
OPTION
是链接文件时:
-L --logical,直接显示链接文件的路径 默认
-P --physical,显示链接文件所指向的文件(多层连接时,显示最终指向的文件)
实例
[root@localhost ~]# cd /var/mail
[root@localhost mail]# pwd
/var/mail
[root@localhost mail]# pwd -P
/var/spool/mail
[root@localhost mail]# pwd -L
/var/mail
cd 切换目录
OPTION
cd [~] 默认回到用户主目录 即环境变量HOME指定的目录
cd . . 上一级目录
cd - 上一个工作目录
cd . 当前目录
实例
[root@localhost ~]# cd /home
[root@localhost home]# cd /var
[root@localhost var]# cd -
/home
[root@localhost home]# cd /var
[root@localhost var]# cd ..
[root@localhost /]#
date 显示或设置系统时间与日期
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
OPTION
-d 显示字符串所指的日期与时间 字符串前后必须加上双引号
-s 根据字符串来设置日期与时间 字符串前后必须加上双引号,只有root权限才能设置
-u 显示GMT(格林尼治平太阳时间)
FORMAT
%F 显示完整日期
%Y 显示年 以四位数来表示
%m 显示月 01-12
%d 显示日 01-31
%H 显示时 00-23
%M 显示分 00-60
%S 显示秒 00-60
%s 显示总秒数 起算时间为1970-01-01 00:00:00 UTC
实例
时间格式化输出
[root@localhost ~]# date +%F
2019-10-05
[root@localhost ~]# date +%Y-%m-%d
2019-10-05
[root@localhost ~]# date +%H:%M:%S
11:32:21
-d 应用
1.显示字符串所指的日期与时间
[root@localhost ~]# date -d "1 day ago" +%Y-%m-%d
2019-10-04
[root@localhost ~]# date +%H:%M:%S;date -d "2 second" +%H:%M:%S
11:36:08
11:36:10
2.字符串格式转换
[root@localhost ~]# date -d "20191212" +%Y-%m-%d
2019-12-12
-s 应用
1.根据字符串来设置日期 但是会将时间设定为00:00:00
[root@localhost ~]# date -s 20190922
Sun Sep 22 00:00:00 CST 2019
2.根据字符串来设置日期与时间
[root@localhost ~]# date -s "20190922 09:25:00"
Sun Sep 22 09:25:00 CST 2019
同步网络时间
[root@localhost ~]# yum install ntpdate -y
[root@localhost ~]# ntpdate ntp.api.bz
5 Oct 11:45:39 ntpdate[7305]: step time server 114.118.7.161 offset 1131455.609556 sec
hwclock,clock 显示或者设置硬件时钟
hwclock [function] [option...]
OPTION
-s --hctosys,将系统时间调整为和硬件时间一致 以硬件为准
-w --systohc,将硬件时间调整为和系统时间一致 以系统为准
Linux时钟
系统时钟 是指当前Linux Kernel中的时钟
硬件时钟 是主板上由电池供电的时钟,可以在BIOS中进行设置
1.当Linux启动时,硬件时钟会去读取系统时钟的设置,然后系统时钟就会独立于硬件运作
2.Linux中的所有命令(包括函数)都是采用的系统时钟设置
passwd 设置用户口令
passwd[-k][-l][-u[-f]][-d][-e][-nmindays][-xmaxdays][-wwarndays][-i
inactivedays][-S][--stdin][username]
passwd ;修改当前用户密码
passwd username ;修改指定用户的密码,只有root有权限
OPTION
-d 清除用户密码串
-l 锁定用户
-u 解锁用户
-e DATE 过期期限,日期
-i DAYS 非活动期限
-n DAYS 密码的最短使用期限 只对普通用户有限制,root仍可以修改
-x DAYS 密码的最长使用期限
-w DAYS 警告期限
--stdin echo "PASSWD" | passwd --stdin username
su 变更为其他使用者的身份
su [options...] [-] [user [args...]]
OPTION
-&-l -login,类似于登录操作(登录shell),环境变量、工作目录等都会改变 未指定user,默认切换到root
-m&-p 执行su命令时不改变环境变量
-c command 变更账号为USER的使用者,并执行指令(command)后再变回来
su 会切换root用户,但是当前的环境变量还是以前用户的环境变量(非登录shell)
实例
1.su
[zhao@localhost ~]$ su
Password:
[root@localhost zhao]# echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/zhao/.local/bin:/home/zhao/bin
2.su -&su -l
[zhao@localhost ~]$ su -l
Password:
Last login: Sat Oct 5 16:01:54 CST 2019 on pts/1
[root@localhost ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
3.su -c command
[zhao@localhost etc]$ cat shadow
cat: shadow: Permission denied
[zhao@localhost etc]$ su -c "cat shadow" root
Password:
root:$6$G6rrTzzz75OjgLKl$lNe/HfL9IA2rC1LaGX4RxQxLHYtaSqEionyPsTYFdKGJKPBxZWS8oN9A/6uvoya4/J65AxzV/zuV8qeNPXW1T0::0:99999:7:::
……
zhao:$6$66FVAJVw$FyfAM5mGHn3wrcLgNkfQjC1xwGXGlCnF1Le95Lo1SaFfRL93HvoQwSaV9IInaRbaONB4xGnUv1eCLSfh16Wev0:18174:0:99999:7:::
clear 清屏操作(Ctrl+l)
who 显示当前登录到系统中的用户
who [OPTION]... [ FILE | ARG1 ARG2 ]
OPTION
-a --all,处理/run/utmp文件或有全部信息的指定文件 -bdlprtTu
-b 最近一次系统启动的日期和时间
-H 显示一个标题
-l 显示登录进程
-m 显示关于当前终端的信息 等同于who am i(I)
-q 打印用户登录清单
-r 显示系统运行级别
-d 显示没有被init重新生成的所有到期的进程
w 显示当前登录到系统中的用户,显示正在运行的程序
w [options] user [...]
OPTION
-h 省略标题
-f 关闭用户从何处登录系统
-V 显示版本
-i 显示ip信息 默认显示
-s 省略登录时间,cpu的耗时
uname 显示操作系统相关信息
uname [OPTION]...
OPTION
-a 显示完整信息
-s 显示内核名称 uname不加选项默认显示内核名称
-n 显示hostname
-i 显示架构信息
-r 显示内核发行信息
分析 uname -r 结果
[root@localhost ~]# uname -r
3.10.0-957.el7.x86_64
3 主版本号
10 次版本号
0 对次版本的修订次数或者补丁包数
957 编译的次数
el7 版本的特殊信息,el表示企业版Linux
x86_64 系统架构
关于次版本号:
主版本号3以前的次版本号区分奇偶版本,偶数代表稳定版,奇数代表测试版;
主版本号3以后的次版本号不再区分奇偶版本,建议安装长期维护版本。
uptime 显示当前系统的运行信息
uptime [options]
OPTION
-V 显示版本
分析 uptime 结果
10:51:25 up 3:05, 2 users, load average: 0.01, 0.03, 0.05
10:51:25 当前系统时间
up 3:05 累计运行时间,重启后清零
2 users 登录用户数
up 3:05 平均负载量:最近1分钟,5分钟,15分钟 值越低表示系统性能越好
系统的平均负载是指在特定时间间隔内运行队列中的平均进程数
last 列出当前或者之前登陆系统的用户相关信息
last [options]
OPTION
-a 将IP或主机名显示在最后一行
-d 将IP地址转换成主机名称
-n 显示的行数 last -n 5
-R 不显示IP或者主机名
-x 显示关机、重启以及执行级别的改变等信息
dmesg 显示开机信息
free 显示系统内存状态
free [options]
OPTION
-h 以MB、G为单位显示内存使用情况
-b 以Byte为单位显示内存使用情况
-k 以KB为单位显示内存使用情况
-m 以MB为单位显示内存使用情况
-g 以GB为单位显示内存使用情况
-t 显示内存总和列
-s N 持续观察内存使用情况 free -s 2
free命令的所有输出值都是从/proc/meminfo中读出的
ps 显示系统进程瞬间的运行动态
ps [options]
OPTION
-A 显示所有进程信息 与-e具有同样效用
-a 显示当前终端下的进程信息,包括其他用户的进程
-u 显示以用户为主的进程状态
-x 列出完整信息 与-a一同使用
-l 较长、较详细的将该PID的信息列出
-j 工作的格式
-f 做一个更为完整的输出
分析 ps -l 结果
[root@localhost ~]# ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
4 S 0 8985 8970 0 80 0 - 28860 do_wai pts/0 00:00:00 bash
0 R 0 9102 8985 0 80 0 - 38309 - pts/0 00:00:00 ps
F 代表这个程序的旗标(flag),4代表使用者为superuser
S 代表这个程序的状态(stat)
UID 代表执行者身份
PID 进程的ID号
PPID 父进程的ID
C CPU使用的资源百分比
PRI 进程的优先执行权 越小越早被执行
NI 进程的nice值,即可被执行的优先级的修正数值
ADDR 内核函数,指出该程序在内存的哪个部分 执行程序 -
SZ 使用掉的内存大小
WCHAN 目前这个程序是否正在运作当中 若为 - 表示正在运作
TTY 登入者的终端机位置
TIME 使用掉的CPU时间
CMD 所下达的指令名称
top 实时监测系统处理器状态
last [options]
OPTION
top -d # 页面更新一次的时间间隔s,默认是5秒
top -b # 以批次的方式执行top
top -p pid 指定pid观察
top -n # 与-b配合使用,表示需要进行几次top命令的输出结果
可执行操作
| 操作 | 含义 |
|---|---|
| ? | 显示在top当中可以输入的命令 |
| N | 以PID排序 |
| P | 以%CPU排序 |
| M | 以%MEM排序 |
| T | 由进程使用的时间累计排序显示 |
| k | 给某一个pid一个信号。可以用来杀死进程 |
| r | 给某个pid重新定制一个nice值(即优先级) |
| q | 退出top(用ctrl+c也可以退出top) |
分析 top 结果
top - 20:02:18 up 4:05, 2 users, load average: 0.00, 0.01, 0.05
Tasks: 94 total, 1 running, 93 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 995896 total, 703792 free, 135404 used, 156700 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 689064 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
8739 root 20 0 0 0 0 S 0.3 0.0 0:06.05 kworker/0:3
top - 20:02:18 up 4:05, 2 users, load average: 0.00, 0.01, 0.05
当前系统的运行信息 与uptime显示的信息相同
Tasks: 94 total, 1 running, 93 sleeping, 0 stopped, 0 zombie
| 表项 | 含义 |
|---|---|
| 94 total | 总计进程 |
| 1 running | 运行进程 |
| 93 sleeping | 休眠(挂起)进程 |
| 0 stopped | 停止进程 |
| 0 zombie | 僵尸进程 |
%Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
| 表项 | 含义 |
|---|---|
| 0.3 us | user用户空间占用cpu的百分比 |
| 0.3 sy | system内核空间占用cpu的百分比 |
| 0.0 ni | niced改变过优先级的进程占用cpu的百分比 |
| 99.3 id | 空闲 cpu百分比 |
| 0.0 wa | IO wait IO等待输入输出的cpu时间百分比 |
| 0.0 hi | hardware IRQ 硬中断 占用cpu的百分比 |
| 0.0 si | software IRQ 软中断 占用cpu的百分比 |
| 0.0 st | 被hypervisor偷去的时间 |
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
| 表项 | 含义 |
|---|---|
| PID | 进程号 |
| USER | 进程所有者 |
| PR | 进程优先级 |
| NI | nice值 负值表示高优先级,正值表示低优先级 |
| VIRT | 进程使用的虚拟内存量,单位kb |
| RES | 进程使用的、未被换出的物理内存大小,单位kb |
| SHR | 共享内存,单位kb |
| S | 进程状态 |
| %CPU | 上次更新到现在的CPU时间占用百分比 |
| %MEM | 进程使用的物理内存百分比 |
| TIME+ | 进程使用的CPU时间总计,单位0.01秒 |
| COMMAND | 进程名称(命令名/命令行) |
S 进程状态表
| D | R | S | T | Z |
|---|---|---|---|---|
| 不可中断的睡眠状态 | 运行 | 睡眠 | 跟踪/停止 | 僵尸进程 |
如有错误,请批评指正,谢谢!
Linux基础篇学习——常见系统命令:ls,pwd,cd,date,hwclock,passwd,su,clear,who,w,uname,uptime,last,dmesg,free,ps,top的更多相关文章
- Linux随笔-鸟哥Linux基础篇学习总结(全)
Linux随笔-鸟哥Linux基础篇学习总结(全) 修改Linux系统语系:LANG-en_US,如果我们想让系统默认的语系变成英文的话我们可以修改系统配置文件:/etc/sysconfig/i18n ...
- Linux基础篇学习——Linux文件系统之文件存储与读取:inode,block,superblock
Linux文件类型 代表符号 含义 - 常规文件,即file d directory,目录文件 b block device,块设备文件,支持以"block"为单位进行随机访问 c ...
- Linux基础篇学习——文件目录常用管理命令mkdir,cat,more,less,ln,file,cp,find,split,mv
mkdir 创建目录 -p 递归创建目录 -v 显示创建信息 [root@zycentos7 ~]# mkdir -p {mylinux/{bin,conf,lib,logs,webapps/{doc ...
- VBox&vmware虚拟机安装Linux及Linux基础入门学习
VBox&vmware虚拟机安装Linux及Linux基础入门学习 通过VMware workstation安装Linux 在安装虚拟机之前,我特意上网搜索了一下目前常使用的虚拟机软件,了解了 ...
- (转)Linux基础知识学习
Linux基础知识学习 原文:http://blog.csdn.net/ye_wei_yang/article/details/52777499 一.Linux的磁盘分区及目录 Linux的配置是通过 ...
- ARM Linux驱动篇 学习温度传感器ds18b20的驱动编写过程
ARM Linux驱动篇 学习温度传感器ds18b20的驱动编写过程 原文地址:http://www.cnblogs.com/NickQ/p/9026545.html 一.开发板与ds18b20的入门 ...
- linux基础命令学习笔记(二)
linux基础命令学习笔记(二) 1.kill :终止进程 kill pid (唯一标示一个进程) kill -9 强制终止 kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...
- Linux基础入门学习笔记20135227黄晓妍
学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用L ...
- 20135231 —— Linux 基础入门学习
20135231 何佳 学习计时:共12小时 读书:5 代码:2 作业:2 博客:3 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用Li ...
随机推荐
- Haproxy的应用
如上图所示,在 192.168.1.0/24 这个网段的客户端想要访问在 172.20.0.0/20 网段内的服务器,所有的通信又不想暴露在互联网上,因此可以在这两个网段内分别都放一台 Haproxy ...
- 【转载】ArcGIS中的WKID
原出处:http://www.cnblogs.com/liweis/p/5951032.html 提到坐标系统,大家多少能明白一些,但在运用时,有些朋友搞得不是非常清楚,以后专门来总结.在实地生产项目 ...
- ASP.NET Core 反向代理部署知多少
引言 最近在折腾统一认证中心,看到开源项目IdentityServer4.Admin集成了IdentityServer4和管理面板,就直接拿过来用了.在尝试Nginx部署时遇到了诸如虚拟目录映射,请求 ...
- 《Deep Learning of Graph Matching》论文阅读
1. 论文概述 论文首次将深度学习同图匹配(Graph matching)结合,设计了end-to-end网络去学习图匹配过程. 1.1 网络学习的目标(输出) 是两个图(Graph)之间的相似度矩阵 ...
- 从头认识js-js中的继承
要彻底弄明白js中的继承,我们首先要弄清楚js中的一个很重要的概念那就是原型链. 1.什么是原型链? 我们知道每个构造函数都有一个原型对象,原型对象包含一个指向构造函数的指针,而实例都包含一个指向原型 ...
- .NET微服务从0到1:服务注册与发现(Consul)
目录 Consul搭建 基于Docker搭建Consul 基于Windows搭建Consul ServiceA集成Consul做服务注册 Ocelot集成Consul做服务发现 更多参考 Consul ...
- 简单易懂的Servlet路径问题
关于servlet路径,我看了一下网上别人的博客园,发现都有一个通病,讲的太专业了,又抓不住关键部分,往往看一眼就不想看第二眼.所以我特地准备了初学者所通识的servlet路径问题. 1.标识符 /j ...
- call 和 apply 和 bind的区别
有些东西说忘就往,每天记录自己忘记的东西重新学习一遍,挺好 作用:call()和apply()用法都是一样的,改变this的指向问题 区别:接收参数的方式不同, (bind 方法是附加在函数调用后面使 ...
- ubuntu1804自带的vim和vi都是用什么版本?
之前搜索vim一些命令时,经常看到有人说ubuntu自带的vim是是vim.tiny的,功能不全. 什么需要先卸载,再重装,真的是这样吗? 我查了一下,vim的版本号 vim --version vi ...
- 用Navicat Premium 连接mysql数据库时报错 -- 1130 Host xxxx is not allowed to connect to this MySQL server
用Navicat Premium 连接mysql数据库时报错 报错原因:此时的MySQL默认不能远程连接. 解决方案:修改MySQL配置 具体步骤: 1.登陆服务器,进入数据库 mysql -uroo ...