百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 优雅编程 > 正文

Python(二十)Linux的shell介绍 linux pythonpath

sinye56 2024-12-24 15:31 7 浏览 0 评论

Editor:Lonelyroots

Linux的shell介绍:

1. 文本传输:

1.1. 管道:

| :前面命令的输出作为后面命令的输入,可使用管道符 | 来建立一个管道行。
find -name '*.txt':在ls文件夹中寻找后缀名为.txt的文件。

find -name '*.txt' | args grep hello:查找带有hello,后缀名为.txt的文件。

1.2. 输入重定向:

输入重定向是指把命令或可执行程序的标准输入重定向到指定的文件中,也就是输入可以不来自键盘而是来自一个指定的文件。输入重定向主要用于改变一个命令的输入源,输入重定向的一般形式为“命令 < 文件名”。
wc -l test.txt:查看test.txt文件的内容行数,运行结果需返回文件名。
wc -l < test.txt:输入重定向:将输入重定向到test.txt中,查看test.txt文件的内容行数,运行结果无需返回文件名。

1.3. 输出重定向:

输出重定向是指把命令或可执行程序的标准输出或标准错误输出重定向到指定的文件中,命令中的输出不显示在屏幕上,而是写入到指定的文件中,以便完成以后的问题定位或其他的用途。输出重定向的一般形式为“命令 > 文件名”,>是覆盖,>>是追加,标准输出echo。
cat test.txt:查看test.txt文件内容
echo:相当于Python语法里的print
echo nihao test > test1.txt:将nihao test输入到test1.txt文件中,查看文件后如下图,清空test1.txt里所有内容,添加nihao test,相当于Python文件处理中的'w'方法。
echo hello >> test1.txt:将hello输入到test1.txt文件中,查看文件后如下图,无需清空test1.txt里所有内容,直接添加nihao test,相当于Python文件处理中的'a'方法。

1.4. 输出到终端:

tty:查看当前终端信息,即挂载路径,先开的终端为0,后开的为1,以此类推。


who即who am i:可以查看当前用户登录的详细信息。



echo hello >> /dev/pts/1:终端0输入hello,终端1输出hello。当然了,终端1也可以输出给终端0。

2. 文件传输:

2.1. alias文件别名:

使用格式:alias 新的命令='原命令 选项/参数'
当需要跳转多个文件路径,如cd py_case/test,可以采用取别名的方式alias cpcc='cd py_case/test'


可以使用alias cpcc:来查看cpcc的别名,如下图所示:但是这个别名,每当退出终端以后,别名就失效了。所以要想永久生效,按如下方式操作:
vim .bashrc:.bashrc是一个专门做别名处理的文件,预永久添加别名,需进入文件中配置。

alias cpcc='cd py_case/test':cpcc别名作用:切换到py_case/test文件夹中。

退出界面,再次输入cpcc,会发现报错,所以需要重启终端,才可以使用该别名。


【注】重点:最好不要建立以下四个别名:
alias cd='rm -rfv':切换改成了删除。
alias sudo='sudo halt':提权改成了关机。
alias cp='mv':文件拷贝变成移动
alias vim='vim+q':无法使用vim配置文件,进去就退出

2.2. 文件打包:

三种压缩包格式:tar,gzip,bzip2,



tar -cvf chenhong.tar a.py cx.py xc.py:将三个文件打包至chenhong.tar压缩包中,其中-cvf中的f必须为最后一个。
ls -l:以列表形式查看文件内容,可以看到压缩包的占用内存为10240千字节(KB),没有起到压缩的作用。所以我们需要使用到另外两种压缩包格式。

tar -zvcf chen.gz a.py cx.py xc.py:将三个文件打包至chen.gz压缩包中,其中-zcvf中的f必须为最后一个。

tar -jvcf chen.bz a.py cx.py xc.py:将三个文件打包至chen.bz压缩包中,其中-jcvf中的f必须为最后一个。

进入到MobaXterm,可以清楚地看到创建的压缩包:

也可以将文件,压缩至上一级目录:../

2.3. 文件压缩与解压:

mkdir chen:在bd用户下方的py_case文件夹中新建一个文件夹chen


tar -zxf chen.gz -C chen:将chen.gz解压到chen的下一级。

tar -jxf chen.bz -C chen:将chen.bz解压到chen的下一级。

2.4. 综合使用:

备份文件并压缩:即find查找、输出重定向和压缩综合使用。
find -name '*.txt' >> a.list:备份文件至文件夹a.list。
tar -T a.list -zcvf ch.gz:-T备份文件的意思,一定要加,a.list是备份文件夹名,压缩文件夹命名为ch.gz。

2.5. 文件链接:

软链接:就相当于快捷方式,用vim修改原文件,软链接文件也修改了。
硬链接:相当于备份了一个文件,用vim修改原文件,硬链接文件也修改了。原文件删除,备份文件依旧在。
ln -s test.txt t.soft:软链接:给test.txt创建一个软链接t.soft


ln test.txt p.hard:硬链接:备份test.txt文件,命名为p.hard

3. 进程管理:

3.1. 进程概念和监视:

静态进程:不会动
ps命令:


终端的各个属性:

ps -aux:静态进程:查看所有进程。

动态进程:会动
top命令:

top -d 2:动态进程:每2秒钟刷新一次,按q退出。

vim b.py:新建一个b.py文件,写入:

while True:
        pass

python b.py:运行b.py文件。


ps -aux | grep python:查询所有python运行的进程

3.2. 进程暂停和杀死:


kill -9 1867:在MobaXterm中杀死b.py进程:回车确定以后,Linux中出现如下界面,即进程已杀死:

4. shell简介:

