首页 > 系统相关 >shell 下 exec,source,.,bash和sh以及export得区别

shell 下 exec,source,.,bash和sh以及export得区别

时间:2024-07-19 21:18:00浏览次数:10  
标签:shell exec source sh 进程 执行 bash

exec执行命令时,不会启用新的shell进程。
  source和 .也不会启用新的shell进程,在当前shell中执行,设定的局部变量在执行完命令后仍然有效。
  bash或sh执行时,会另起一个子shell进程,其继承父shell进程的环境变量,其子shell进程的变量执行完后不影响父shell进程。
  exec是用被执行的命令行替换掉当前的shell进程,且exec命令后的其他命令将不再执行。
  例如在当前shell中执行 exec ls 表示执行ls这条命令来替换当前的shell ,即为执行完后会退出当前shell。
  为了避免父shell被退出,一般将exec命令放到一个子shell脚本中,在父sehll中调用这个子shell脚本,调用处可以用bash xx.sh(xx.sh为存放exec命令的脚本),这样会为xx.sh建立一个子shell去执行,当执行exec后该子shell进程就被替换成相应的exec的命令。

标签:shell,exec,source,sh,进程,执行,bash
From: https://www.cnblogs.com/exmyth/p/18312393

相关文章

  • Shell条件语句
    一、条件测试操作1.1、文件测试文件测试指的是根据给定的路径名称,判断对应的是文件还是目录,或者判断文件是否 可读、可写、可执行等。文件测试的常见操作选项如下,使用时将测试对象放在操作选项之后即可。格式1test条件表达式格式2[条件表达式]  #注意中括号和......
  • shell脚本一键编译WiFi配置需要的工具
    #!/bin/bashPLATFORM='hi3519dv500'PLATFORM_COMPILE=aarch64-v01c01-linux-musl-COMPILE_CC="$PLATFORM_COMPILE"gccCOMPILE_STRIP="$PLATFORM_COMPILE"stripCOMPILE_AR="$PLATFORM_COMPILE"arCOMPILE_RANLIB="$PLATFO......
  • Bash shell
    Bashshellvimfirst.sh#!/bin/bash#bash#!/bin/sh#shellviriable="nishidashabi"#变量间没有空格chmod-xfirst.sh./first.sh#执行shell语法shell解释器标志#!bin/bash#使用的是bashshell变量命名viriable="nishishui?"#变量定义没有空格for......
  • 【攻防技术系列+PowerShell】无文件落地攻击
    #红队#MSF#powershell虚拟机环境搭建:【Kali】,192.168.10.131【win7】,192.168.10.134接上文:【攻防技术系列】MSF进程迁移,用的是里面的1.exe。如果遇到端口占用情况,可以采用以下解决方案:之后在【win7】中使用powershell执行以下命令,实现无文件落地攻击powershell-nop......
  • WPF ListBox's ItemsSource depend on another's ListBoxItem and fully implemented
    //xaml<Grid><Grid.ColumnDefinitions><ColumnDefinition/><ColumnDefinition/><ColumnDefinition/></Grid.ColumnDefinitions><ListBoxGrid.Column="0"ItemsSource=&......
  • shell
    一、shell概述shell是一个命令行解释器,它接收应用程序/用户命令,然后调用操作系统内核。Shell还是一个功能相当强大的编程语言,易编写、易调试、灵活性强。Linux提供的shell解析器root@zhangkun:~#cat/etc/shells/bin/sh/bin/bash/usr/bin/bash/bin/dash/usr/bin/dash......
  • vim网络和安全的操作及shell的使用
    目录vim模式一般模式下的基本操作:一般模式切换到编辑模式:一般模式切换到命令模式:Vim多窗口使用技巧横向切割打开:纵向切割打开:关闭多窗口:窗口的切换:网络:定义:作用:网络的类型:网络状态的查询:netstat常用的端口号:通过网络下载文件wgetvim模式Vim编辑器:vi与vim......
  • 全程电子化升级脚本SHELL
     黑龙江ICPSP_UP.sh#!/bin/bash#定义变量formatted_date=$(date+"%Y%m%d")#获取当前日期,格式为YYYYMMDDtomcat_dir="/opt/tomcat/apache-tomcat-9.0.70_icpsp/"#Tomcat的根目录ftp_dir="${tomcat_dir}sun"#FTP上传文件的目录war_file="ICPSP.......
  • Shell编程速查手册(仅入门)
    一.Shell概述Shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Shell脚本(shellscript),是一种为shell编写的脚本程序......
  • 【攻防技术系列】shellcode免杀
    接上文:【攻防技术系列】shellcode初识二、shellcode简单免杀2.1什么是免杀?免杀技术全称为反杀毒技术(AntiAnti-Virus)简称“免杀“。它指的是一种能使病毒木马免于被杀毒软件查杀的技术。由于免杀技术的涉猎面非常广,包含反汇编、逆向工程、系统漏洞等技术,所以难度很高。2.2......