实验楼Linux学习笔记(九)之 命令执行顺序控制与管道

Linux成长之路(五)——Linux任务计划crontab和命令执行顺序控制与管道 Linux任务计划crontab crontab的使用 我们时常会有一些定期定时的任务,如周期性的清理一下/tmp,周期性的去备份一次数据库,周期性的分析日志等等。而且有时候因为某些因素的限制,执行该任务的时间会很尴尬。本文将带你很好的利用 Linux 系统的计划工具。crontab简介 crontab 命令常见于 Unix 和类 Unix 的操作系统之中(Linux 就属于类 Unix 操作系 阅读详情

 

实验楼Linux学习笔记(九)之 命令执行顺序控制与管道



一、命令执行顺序的控制

1.顺序执行多条命令

简单的顺序执行可以使用“;”完成


2.有选择的执行命令

使用which来查找是否安装某个命令,如果找到就执行该命令,否则什么也不做。

<span style="font-size:18px;">$ which cowsay>/dev/null || echo "cowsay has not been install, please run 'sudo apt-get install cowsay' to install" 
#如果有cowsay命令就执行,没有就提示安装</span>


二、管道

 

管道是一种通信机制,通常用于进程间的通信(也可通过socket进行网络通信),它表现出来的形式就是将前面每一个进程的输出(stdout)直接作为下一个进程的输入(stdin)。管道又分为匿名管道和具名管道。

我们在使用一些过滤程序时经常会用到的就是匿名管道,在命令行中由|分隔符表示,具名管道简单的说就是有名字的管道,通常只会在源程序中用到具名管道。

 

<span style="font-size:18px;"># 查看/etc目录下有哪些文件和目录
$ ls -al /etc
 
# 使用管道通过管道将前一个命令(ls)的输出作为下一个命令(less)的输入,然后就可以一行一行地看。
$ ls –al /etc | less
 
Cut命令
打印每一行的某一字段
# 打印/etc/passwd文件中以:为分隔符的第1个字段和第6个字段分别表示用户名和其家目录。
$ cut /etc/passwd -d ':' -f 1,6
 
# 打印/etc/passwd文件中每一行的前N个字符。
# 前五个(包含第五个)
$ cut /etc/passwd -c -5
# 前五个之后的(包含第五个)
$ cut /etc/passwd -c 5-
# 第五个
$ cut /etc/passwd -c 5
# 2到5之间的(包含第五个)
$ cut /etc/passwd -c 2-5
 
grep 命令
在文本中或 stdin 中查找匹配字符串
# 搜索/home/shiyanlou目录下所有包含"shiyanlou"的所有文本文件 
$ grep -rnI "shiyanlou" ~ 
# -r 参数表示递归搜索子目录中的文件,-n表示打印匹配项行号,-I表示忽略二进制文件。
 
# 查看环境变量中以"yanlou"结尾的字符串
$ export | grep ".*yanlou$" # $就表示一行的末尾。
 
 wc 命令
简单小巧的计数工具
wc 命令用于统计并输出一个文件中行、单词和字节的数目。
 
# 输出/etc/passwd文件的统计信息
$ wc /etc/passwd
 
# 行数
$ wc -l /etc/passwd
# 单词数
$ wc -w /etc/passwd
# 字节数
$ wc -c /etc/passwd
# 字符数
$ wc -m /etc/passwd
# 最长行字节数
$ wc -L /etc/passwd
 
统计 /etc 下面所有目录数
$ ls -dl /etc/*/ | wc –l 
 
sort 排序命令
# 默认为字典排序
$ cat /etc/passswd | sort
反转排序:
$ cat /etc/passwd | sort -r
按特定字段排序:
$ cat /etc/passwd | sort -t':' -k 3
# 上面的-t参数 用于指定字段的分隔符,这里是以":"作为分隔符;
# -k 字段号用于指定对哪一个字段进行排序。这里/etc/passwd文件的第三个字段为数字,默认情况下是一字典序排序的,
# 如果要按照数字排序就要加上-n参数:
$ cat /etc/passwd | sort -t':' -k 3 -n</span>


uniq 去重命令

uniq 命令可以用于过滤或者输出重复行。

过滤重复行

我们可以使用history命令查看最近执行过的命令(实际为读取${SHELL}_history文件,如我们环境中的~/.zsh_history文件),只想查看使用了那个命令而不需要知道具体干了什么,那么你可能就会要想去掉命令后面的参数然后去掉重复的命令:

<span style="font-size:18px;">$ history | cut -c 8- | cut -d ' ' -f 1 | uniq
# uniq命令只能去连续重复的行,不是全文去重
# 排序之后再过滤重复行,可以全文过滤
$ history | cut -c 8- | cut -d ' ' -f 1 | sort | uniq
# 或者$ history | cut -c 8- | cut -d ' ' -f 1 | sort -u</span>


 

 

 

 

在虚拟机上搭建FTP服务器 chroot_list_file=/etc/vsftpd/chroot_list # 对chroot_list下用户限制。[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf #打开配置文件。# 指定用户的shell: -s /usr/bin/nologin。# 在配置文件中找到以下几行代码, 去掉注释(去掉 "#"号)# 指定用户主目录:/data/ftp/ftpuser -M。(2)修改配置文件,路径/etc/vsftpd/ 下的文件。 阅读详情

相关推荐

MATLAB控制信号发生器(USB-GPIB-HS)GPIB仪器控制教程(含matlab代码)

自动化测试时需要自动产生信号,通过matlab控制信号发生器的频率与功率,以实现自动化信号生成输出

qq_43686057的博客 1606

Linux命令执行顺序控制与管道

本篇内容:顺序执行、选择执行、管道、cut 命令、grep 命令、wc 命令、sort 命令等,高效率使用 Linux 的技巧。顺序执行多条命令通常情况下,我们每次只能在终端输入一条命令,按下回车执行,执行完成后,我们再输入第二条命令,然后再按回车执行……,当有时候我们会一次输入多条命令,这个时候的执行过程有是如何的呢?$ sudo apt-get update # 等待——————————然后输...

软测小生 2085

Chapter2、HDR流水线

HDR内容的获取(不同曝光时间的图片合成) 相机响应函数 HDR视频

qq_55621259的博客 2597

【LINUX】六、命令执行顺序

执行某个命令的时候,有时需要依赖于前一个命令是否执行成功。例如,假设你希望 将一个目录中的文件全部拷贝到另外一个目录中后,然后删除源目录中的全部文件 一、&& 命令 使用形式为: 命令1 && 命令2 命令1成功执行时,再执行命令2 $mv /apps/bin /apps/dev/bin && rm -r /apps/bin 将/apps/bin拷贝到/apps/dev/bin并删除/apps/bin $sort file1.txt > fi

Aurorara的博客 2089

告别迷茫!手把手教你用Synopsys VC USB VIP搭建验证平台(附UVM分层序列实战解析)

本文详细介绍了如何使用Synopsys VC USB VIP搭建验证平台,并深入解析UVM分层序列的实战应用。通过Step-by-Step的操作指南和关键配置示例,帮助验证工程师高效集成USB VIP,掌握从环境搭建到测试用例开发的全套技能,特别适合处理复杂协议验证的挑战。

weixin_42520573的博客 552

用AI免费制作30分钟电影:完整工作流与实操解析

AI视频生成技术正大幅降低影视创作门槛,但真正制作一部完整电影并非一键生成,而是涉及剧本、分镜、画面、配音、剪辑的复杂流水线。理解其基本原理,是将文本转化为连续视觉叙事的关键。对于创作者而言,掌握角色一致性控制、素材批量管理、免费额度合理分配等技术价值,能有效避免生成结果崩坏与资源浪费。该能力可广泛应用于短视频创作、独立电影预演、教学演示等场景。本文以30分钟AI电影制作为例,拆解从工具选择到成片输出的全流程,重点分析免费方案下的时间与积分成本,以及最容易翻车的环节,并给出基于实践验证的排查与优化策略。

weixin_29056865的博客 322

命令执行顺序控制与管道

顺序执行、选择执行、管道、cut 命令、grep 命令、wc 命令、sort 命令等,高效率使用 Linux 的技巧。 命令执行顺序控制 通常情况下,我们每次只能在终端输入一条命令,按下回车执行,执行完成后,我们再输入第二条命令,然后再按回车执行……,当有时候我们会一次输入多条命令,这个时候的执行过程又是如何的呢?下面我们将为大家详细讲解下命令的执行顺序的控制问题。 顺序执行多条命令 ...

平步青云的博客 920

ADAS系统架构与核心功能解析:从感知到执行的智能驾驶方案

高级驾驶员辅助系统(ADAS)是现代汽车智能化的核心技术,其本质是通过传感器融合、算法决策与车辆控制,构建一个“感知-决策-执行”的闭环系统。在技术原理上,ADAS依赖摄像头、毫米波雷达、激光雷达等多源传感器进行环境感知,并通过深度学习模型与融合算法(如卡尔曼滤波)构建精准的环境模型。其技术价值在于提供主动安全冗余与驾驶舒适性,核心应用场景包括自动紧急制动(AEB)、自适应巡航(ACC)及车道保持辅助(LKA)等。随着传感器成本下降与域控制器算力提升,ADAS正从高端配置向主流车型快速普及,并逐步向高阶导航

weixin_31062533的博客 414

(大数据工程师学习路径)第一步 Linux 基础入门----命令执行顺序控制与管道...

介绍 顺序执行、选择执行、管道、cut 命令、grep 命令、wc 命令、sort 命令等,高效率使用 Linux 的技巧。 一、命令执行顺序的控制 1.顺序执行多条命令 通常情况下,我们每次只能在终端输入一条命令,按下回车执行,执行完成后,我们再输入第二条命令,然后再按回车执行…… 你可能会遇到如下使用场景:我需要使用apt-get安装一个软件,然后安装完成后立即运行安装的软件(或命令工...

weixin_30466421的博客 257

智能体开发套件(ADK)介绍

city } ---") city_normalized = city . lower() . replace(" " , "") # 模拟天气数据库 mock_weather_db = {

lpfasd123的博客 1401

在 SAP BTP 中玩转工厂日历 Maintain Factory Calendars 实战指南

工厂日历是企业关键的时间主数据,基于国家假日历定义工作日与非工作日,广泛应用于生产计划、采购交期、财务结账等业务场景。SAP系统通过三类应用(维护节假日、假日历和工厂日历)实现分层配置。工厂日历作为顶层配置,支持工作日模式设定和例外规则添加。在多系统架构中,工厂日历可通过集成场景同步,确保数据一致性。应用支持创建、编辑和查看功能,包含有效期设置、例外规则管理和多语言文本维护。合理设置工厂日历对业务运营至关重要,需注意命名规范和有效期选择,避免历史数据问题。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 222

【Linux】命令执行顺序控制与管道

用;号 隔开每个命令, 每个命令按照从左到右的顺序,顺序执行 用&& 号 隔开每个命令, 每个在执行成功后, 顺序执行后面的命令 用 || 号 隔开每个命令, 每个命令在执行失败后, 顺序之后后面的命令. && 与 || 的组合,相当于 if ($?=0) { xxx} else {www} ($?是表示上一条命令执行返回结果的环境变量) 例如:$ which l

子非鱼的博客 2428

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

【Linux 基础入门】(九)命令执行顺序控制与管道

文章目录1 介绍2 命令执行顺序的控制2.1 顺序执行多条命令2.2 有选择的执行命令3 管道3.1 试用3.2 cut 命令,打印每一行的某一字段3.3 grep 命令,在文本中或 stdin 中查找匹配字符串3.4 wc 命令,简单小巧的计数工具3.5 sort 排序命令3.6 uniq 去重命令4 作业 1 介绍 内容: 顺序执行、选择执行、管道、cut 命令、grep 命令、wc 命令、sort 命令等,高效率使用 Linux 的技巧。 知识点 cut,grep,wc,sort 命令的使用 管

桑凯旋的博客 999

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Linux:命令执行顺序控制与管道

下面 我们就将通过一些常用的可以使用管道的"过滤程序"来帮助你熟练管道的使用。学习过 C 语言的用户应该知道在 C 语言里面&&表是逻辑与,而且还有一个||表示逻辑或, 同样 Shell 也有一个||,它们的区别就在于,shell中的这两个符号除了也可用于表示逻辑 与和或之外,就是可以实现这里的命令执行顺序的简单控制。符号"&&"就是用来实现选择性执行的,它表示如果前面的命令执行结果(不是表示终端输出 的内容,而是表示命令执行状态的结果)返回0则执行后面的,否则不执行,你可以从境变“ 量“$?

omygodvv的博客 517

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Linux学习之命令执行顺序控制与管道

一、命令执行顺序的控制 1 顺序执行多条命令 当我们需要使用apt-get安装一个软件,然后安装完成后立即运行安装的软件(或命令工具),又恰巧你的主机才更换的软件源还没有更新软件列表(比如之前我们的环境中,每次重新开始实验就得sudo apt-get update,现在已经没有这个问题了),那么你可能会有如下一系列操作: $ sudo apt-get update # 等待————————...

薛定谔的猫-前端领域 474

Linux下命令执行顺序控制与管道

一、命令执行顺序的控制 顺序执行多条命令 通常情况下,每次只能在终端输入一条命令,执行完成后,再输入第二条命令,然后再按回车执行。要想一次性输入完执行,可以使用简单的顺序执行";"来完成。例如: sudo apt-get update sudo apt-get install cowsay cowsay hello curry 可以一次性输入sudo apt-get update; su...

CurryCoder的个人博客 624

Linux学习笔记(十)——命令执行顺序控制及管道

命令执行顺序控制及管道命令执行顺序的控制管道cut命令打印每一行的某一字段grep命令在文本中或 stdin 中查找匹配字符串wc统计命令sort排序命令uniq去重命令练习 命令执行顺序的控制 顺序执行多条命令 简单的顺序执行可以使用;完成 cut,grep,wc,sort命令的使用 有选择的执行命令 使用which来查找是否安装某个命令,如果找到就执行该命令,否则什么也不做 管道 管道是一种通...

weixin_44578662的博客 333

linux学习笔记(实验楼) 实验10 命令执行顺序控制与管道

一、实验介绍 1.1 实验内容 顺序执行、选择执行、管道、cut 命令、grep 命令、wc 命令、sort 命令等,高效率使用 Linux 的技巧。 1.2 实验知识点 cut,grep,wc,sort命令的使用 管道的理解   二、命令执行顺序的控制 通常情况下,我们每次只能在终端输入一条命令,按下回车执行,执行完成后,我们再输入第二条命令,然后再按回车执行……,...

qq_39117008的博客 462

Linux学习10:命令执行顺序控制与管道

1、命令执行顺序的控制1)顺序执行多条命令通常在终端只能输入一条命令,按下回车键,等待执行完成后,再输入第二条命令,或者可以一次性输完,让他自己去依次执行就好了。简单的顺序执行可以使用 ; 来完成 ,例如在安装软件时:sudo apt-get update; sudo apt-get install sometool ; sometool 然后让他自己运行。2)有选择的执行命令对于上面的顺序执行,

牛肉面面的博客 810

第七课 命令执行顺序控制与管道

文章目录一、介绍二、命令执行顺序的控制三、管道1. cut 命令,打印每一行的某一字段2.grep 命令,在文本中或 stdin 中查找3.wc 命令,简单小巧的计数工具4.sort 排序命令5.uniq 去重命令 一、介绍 实验内容 顺序执行、选择执行、管道、cut 命令、grep 命令、wc 命令、sort 命令等,高效率使用 Linux 的技巧。 实验知识点 cut,grep,wc,sort 命令的使用 管道的理解 二、命令执行顺序的控制 三、管道 管道是一种通信机制,通常用于进程间的通信(也可通过

qq_42288228的博客 441

Linux打怪通关攻略(9)命令执行顺序控制与管道

文章目录命令执行顺序控制与管道命令执行顺序控制顺序执行多条命令有选择的执行命令管道试用cut 命令,打印每一行的某一字段grep 命令,在文本中或 stdin 中查找匹配字符串wc 命令,简单小巧的计数工具sort 排序命令uniq 去重命令tr 命令 删除或者替换字符col 命令join 命令 合并文件paste 命令 合并文件 命令执行顺序控制与管道 命令执行顺序控制 通常情况下,我们每次只能在终端输入一条命令,按下回车执行,执行完成后,我们再输入第二条命令,然后再按回车执行。 有时候我们会一次输入多条

阿东的学习记录 970

Linux命令学习笔记(七):命令执行顺序控制与管道

命令执行顺序控制与管道顺序执行有选择的执行管道cut 命令grepwcsortuniq 顺序执行 多条命令一行输入以分号隔开。 例如 $ sudo apt-get update;sudo apt-get install some-tool;some-tool # 让它自己运行 有选择的执行 which cowsay显示cowsay是否存在,存在则返回0,不存在则返回1。结果可以在$?中查看。一开始cowsay在本环境中是不存在的。 【命令解释】 && 表示选择性执行。只有当前面执行结果

JohnnyLin 550
上一篇: 实验楼Linux学习笔记(八)之任务计划crontab
下一篇: 实验楼Linux学习笔记(十)之文本处理命令
橘子局
博客等级 码龄14年 70粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值