linux里source、sh、bash、./有什么区别

https://www.cnblogs.com/pcat/p/5467188.html

source  .  这两个是一样的 。在当前shell运行脚本。脚本不需要 执行权限。

sh 在子shell运行脚本。脚本不需要 执行权限。

./ 在子shell运行脚本,脚本需要 执行权限(x)

原文地址:https://www.cnblogs.com/654321cc/p/9333395.html

时间: 2024-10-14 16:02:41

linux里source、sh、bash、./有什么区别的相关文章

linux里source、sh、bash、./有什么区别(转)

add by zhj: 主要不同是,source是在当前shell中执行脚本,而sh, bash, ./是在当前shell的child shell中执行脚本 原文:http://www.cnblogs.com/pcat/p/5467188.html 在linux里,source.sh.bash../都可以执行shell script文件,那它们有什么不同吗? ----------- 1.source source a.sh 在当前shell内去读取.执行a.sh,而a.sh不需要有"执行权限&q

Linux里startup.sh 和 shutdown.sh

最近用socket编写了一个服务端程序,监听1024端口,检测客户端发来的请求,所在Linux里写启动和停止的脚本: 在Eclipse里java写好程序,右击导出生成 Runnable JAR file 然后socketServer.jar上传到服务器即可. 1.启动 startup.sh # ---------------------------------------------------- # Start script for the Socekt Server # ----------

linux里grep和egrep,fgrep的区别

https://blog.csdn.net/xiaoxinyu316/article/details/46729443 例子:1. :格式: grep [option] pattern filename 注意: pattern如果是表达式或者超过两个单词的, 需要用引号引用. 可以是单引号也可双引号, 区别是单引号无法引用变量而双引号可以. grep '\<Tom\>' file   包含单词Tom的行grep 'Tom savage' file 包含Tom savage的行grep '^To

Linux下sh/bash/source/.命令的区别(转)

一..sh文件介绍 .sh为Linux的脚本文件,我们可以通过.sh执行一些命令,可以理解为windows的.bat批处理文件. 二.点命令(.) .命令和source是同一个命令,可以理解为source的缩写,简称点命令. 三.sh/base/source/.命令执行.sh文件的区别 假如有一个文件test.sh,脚本内容如下 #!/bin/bash echo "step 1 sleeping" sleep 200 echo "step 2 sleeping" s

shell 脚本各种执行方式(source ./*.sh, . ./*.sh, ./*.sh)的区别

结论一: ./*.sh的执行方式等价于sh ./*.sh或者bash ./*.sh,此三种执行脚本的方式都是重新启动一个子shell,在子shell中执行此脚本. 结论二: .source ./*.sh和 . ./*.sh的执行方式是等价的,即两种执行方式都是在当前shell进程中执行此脚本,而不是重新启动一个shell 而在子shell进程中执行此脚本. 验证依据:没有被export导出的变量(即非环境变量)是不能被子shell继承的 验证结果: [[email protected] ~]#n

说说shell脚本中的export 和 source,bash

小弟刚刚接触linux,对linux上的很多东西都比较陌生,所以写一写博客,当做自己工作的总结和技术的积累吧,也是鞭策自己不断努力的去学习. 今天之所以起这个标题,把export,source ,bash这三个命令放在一起讲,实在是因为自己做了一件蠢事. 什么样的蠢事先不说.先分析下这三个命令. 首先是export命令. 1.export命令 Linux export命令用于设置或显示环境变量. 在shell中执行程序时,shell会提供一组环境变量.export可新增,修改或删除环境变量,供后

linux 里 /etc/passwd 、/etc/shadow和/etc/group 文件内容解释

•/etc/passwd文件用于存放用户账户信息,每行代表一个账户,每个账户的各项信息用冒号分割,例如: root:x:0:0:root:/root:/bin/bash username:password:uid:gid:allname:homedir:shell 1.用户名. 2.密码,“x”代表密码存储在/etc/shadow中:当该值为其他任意非“x”值时,可以通过root用户切换(不需要密码),但是都无法通过非root用户切换到相应用户,因为无法获得起密码了. 3.uid,用户id,0-

Linux 第17天 bash,find,正则,命令历史

Linux 第17天 时间: 20180803 目录 脚本测试 $-变量作用 bash的配置文件 忘记的内容回顾 命令历史 命令历史调用 bash算术运算help let 管道重定向 正则表达式和扩展表达式元字符 find命令的使用 脚本测试 [ X"$var = X"$var" ] 此种方式可以避免变量出现空值时提示语法错误 [ "$name" = "$test"] 此种方式也是为了避免变量出现空值,但是如果两个变量都空时会为真 [[

source $0 &amp; bash $0

bash file.sh这种形式启动时,$0才被设置成文件名. source是bash的内建命令,把文件读取到当前bash中执行,相当于在当前bash手动输入命令,所以$0是bash. 示例代码如下: a.sh echo "in a.sh. \$0 is: $0" b.sh echo "in b.sh. \$0 is: $0" . ./a.sh 运行如下: lxw ~$ echo $0 bash lxw ~$ source a.sh in a.sh. $0 is: