为啥linux 的 source命令在linux的脚本中没有作用 我使用了#!/bin/sh以及#!/bin/bash 都不好用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥linux 的 source命令在linux的脚本中没有作用 我使用了#!/bin/sh以及#!/bin/bash 都不好用相关的知识,希望对你有一定的参考价值。
“ . ” 也使用了同样不好用,求解释
source命令用法:source FileName
作用:在当前bash环境下读取并执行FileName中的命令。
注:该命令通常用命令“.”来替代。
如:source .bash_rc 与 . .bash_rc 是等效的。
注意:source命令与shell scripts的区别是,
source在当前bash环境下执行命令,而scripts是启动一个子shell来执行命令。这样如果把设置环境变量(或alias等等)的命令写进scripts中,就只会影响子shell,无法改变当前的BASH,所以通过文件(命令列)设置环境变量时,要用source 命令。
在bash中可以使用source 可执行文件 来执行一个可执行文件,功能和./一样
例: source 1.sh
./1.sh
不过要更改1.sh的权限
在shell脚本中也可以使用 ,例如
#/bin/bash
#filename:1.sh
echo ok!
source 1.sh
这时运行1.sh时就会无限调用1.sh 输出为ok!无限循环,不过同样要更改1.sh文件的权限
估计您source命令不好用的原因就是可执行权限没开,使用
chmod 777 1.sh 更改1.sh文件的权限
就可以使用了 参考技术A 使用 source执行你的脚本
为啥ubuntu打开终端之后没有命令行提示符
如图 ,没有命令行提示符,可以键入,但是无法执行命令? 怎么恢复??
参考技术A 你是不是打开的不是终端,是VIM呢?如果确实没有的话,我还是建议重新安装系统。另外你是运维的话可以看看Linux 这个可以试试。建议看看《Linux就该这么学》 里面有个专栏是 Linux命令大全(手册) 加入我们的群,一起讨论 Linux就该这么学》 参考技术B环境变量加了source ~/.bashrc
解决:
$ gedit ~/.bashrc
注释或删除掉source ~/.bashrc语句保存退出,完美解决。
以上是关于为啥linux 的 source命令在linux的脚本中没有作用 我使用了#!/bin/sh以及#!/bin/bash 都不好用的主要内容,如果未能解决你的问题,请参考以下文章
linux JDK安装环境变量配置过了也保存并退出了,但是执行source profile命令后,JDK还是搜不到是为啥?
linux下.bashrc为啥每次打开终端都要source一下才有效,如何才能永远生效?
为啥每次进入命令都要重新source /etc/profile 才能生效