搜索
首页电脑教程电脑知识Linux exec命令手册
Linux exec命令手册Feb 18, 2024 pm 04:42 PM
exec命令echo外壳脚本

Linux exec命令手册

功能描述

exec命令在Linux中用于调用并执行指定的命令。通常在shell脚本中使用exec命令来执行其他命令。当在当前终端中使用exec命令时,指定的命令执行完毕后会取代当前进程,而不是创建一个新的子进程。

命令语法

exec [选项]

选项含义

选项 含义
-c 使用一个空环境来执行
-a shell会将名字作为零参数传递给执行的命令
-l 在shell的开头放置一个破折号参数传递给命令

参考实例

实例1

// 首先使用echo命令将文本“www.linuxyz.cn”进行输出:
[root@bunian ~]# echo www.bunian.cn
www.bunian.cn

// 然后再使用exec命令调用echo命令输出同样的信息,并且对输出的信息进行对比,输入指令如下所示:
[root@bunian ~]# exec -c echo www.bunian.cn
www.bunian.cn

// 通过比较两者执行后的结果来看,所实现的功能是相同的,即使用exec命令调用echo命令成功。

实例2

// 查找bunian.txt 并备份为bunian.txt.bak
[root@bunian ~]# find /test -name "bunian.txt" -exec cp {} {}.bak \;

知识扩展

一、系统调用 exec 是以新的进程去代替原来的进程,但进程的PID保持不变。因此,可以这样认为,exec系统调用并没有创建新的进程,只是替换了原来进程上下文的内容。原进程的代码段,数据段,堆栈段被新的进程所代替。

