【面向就业的Linux基础】从入门到熟练,探索Linux的秘密(十二)-管道、环境变量、常用命令

大致介绍了一下管道、环境变量、一些常用的基本命令,可以当作学习笔记收藏学习一下!!!

文章目录

前言

一、管道

二、环境变量

1.概念

2.查看

 3.修改

4.常用环境变量

三、系统状况

总结


前言

大致介绍了一下管道、环境变量、一些常用的基本命令,可以当作学习笔记收藏学习一下!!!


提示:以下是本篇文章正文内容,下面案例可供参考

一、管道

文件重定向输入,以及重定向输出到文件。Shell 还有一种功能,就是可以将两个或者多个命令(程序或者进程)连接到一起,把一个命令的输出作为下一个命令的输入,以这种方式连接的两个或者多个命令就形成了管道(pipe)

连接多个命令,这被称为管道符。Linux 管道的具体语法格式如下:

command1 | command2
command1 | command2 [ | commandN... ]

当在两个命令之间设置管道时,管道符|左边命令的输出就变成了右边命令的输入。只要第一个命令向标准输出写入,而第二个命令是从标准输入读取,那么这两个命令就可以形成一个管道。大部分的 Linux 命令都可以用来形成管道。

这里需要注意,command1 必须有正确输出,而 command2 必须可以处理 command2 的输出结果;而且 command2 只能处理 command1 的正确输出结果,不能处理 command1 的错误信息。

 要点:

  • 管道命令仅处理stdout,会忽略stderr。
  • 管道右边的命令必须能接受stdin
  • 多个管道命令可以串联。

与文件重定向的区别:

  • 文件重定向左边为命令,右边为文件
  • 管道左右两边均为命令,左边有stdout,右边有stdin。

 统计当前目录下所有python文件的总行数。

find . -name '*.py' | xargs cat | wc -l

xargs将标准输入变成文件参数 

wc -l 统计标准输入得内容的总行数

二、环境变量

1.概念

环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。 环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。

 Linux系统中会用很多环境变量来记录配置信息。
环境变量类似于全局变量,可以被各个进程访问到。我们可以通过修改环境变量来方便地修改系统配置。

2.查看

 列出当前环境下的所有环境变量:

env  # 显示当前用户的变量
set  # 显示当前shell的变量,包括当前用户的变量;
export  # 显示当前导出成用户变量的shell变量

 输出某个环境变量的值:

echo $PATH

 

 3.修改

 环境变量的定义、修改、删除操作可以参考shell语法——变量这一节的内容。

为了将对环境变量的修改应用到未来所有环境下,可以将修改命令放到~/.bashrc文件中。
修改完~/.bashrc文件后,记得执行source ~/.bashrc,来将修改应用到当前的bash环境下。

为何将修改命令放到~/.bashrc,就可以确保修改会影响未来所有的环境呢?

  •  每次启动bash,都会先执行~/.bashrc。
  • 每次ssh登陆远程服务器,都会启动一个bash命令行给我们。
  • 每次tmux新开一个pane,都会启动一个bash命令行给我们。
  • 所以未来所有新开的环境都会加载我们修改的内容。

4.常用环境变量

HOME:用户的家目录。

 PATH:可执行文件(命令)的存储路径。路径与路径之间用:分隔。当某个可执行文件同时出现在多个路径中时,会选择从左到右数第一个路径中的执行。下列所有存储路径的环境变量,均采用从左到右的优先顺序。

LD_LIBRARY_PATH:用于指定动态链接库(.so文件)的路径,其内容是以冒号分隔的路径列表。

C_INCLUDE_PATH:C语言的头文件路径,内容是以冒号分隔的路径列表。

CPLUS_INCLUDE_PATH:CPP的头文件路径,内容是以冒号分隔的路径列表。

PYTHONPATH:Python导入包的路径,内容是以冒号分隔的路径列表。

JAVA_HOME:jdk的安装目录。