4.1. shell介绍:

Shell 是一个 C 语言编写的脚本语言,它是用户与 Linux 的桥梁,用户输入命令交给 Shell 处理,shell是一个命令解释器,是一个工具箱, Shell 将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户。
Shell不只是一种解释器,还是一种编程工具,称为脚本语言。

4.2. shell发展:

想深入了解,可以自行去查看网上的资料。

4.3. shell脚本:

vim test.sh创建一个shell脚本,



可以发现,虽然创建了这个test.sh的文件,但是bd没有执行该文件的权限:

可以进行如下两种操作(二选一即可):
①:chmod u+x test.sh:给test.sh文件增加执行文件的权限。cat test.sh:查看test.sh文件。

②:bash test.sh:直接查看test.sh文件

文章到这里就结束了!希望大家能多多支持Python(系列)!六个月带大家学会Python,私聊我,可以问关于本文章的问题!以后每天都会发布新的文章,喜欢的点点关注!一个陪伴你学习Python的新青年!不管多忙都会更新下去,一起加油!
Editor:Lonelyroots

相关推荐

CTO偷偷传我的系统性能优化十大绝招(万字干货)

上篇引言:取与舍软件设计开发某种意义上是“取”与“舍”的艺术。关于性能方面,就像建筑设计成抗震9度需要额外的成本一样,高性能软件系统也意味着更高的实现成本,有时候与其他质量属性甚至会冲突,比如安全性、...

提升效率!VMware虚拟机性能优化十大实用技巧

我40岁,干跨境婚恋中介的。为服务各国用户,常得弄英语、日语、俄语系统环境,VMware虚拟机帮了不少忙。用久了发现优化下性能,效率能更高。今儿就来聊聊优化技巧和同类软件。一、VMware虚拟...

低延迟场景下的性能优化实践

本文摘录自「全球C++及系统软件技术大会」ScottMeyers曾说到过,如果你不在乎性能,为什么要在C++这里,而不去隔壁的Pythonroom呢?今天我们就从“低延迟的概述”、“低延迟系...

Linux性能调优之内存负载调优的一些笔记

写在前面整理一些Linux内存调优的笔记,分享给小伙伴博文没有涉及的Demo,理论方法偏多,可以用作内存调优入门博文内容涉及:Linux内存管理的基本理论寻找内存泄露的进程内存交换空间调优不同方式的...

优化性能套路:带你战胜这只后段程序员的拦路虎

来源|极客时间《卖桃者说》作者|池建强编辑|成敏你好,这里是卖桃者说。今天给大家推荐一篇文章,来自倪朋飞老师的专栏《Linux性能优化实战》,文章主要讲的是优化性能的套路,这几乎是每个后端程序员...

SK海力士CXL优化解决方案已成功搭载于Linux:带宽提升30%,性能提升12%以上

SK海力士宣布,已将用于优化CXL(ComputeExpressLink)存储器运行的自研软件异构存储器软件开发套件(HMSDK)中主要功能成功搭载于全球最大的开源操作系统Linux上,不但提升了...

Linux内核优化:提升系统性能的秘诀

Linux内核优化:提升系统性能的艺术在深入Linux内核优化的世界之前,让我们先来理解一下内核优化的重要性。Linux内核是操作系统的核心,负责管理系统资源和控制硬件。一个经过精心优化的内核可以显著...

Linux系统性能优化:七个实战经验

Linux系统的性能是指操作系统完成任务的有效性、稳定性和响应速度。Linux系统管理员可能经常会遇到系统不稳定、响应速度慢等问题,例如在Linux上搭建了一个web服务,经常出现网页无法打开、打开速...

腾讯面试:linux内存性能优化总结

【1】内存映射Linux内核给每个进程都提供了一个独立且连续的虚拟地址空间,以便进程可以方便地访问虚拟内存;虚拟地址空间的内部又被分为内核空间和用户空间两部分,不同字长的处理器,地址空间的范围也不同...

Linux文件系统性能调优《参数优化详解》

由于各种的I/O负载情形各异,Linux系统中文件系统的缺省配置一般来说都比较中庸,强调普遍适用性。然而在特定应用下,这种配置往往在I/O性能方面不能达到最优。因此,如果应用对I/O性能要求较高,除...

Nginx 性能优化(吐血总结)

一、性能优化考虑点当我需要进行性能优化时,说明我们服务器无法满足日益增长的业务。性能优化是一个比较大的课题,需要从以下几个方面进行探讨当前系统结构瓶颈了解业务模式性能与安全1、当前系统结构瓶颈首先需要...

Linux问题分析与性能优化

排查顺序整体情况:top/htop/atop命令查看进程/线程、CPU、内存使用情况,CPU使用情况;dstat2查看CPU、磁盘IO、网络IO、换页、中断、切换,系统I/O状态;vmstat2查...

大神级产品:手机装 Linux 运行 Docker 如此简单

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:灵昱Termux作为一个强大的Android终端模拟器,能够运行多种Linux环境。然而,直接在Termux上运行Docker并不可行,需要...

新手必须掌握的Linux命令

Shell就是终端程序的统称,它充当了人与内核(硬件)之间的翻译官,用户把一些命令“告诉”终端程序,它就会调用相应的程序服务去完成某些工作。现在包括红帽系统在内的许多主流Linux系统默认使用的终端是...

Linux 系统常用的 30 个系统环境变量全解析

在Linux系统中,环境变量起着至关重要的作用,它们犹如隐藏在系统背后的“魔法指令”,掌控着诸多程序的运行路径、配置信息等关键要素。尤其在shell脚本编写时,巧妙运用环境变量,能让脚本如虎...

取消回复欢迎 发表评论: