Linux 学习笔记__Day2

news2025/1/31 4:24:48

目录

 十二、上传和下载文件  

十三、软件包的安装和卸载

十四、打包和压缩

1、zip命令

2、tar命令

3、其它打包压缩的命令

十五、Linux进程

1、查看进程

2、终止进程

十六、性能分析top

1、top输出结果说明

2、top常用的选项

3、top交互命令

4、demo01.cpp

5、demo02.cpp

十七、其它Linux命令

1、查找目录和文件find

2、查看系统磁盘分区df

3、查看内存和交换区free

4、远程拷贝目录和文件scp

5、列出目录文件树tree

6、统计目录的大小du

7、获取帮助man

 十二、上传和下载文件  

在SecureCRT中,把鼠标移到连接窗口的标题上,按鼠标右链,选“链接SFTP”标签。

显示本地当前目录:lpwd

显示服务器当前目录:pwd

列出本地目录中的内容:lls -l 目录名

列出服务器目录中的内容:lls -l 目录名

切换本地当前目录:lcd 目录名

切换服务器当前目录:cd 目录名

上传文件:put 文件名,可以用*匹配文件名。

下载文件:get 文件名,可以用*匹配文件名。

退出SFTPexit

十三、软件包的安装和卸载

以前,Linux只能用rpm安装软件包,需要手工解决软件包的依赖关系。

软件包A -> 软件包B -> 软件包C

yum(Yellow dog Updater, Modified)是基于rpm软件包管理器,能够从指定的服务器下载软件包并且安装,可以自动处理依赖性关系,一次安装所有依赖的软件包。

使用yum之前,必须保证Linux系统可以访问互联网(因为yum仓库在互联网上)。

软件包的安装和卸载需要系统管理员权限。

1、安装软件包。

yum -y install 软件包名

2、删除软件包。

yum -y remove 软件包名

3、升级软件包。

yum update 软件包名

4、如何知道需要安装的软件包名

百度之。

5、yum仓库

互联网上有很多yum仓库,不需要任何配置就可以使用。

不允许访问互联网的企业用户可能自建yum仓库。

6、查找软件包。

yum search 软件包名

7、列出所有可更新的软件包清单。

yum check-update

8、更新所有软件包。

yum update

9、列出所有可安装软件包的清单;

yum list

十四、打包和压缩

1、zip命令

先安装zip的软件包:yum -y install zip unzip

打包压缩:zip -q -r -d -u 压缩包文件名 目录和文件名列表

-q不显示令执行过程

-r:递归处理,打包各级子目录和文件。

-u把文件增加/替换到压缩包中。

-d:从压缩包中删除指定的文件

解包解压:unzip 压缩包文件名

注意:zip是通用的压缩格式,Windows和Linux都支持。

2、tar命令

压缩打包:tar zcvf 压缩包文件名 目录和文件名列表

解包解压:tar zxvf压缩包文件名

注意:tar压缩包文件在Windows系统中可以用winrar打开,但是,winrar不能生成tar压缩包文件。

3、其它打包压缩的命令

在Linux系统中,还有其它的打包压缩和解包解压命令,例如bzip/bunzip和gzip/gunzip。

十五、Linux进程

进程就是系统中正在运行的程序(linux的命令也是程序)

1、查看进程

ps命令可以查看进程。

方法一:

ps -ef|less

ps -ef|grep 关键字

 UID   启动进程的用户名。

PID 进程编号。

PPID 父进程编号。

C 进程当前占用CPU的百分比,如果该值过高,需要重点关注。

STIME 进程启动的时间。

TTY 运行进程的终端:tty1是图形化终端;tty2-tty6是本地字符界面终端;pts/0-255是虚拟终端;?是与终端无关的后台进程。

TIME 进程使用的CPU时间(合计)。

CMD 产生此进程的程序或命令。

方法二:

ps aux|less

ps aux|grep 关键字

UID   启动进程的用户名。

PID 进程编号。

%CPU 进程占用的CPU百分比。

%MEM 占用内存的百分比。

VSZ 该进程使用的虚拟內存量(KB)。

RSS 该进程使用的物理內存量(KB)。

TTY 运行进程的终端:tty1是图形化终端;tty2-tty6是本地字符界面终端;pts/0-255是虚拟终端;?是与终端无关的后台进程。

STAT 进程的状态。

START 进程启动的时间。

TIME 进程使用的CPU时间(合计)。

COMMAND 产生此进程的程序或命令。

其中STAT常见的状态有:

R 运行状态

S 休眠状态

T 暂停状态

Z 僵尸状态

< 优先级高的进程

N 优先级低的进程

s 进程的领导者(在它之下有子进程)

l 多线程

+ 前台显示的进程

2、终止进程

kill 进程编号

killall 程序名

-9的选项表示强行终止进程。

十六、性能分析top

top是Linux下常用的性能分析工具,能实时显示系统运行的总体状态和每个进程使用资源的况,类似于Windows的任务管理器。

top [选项]

1、top输出结果说明

前5行是系统整体的统计信息,从第8行开始进程信息

第一行是系统运行的统计信息

top:当前时间

up系统运行了多长时间

users:当前登录用户数

load average:系统负载,在一段时间内,CPU正在处理等待处理的进程数之和三个数值分别是最近1分钟、5分钟、15分钟的平均值。

load average三个数值,它能服务器的负载情况。但是,数值高了也并不能直接代表这服务器的性能有问题,可能是因为正在进行CPU密集型的计算,也有可能是因为I/O问题导致运行队列堵了。所以,当我们看到这个数值飙升的时候,还得具体问题具体分析。一个CPU在一个时间片里面只能运行一个进程,CPU核数的多少直接影响到这台机器在同时间能运行的进程数。一般来说,只要load average的数值超过这台机器的总核数,就基本没啥问题。

第二行是进程的统计信息

Tasks:当前有多少进程

running:正在运行的进程数

sleeping:正在休眠的进程数

stopped:停止的进程数

zombie:僵尸进程数

一般情况下,running越多,服务器自然压力就越大。

第三行是CPU的统计信息

us:用户进程CPU的百分比(shell程序、各种应用程序、web服务程序等都是运行在用户地址空间的进程)

sy:内核进程CPU的百分比(用户进程如果要使用系统资源都是通过内核进程来处理的,对操作系统来说,内核进程消耗时间应该是越少越好。但是,有一种情况会使sy变大,那就是大量的IO操作)

ni:改变过优先级的用户进程占用CPU百分比ni是nice的缩写,用户进程的优先级可以调整,这里显示的ni表示调整过优先级的进程消耗掉的CPU时间,如果系统中没有进程被调整过优先级,那么ni就显示为0)。

id:空闲CPU的百分比。

wa:等待磁盘I/O的进程占用CPU百分比(和CPU的处理速度相比,磁盘IO操作是非常慢的CPU在发出磁盘I/O操作的指令后,需要等待磁盘I/O操作的结果在磁盘I/O操作完成前,CPU只能处于等待状态。Linux系统在计算系统负载时会把CPU等待I/O操作的时间也计算进去所以,如果系统负载过高,可以通过wa来判断系统的性能瓶颈是不是I/O操作造成的)

hi:硬中断占用CPU百分比(硬中断是硬盘、网卡等硬件设备发送给CPU的中断消息,当CPU收到中断消息后需要进行处理,因此消耗CPU时间)。

si:软中断占用百分比(软中断是由程序发出的中断,也会执行相应的处理程序,消耗CPU时间)

st:用于有虚拟CPU的情况,用来指示被虚拟机掉的CPU时间

第四行是内存的统计信息

total:物理内存总量

free:空闲内存量

used:已使用的内存量

buff/cache:用作内核缓存的内存量

第五行是交换区的统计信息

total:交换区总量

free:空闲交换区大小。

used使用交换区的大小。

avail Mem下一次可分配进程的物理内存数量

从第八行开始是进程的信息

PID:进程id

USER:进程所有者

PR:进程的优先级,越小优先级越高

NI:nice值,负值表示高优先级,正值表示低优先级

VIRT:进程使用的虚拟内存,单位是kb

RES:进程使用的物理内存,单位kb

SHR:进程使用的共享内存,单位kb

S:进程状态(S表示休眠,R表示正在运行, Z表示僵死状态,N表示该进程优先值为负数,I表示空闲状态)

%CPU:进程占用的CPU使用率

%MEM:进程使用的物理内存和总内存的百分比

TIME+:进程使用的CPU时间总计,单位1/100秒

COMMAND:命令行

进程信息缺省按%CPU降序排列。

2、top常用的选项

-d 指定屏幕信息刷新的时间间隔,缺省是3秒,希望10秒刷新一次,则使用:top -d 10

-u  只显示指定用户的进程,希望只显示wucz用户的进程,则使用:top -u wucz

-p 只显示指定的进程,例如:top -p 1038, 1038是进程编号。

-i 不显示闲置的进程,例如:top -i

-c 显示产生进程的完整命令,例如:top -c

3、top交互命令

按下q键,退出top

按下h键,显示帮助画面

按下c键,显示产生进程的完整命令,等同于-c选项,再次按下c键,变为默认显示

按下f键,可以选择需要展示的项目

按下M键,根据驻留内存大小(RES)排序

按下P键,根据CPU使用百分比大小进行排序

按下T键,根据时间/累计时间进行排序

按下E键,切换顶部内存显示单位

按下e键,切换进程内存显示单位

按下l键,切换显示平均负载和启动时间信息。

按下t键,切换显示CPU状态信息

按下m键,切换显示内存信息

4、demo01.cpp

#include <iostream>

#include <unistd.h>



using namespace std;



int main()

{

  for (long ii=0;ii<10000000000000000;ii++)

  {

    int *ptr=new int[100000000];  // 申请100000000*sizeof(int)大小的内存。

    //delete [] ptr;                // 释放内存。

    if (ii%10==0) usleep(1);    // 每10次循环睡眠千分之一秒。

  }  

}

5、demo02.cpp

#include <iostream>

#include <fstream>   // ofstream类需要包含的头文件。

using  namespace std;



int main()

{

  ofstream fout;

  fout.open("demo.log", ios::trunc);   // 打开日志文件。



  for (int ii = 1; ii <= 50000000000; ii++)

    fout << "这是第"<<ii<<"行日志。" << endl;



  fout.close();    // 关闭文件,fout对象失效前会自动调用close()。



  cout << "操作文件完成。\n";

}

十七、其它Linux命令

1、查找目录和文件find

find 查找目录 -name "文件名" -print

例如:

1)在当前目录及子目录中查找*.h文件。

find . -name "*.h" -print

2)在/home/wucz目录及子目录中查找*.h文件。

find /home/wucz -name "*.h" -print

2、查看系统磁盘分区df

df

df -m

df -h

3、查看内存和交换区free

free -m

free -h

4、远程拷贝目录和文件scp

采用ssh协议在两个Linux服务器之间拷贝目录和文件。

1)把远程服务器的目录拷贝到本地。

scp -r root@192.168.150.130:/tmp/aa /tmp/bb

2)把本地目录拷贝到远程服务器。

scp -r /tmp/bb root@192.168.150.130:/tmp/cc

-r 表示递归处理(连同子目录一起拷贝)。

-P 指定ssh协议的通讯端口,缺省是22

5、列出目录文件树tree

tree [选项]

-d 只列出目录,不列出文件。

-D 列出目录和文件的修改时间。

-p 列出目录和文件的权限。

-f 列出目录和文件名的路径。

-a 列出隐藏的目录和文件。

6、统计目录的大小du

du -m

du -h

7、获取帮助man

安装英文帮助文档

yum -y install man-pages

安装中文帮助文档

man-pages-zh-CN

使用帮助

man 命令名

其余不常用命令用到时可自行百度解决   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2285089.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

“腾讯、钉钉、飞书” 会议开源平替,免费功能强大

在数字化时代&#xff0c;远程办公和线上协作越来越火。然而&#xff0c;市面上的视频会议工具要么贵得离谱&#xff0c;要么功能受限&#xff0c;甚至还有些在数据安全和隐私保护上让人不放心。 今天开源君给大家安利一个超棒的开源项目 - Jitsi Meet&#xff0c;这可是我在网…

接口技术-第4次作业

目录 作业内容 解答 1、设8255A接到系统中&#xff0c;端口A、B、C及控制口地址分别为304H、305H、306H及307H&#xff0c;工作在方式0&#xff0c;试编程将端口B的数据输入后&#xff0c;从端口C输出&#xff0c;同时&#xff0c;将其取反后从端口A输出。 2、下图中&#x…

【Elasticsearch】Elasticsearch的查询

Elasticsearch的查询 DSL查询基础语句叶子查询全文检索查询matchmulti_match 精确查询termrange 复合查询算分函数查询bool查询 排序分页基础分页深度分页 高亮高亮原理实现高亮 RestClient查询基础查询叶子查询复合查询排序和分页高亮 数据聚合DSL实现聚合Bucket聚合带条件聚合…

day6手机摄影社区,可以去苹果摄影社区学习拍摄技巧

逛自己手机的社区&#xff1a;即&#xff08;手机牌子&#xff09;摄影社区 拍照时防止抖动可以控制自己的呼吸&#xff0c;不要大喘气 拍一张照片后&#xff0c;如何简单的用手机修图&#xff1f; HDR模式就是让高光部分和阴影部分更协调&#xff08;拍风紧时可以打开&…

Linux - 进程间通信(2)

目录 2、进程池 1&#xff09;理解进程池 2&#xff09;进程池的实现 整体框架&#xff1a; a. 加载任务 b. 先描述&#xff0c;再组织 I. 先描述 II. 再组织 c. 创建信道和子进程 d. 通过channel控制子进程 e. 回收管道和子进程 问题1&#xff1a; 解答1&#xff…

langchain基础(二)

一、输出解析器&#xff08;Output Parser&#xff09; 作用&#xff1a;&#xff08;1&#xff09;让模型按照指定的格式输出&#xff1b; &#xff08;2&#xff09;解析模型输出&#xff0c;提取所需的信息 1、逗号分隔列表 CommaSeparatedListOutputParser&#xff1a;…

解除阿里云盘压缩包分享限制的最新工具(2025年更新)

前言 前段时间&#xff0c;为了在阿里云盘分享一些资料&#xff0c;尝试了好多种方法&#xff1a;改文件名后缀&#xff0c;打包自解压&#xff0c;使用将压缩文件追加在图片文件后&#xff0c;还有的一些工具&#xff0c;虽然能伪装文件但并不太好用&#xff0c;最后自己写了…

2025神奇的数字—新年快乐

2025年&#xff0c;一个神奇的数字&#xff0c;承载着数学的奥秘与无限可能。它是45的平方&#xff08;45&#xff09;&#xff0c;上一个这样的年份是1936年&#xff08;44&#xff09;&#xff0c;下一个则是2116年&#xff08;46&#xff09;&#xff0c;一生仅此一次。2025…

PWM频率测量方法

测量PWM&#xff08;脉宽调制&#xff09;信号的频率是嵌入式系统中的常见需求&#xff0c;尤其是在电机控制、LED调光、传感器信号处理等场景中。 在这里介绍两种测量PWM频率的方法&#xff1a;测频法与测周法。 1、测频&#xff08;率&#xff09;法 原理&#xff1a;在闸门…

【解决方案】VMware虚拟机adb连接宿主机夜神模拟器

1、本机&#xff08;宿主机&#xff0c;系统windows10&#xff09;ip为192.168.31.108 2、运行模拟器后本机cmd查看端口为62026 3、VMware虚拟机&#xff08;系统&#xff0c;kali&#xff09;adb连接192.168.31.108:62026报错 failed to connect to 192.168.31.108:16416: Co…

DroneXtract:一款针对无人机的网络安全数字取证工具

关于DroneXtract DroneXtract是一款使用 Golang 开发的适用于DJI无人机的综合数字取证套件&#xff0c;该工具可用于分析无人机传感器值和遥测数据、可视化无人机飞行地图、审计威胁活动以及提取多种文件格式中的相关数据。 功能介绍 DroneXtract 具有四个用于无人机取证和审…

基于springboot+vue的流浪动物救助系统的设计与实现

开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;…

利用ue5制作CG动画笔记

tips&#xff1a; 按住鼠标中键可以拖动枢轴点 在曲线编辑器中按住shift可以使曲线编辑保持在x轴 专业术语&#xff1a; CGI&#xff1a;计算机生成图象&#xff08;computer-generated imagery&#xff09;真实的不算&#xff0c;计算机生成的 Compositing&#xff1a;合…

AI 图片涌入百度图库

在这个信息爆炸的时代&#xff0c;我们习惯了通过搜索引擎来获取各种想要的信息和图片。然而&#xff0c;现在打开搜索引擎看到的却是许多真假难辨的信息——AI图片&#xff0c;这部分数据正以惊人的速度涌入百度图库&#xff0c;让小编不禁想问&#xff1a;未来打开百度图库不…

《多阶段渐进式图像修复》学习笔记

paper&#xff1a;2102.02808 GitHub&#xff1a;swz30/MPRNet: [CVPR 2021] Multi-Stage Progressive Image Restoration. SOTA results for Image deblurring, deraining, and denoising. 目录 摘要 1、介绍 2、相关工作 2.1 单阶段方法 2.2 多阶段方法 2.3 注意力机…

2025.1.26机器学习笔记:C-RNN-GAN文献阅读

2025.1.26周报 文献阅读题目信息摘要Abstract创新点网络架构实验结论缺点以及后续展望 总结 文献阅读 题目信息 题目&#xff1a; C-RNN-GAN: Continuous recurrent neural networks with adversarial training会议期刊&#xff1a; NIPS作者&#xff1a; Olof Mogren发表时间…

设置jmeter界面图标字体大小

设置jmeter界面图标字体大小 方法&#xff1a;点击“选项” -> 点击放大、缩小。&#xff08;可进行全局的菜单、左侧目录结构树、元件界面显示等字体图标的放大、缩小。&#xff09;

使用 MSYS2 qemu 尝鲜Arm64架构国产Linux系统

近期&#xff0c;我的师弟咨询我关于Arm64架构的国产CPU国产OS开发工具链问题。他们公司因为接手了一个国企的单子&#xff0c;需要在这类环境下开发程序。说实在的我也没有用过这个平台&#xff0c;但是基于常识&#xff0c;推测只要基于C和Qt&#xff0c;应该问题不大。 1. …

RocketMQ实战—1.订单系统面临的技术挑战

大纲 1.一个订单系统的整体架构、业务流程及负载情况 2.订单系统面临的技术问题一&#xff1a;下订单的同时还要发券、发红包、Push推送等导致性能太差 3.订单系统面临的技术问题二&#xff1a;订单退款时经常流程失败导致无法完成退款 4.订单系统面临的技术问题三&#xf…

Linux学习笔记——用户管理

一、用户管理命令 useradd #用户增加命令 usermod #用户修改命令 passwd #密码修改命令 userdel #用户删除命令 su #用户提权命令 1、useradd命令&#xff08;加用户&#xff09;&#xff1a; 创建并设置用户信息&#xff0c;使用us…