CLASSPATH:存放Java导入类的路径,内容是以冒号分隔的路径列表。

三、系统状况

top:查看所有进程的信息(Linux的任务管理器)

  • 打开后,输入M:按使用内存排序
  • 打开后,输入P:按使用CPU排序
  • 打开后,输入q:退出

查看硬盘使用情况 

df -h

 查看内存使用情况

free -h

 查看当前目录占用的硬盘空间

du -sh

查看所有进程

ps aux

杀死编号为pid的进程

kill -9 pid
  •  传递某个具体的信号
kill -s SIGTERM pid

 查看所有网络连接

netstat -nt

列出当前登陆的用户

w

 检查是否连网

ping www.baidu.com

 


总结

上述大致就是Linux的管道、环境变量和一些常用命令,可以当作笔记收藏一下!!!

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

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

相关文章

【数据结构与算法】快速排序霍尔版

💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《数据结构与算法》 期待您的关注 ​

#数据结构 笔记一

数据结构是计算机存储、组织数据的方式。 数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。数据结构是带有结构特性的数据元素的集合,它研究的是数据的逻辑结构和物理结构以及它们之间的相互关系,并对这种结构定义相适应的运算&#xff0…

Linux命令-专题-文件读取

1 需求 2 语法 3 示例 在Linux中,有多种命令可以用于读取或查看文件内容。以下是一些常用的命令: 1.cat:显示文件内容,并将多个文件合并成一个文件输出。 cat filename 2.tac:与cat相反,它按行反向显示文件…

STM32实现硬件IIC通信(HAL库)

文章目录 一. 前言二. 关于IIC通信三. IIC通信过程四. STM32实现硬件IIC通信五. 关于硬件IIC的Bug 一. 前言 最近正在DIY一款智能电池,需要使用STM32F030F4P6和TI的电池管理芯片BQ40Z50进行SMBUS通信。SMBUS本质上就是IIC通信,项目用到STM32CubeMXHAL库…

华为机试HJ51输出单向链表中倒数第k个结点

华为机试HJ51输出单向链表中倒数第k个结点 题目: 想法: 因为要用链表,且要找到倒数第k个结点,针对输入序列倒叙进行构建链表并找到对应的元素输出。注意因为有多个输入,要能接受多次调用 class Node(object):def __…

OSS存储桶漏洞总结

简介 OSS,对象存储服务,对象存储可以简单理解为用来存储图片、音频、视频等非结构化数据的数据池。相对于主机服务器,具有读写速度快,利于分享的特点。 OSS工作原理: 数据以对象(Object)的形式…

Qt | Qt常用类列举和说明

Qt库是一个广泛用于跨平台图形用户界面(GUI)开发的框架。Qt5包含了大量的类和组件,用于建立和管理各种应用的用户界面、逻辑、网络通信等。这里列举一部分Qt5中的主要类,但请注意,Qt5的类库非常庞大,这里只列举了部分关键类: 基本框架类 QObject:所有Qt对象的基类。 Q…

mac|Mysql WorkBench 或终端 导入 .sql文件

选择Open SQL Script导入文件 在第一行加入use 你的schema名字,相当于选择了这个schema 点击运行即可将sql文件导入database 看到下面成功了即可 这时候可以看看左侧的目标database中有没有成功导入table,如果没有看到的话,可以点一下右上角的…

25_嵌入式系统总线接口

目录 串行接口基本原理 串行通信 串行数据传送模式 串行通信方式 RS-232串行接口 RS-422串行接口 RS-485串行接口 RS串行总线总结 RapidIO高速串行总线 ARINC429总线 并行接口基本原理 并行通信 IEEE488总线 SCSI总线 MXI总线 PCI接口基本原理 PCI总线原理 PC…

运动健康类和医学相关的常用算法

运动健康类和医学相关的算法涉及多种生物信号处理和数据分析方法。以下是一些常用的算法及其在运动健康和医学领域的应用: 运动健康类算法 1. 心率监测算法 峰值检测算法:检测PPG或ECG信号中的心跳峰值以计算心率。 from scipy.signal import find_p…