一个进程主要包括以下几个方面的内容:

  • 一个可以执行的程序
  • 与进程相关联的全部数据(包括变量,内存,缓冲区)
  • 程序上下文(程序计数器PC,保存程序执行的位置)
  • 二、exec是一个函数簇,由6个函数组成,分别是以excl和execv打头的。

    执行exec系统调用,一般都是这样,用fork()函数新建立一个进程,然后让进程去执行exec调用。我们知道,在fork()建立新进程之后,父进各与子进程共享代码段,但数据空间是分开的,但父进程会把自己数据空间的内容copy到子进程中去,还有上下文也会copy到子进程中去。而为了提高效率,采用一种写时copy的策略,即创建子进程的时候,并不copy父进程的地址空间,父子进程拥有共同的地址空间,只有当子进程需要写入数据时(如向缓冲区写入数据),这时候会复制地址空间,复制缓冲区到子进程中去。从而父子进程拥有独立的地址空间。而对于fork()之后执行exec后,这种策略能够很好的提高效率,如果一开始就copy,那么exec之后,子进程的数据会被放弃,被新的进程所代替。

    以上是Linux exec命令手册的详细内容。更多信息请关注PHP中文网其他相关文章!

    声明
    本文转载于:每日运维。如有侵权,请联系admin@php.cn删除
    Python竟然还可以计算农历!Python竟然还可以计算农历!Apr 30, 2023 am 09:43 AM

    最近处理工作任务的时候遇到了转换农历的问题。农历,是我国现行的传统历法。它是根据月相的变化周期,每一次月相朔望变化为一个月,参考太阳回归年为一年的长度,并加入二十四节气与设置闰月以使平均历年与回归年相适应[1]。对于我们处理数据来说,并不需要去详细研究农历与公历之间的转换关系。在Python中,ZhDate库支持农历-公历互相转换、日期加减以及全中文日期生成,内置了1900-2100年的农历数据,仅依赖Python内置模块。github.com/CutePandaSh/zhdate由于ZhDat

    cmdtelnet命令不被识别为内部或外部命令cmdtelnet命令不被识别为内部或外部命令Jan 03, 2024 am 08:05 AM

    cmd窗口中提示telnet不是内部或外部命令这个问题想必曾经也深深的困扰着你吧,这个问题的出现并不是因为用户们的操作哪里有什么不对用户们也不用太担心只需要一些小小的操作设置就可以让cmd窗口提示telnet不是内部或外部命令这个问题迎刃而解,一起来看看小编今天为大家带来的cmd窗口提示telnet不是内部或外部命令解决办法吧。cmd窗口提示telnet不是内部或外部命令解决办法:1、打开电脑的控制面板。2、找到程序和功能。3、找到左侧的启动或关闭Windows功能。4、找到“telnet客户端

    如何在 Rocky Linux 9 / AlmaLinux 9 上安装 KVM如何在 Rocky Linux 9 / AlmaLinux 9 上安装 KVMJun 09, 2023 pm 10:07 PM

    KVM是内核虚拟机KernelVirtualizationMachine与大多数虚拟化平台一样,它将硬件资源(如CPU、内存、存储、网络、图形等)抽象化,并将它们分配给独立于宿主机运行的客户机。先决条件预装RockyLinux9/AlmaLinux9具有管理员权限的sudo用户互联网连接1、验证是否启用了硬件虚拟化首先,你需要验证你的系统是否启用了虚拟化功能。在大多数现代系统上,此功能已在BIOS中启用。但可以肯定的是,你可以验证是否如图所示启用了虚拟化。该命令探测是否存在VMX(虚拟机扩展Vi

    如何查看和管理 Linux 命令历史记录如何查看和管理 Linux 命令历史记录Aug 01, 2023 pm 09:17 PM

    如何在Linux中查看命令历史记录在Linux中,我们使用history命令来查看所有以前执行的命令的列表。它有一个非常简单的语法:history与历史记录命令配对的一些选项包括:选项描述-c清除当前会话的命令历史记录-w将命令历史记录写入文件-r从历史记录文件重新加载命令历史记录-n限制最近命令的输出数量只需运行history命令即可在Linux终端中查看所有以前执行的命令的列表:除了查看命令历史记录之外,您还可以管理命令历史记录并执行修改先前执行的命令、反向搜索命令历史记录甚至完全删除历史记

    在 Windows 11 上安装 VMware Workstation 只需一个简单的命令在 Windows 11 上安装 VMware Workstation 只需一个简单的命令Sep 12, 2023 pm 08:33 PM

    步骤1:打开PowerShell或命令提示符在您的Windows11或10系统上,转到搜索框并根据您的选择键入CMD或Powershell。这里我们使用PowerShell。当它出现在结果中时,选择“以管理员身份运行”。这是因为我们需要管理员用户访问权限才能运行命令以在Windows上安装任何软件。第2步:检查Winget可用性好吧,尽管所有最新版本的Windows10和11默认情况下都带有Winget工具。但是,让我们首先检查它是否可以使用。类型:winget作为回报,您将看到可与命令一起使用

    超全!Python获取某一日期是“星期几”的六种方法!超全!Python获取某一日期是“星期几”的六种方法!Apr 19, 2023 am 09:28 AM

    在Python进行数据分析时,按照日期进行分组汇总也是被需要的,比如会找到销量的周期性规律。那么在用Python进行数据统计之前,就需要额外增加一步:从指定的日期当中获取星期几。比如2022年2月22日,还正好是正月廿二星期二,于是乎这一天登记结婚的人特别多。本文就以2022-02-22为例,演示Python获取指定日期是“星期几”的6种方法!weekday()datetime模块是一个Python内置库,无需再进行pip安装,它除了可以显示日期和时间之外,还可以进行日期和时间的运算以及格式化。

    如何在 Ubuntu 22.04 / 20.04 上配置 FreeIPA 客户端如何在 Ubuntu 22.04 / 20.04 上配置 FreeIPA 客户端Jun 09, 2023 pm 02:18 PM

    FreeIPA是一个强大的开源身份管理系统,提供集中的身份验证、授权和计费服务。在我们之前的帖子中,我们已经讨论了FreeIPA服务器在RHEL8/RokcyLinux8/AlmaLinux8上的安装步骤。在FreeIPA服务器上创建用户进行集中认证登录到你的FreeIPA服务器并创建一个名为sysadm的用户,运行以下命令:$sudokinitadminPasswordforadmin@LINUXTECHI.LAN:$$sudoipaconfig-mod--defaultshell=/bin/

    用Python自动生成数据日报!用Python自动生成数据日报!May 25, 2023 pm 05:01 PM

    其实我觉得蛮简单,核心就是你组装好日报的内容模板,然后将变化的量交给python去填充,需要用到的基本就是python处理excel、word和ppt等相关的库。熟练的使用它们,你就可以自动化一条龙了。日报,是大部分打工人绕不过的难题。对于管理者来说,日报是事前管理的最好抓手,可以了解团队的氛围和状态。可对于员工来说,那就有的聊了。对于重复性的工作,我非常推荐大家使用Python将其变成模块化、自动化,帮助我们实现高效办公。下面我们通过一个补写销售日报的案例,展示一下Python自动化办公的优势

    See all articles

    热AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智能驱动的应用程序,用于创建逼真的裸体照片

    AI Clothes Remover

    AI Clothes Remover

    用于从照片中去除衣服的在线人工智能工具。

    Undress AI Tool

    Undress AI Tool

    免费脱衣服图片

    Clothoff.io

    Clothoff.io

    AI脱衣机

    AI Hentai Generator

    AI Hentai Generator

    免费生成ai无尽的。

    热门文章

    R.E.P.O.能量晶体解释及其做什么(黄色晶体)
    3 周前By尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O.最佳图形设置
    3 周前By尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O.如果您听不到任何人,如何修复音频
    3 周前By尊渡假赌尊渡假赌尊渡假赌

    热工具

    mPDF

    mPDF

    mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

    SublimeText3 英文版

    SublimeText3 英文版

    推荐:为Win版本,支持代码提示!

    MinGW - 适用于 Windows 的极简 GNU

    MinGW - 适用于 Windows 的极简 GNU

    这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

    ZendStudio 13.5.1 Mac

    ZendStudio 13.5.1 Mac

    功能强大的PHP集成开发环境

    禅工作室 13.0.1

    禅工作室 13.0.1

    功能强大的PHP集成开发环境