CSS【详解】长度单位 ( px,%,em,rem,vw,vh,vmin,vmax,ex,ch )

px 像素 pixel 的缩写,即电子屏幕上的1个点,以分辨率为 1024 * 768 的屏幕为例,即水平方向上有 1024 个点,垂直方向上有 768 个点,则 width:1024px 即表示元素的宽度撑满整个屏幕。 随屏幕分辨率不同,1px …

【大模型LLM面试合集】大语言模型基础_LLM为什么Decoder only架构

LLM为什么Decoder only架构 为什么现在的LLM都是Decoder only的架构? LLM 是 “Large Language Model” 的简写,目前一般指百亿参数以上的语言模型, 主要面向文本生成任务。跟小尺度模型(10亿或以内量级)的“百花齐放”…

SpringBoot运维篇

工程打包与运行 windows系统 直接使用maven对项目进行打包 jar支持命令行启动需要依赖maven插件支持&#xff0c;打包时须确认是否具有SpringBoot对应的maven插件 <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><ar…

MySQL——基础命令

1.数据库分类 数据库分为关系型数据库和NOSQL型数据库&#xff0c;其中关系型数据库有Mysql&#xff0c;SQL server &#xff0c;oracle&#xff0c; PostgreSQL等&#xff0c;NOSQL型数据库有Redis&#xff0c;MongoDB&#xff0c;hive &#xff0c; hbase等 2.数据库的安装…

最小表示法

#define _CRT_SECURE_NO_WARNINGS #include<bits/stdc.h> using namespace std;const int N (int)3e5 5; int n; int a[N * 2];int main() {cin >> n;for (int i 0; i < n; i) {cin >> a[i];a[i n] a[i]; // 构造成链}int l 0, r 1; // 一开始 r …

昇思12天

FCN图像语义分割 1. 主题和背景 FCN是由UC Berkeley的Jonathan Long等人于2015年提出的&#xff0c;用于实现图像的像素级预测。 2. 语义分割的定义和重要性 语义分割是图像处理和机器视觉中的关键技术&#xff0c;旨在对图像中的每个像素进行分类。它在很多领域有重要应用…

npm安装完yarn还是用不了?

前言 解决 找到你的包全局安装目录 复制路径&#xff0c;配置到Path全局环境变量 结果 不过发现在idea里还是用不了&#xff0c;此时你会想&#xff0c;这什么烂贴&#xff0c;没一点屁用 不过在重启idea之后&#xff0c;你也许就不会这么想了

秋招提前批面试经验分享(下)

⭐️感谢点开文章&#x1f44b;&#xff0c;欢迎来到我的微信公众号&#xff01;我是恒心&#x1f60a; 一位热爱技术分享的博主。如果觉得本文能帮到您&#xff0c;劳烦点个赞、在看支持一下哈&#x1f44d;&#xff01; ⭐️我叫恒心&#xff0c;一名喜欢书写博客的研究生在读…

服务端健康检查最常见的方式:TCP 端口探测与 HTTP 接口返回码探测

在现代分布式系统中&#xff0c;确保服务的高可用性和可靠性至关重要。服务端的健康检查是实现这一目标的关键步骤之一。通过定期检查服务的状态&#xff0c;我们可以及时发现和处理潜在的问题&#xff0c;从而避免系统故障和服务中断。本文将探讨两种最常见的服务端健康检查方…

数据结构/作业/2024/7/7

搭建个场景: 将学生的信息&#xff0c;以顺序表的方式存储&#xff08;堆区)&#xff0c;并且实现封装函数︰1】顺序表的创建&#xff0c; 2】判满、 3】判空、 4】往顺序表里增加学生、5】遍历、 6】任意位置插入学生、7】任意位置删除学生、8】修改、 9】查找(按学生的学号查…