舉例說明source執行指令碼和sh執行指令碼的區別
檢視測試指令碼
[[email protected]]# cat test.sh
#!/bin/sh
user='whoami'
向測試變數賦值
[[email protected]]# user='222'
[[email protected]]# echo $user
222
給與執行許可權
[[email protected]]# chmod +x test.sh
執行指令碼測試變數
[[email protected]]# ./test.sh && echo $user
222
用sourece方式重新測試
whoami
解釋:
用source執行指令碼檔案,執行過程不另開程序,指令碼檔案中設定的變數在當前shell中可以看到;
用sh執行指令碼檔案,是在當前程序另開子程序來執行指令碼命令,指令碼檔案中設定的變數在當前shell中不能看到。
另外一點,source命令經常用點命令“.”來替代,用指令碼檔名本身執行(如果shell指令碼具有可執行許可權)和用sh命令執行指令碼的作用完全相同
相關推薦
舉例說明source執行指令碼和sh執行指令碼的區別
檢視測試指令碼 [[email protected]]# cat test.sh #!/bin/sh user='whoami' 向測試變數賦值 [[email protected]]# user='222' [[email protected
Shell程式設計---source 和 ./ 和sh 執行指令碼的區別 & 更新環境變數
執行shell指令碼一般有三種方式:sh,./ 和 source。 sh 和 ./ 功能差不多,./不能執行沒有執行許可權的指令碼,而sh可以;兩者都是繼承父shell在子shell環境中執行指令碼,執行完畢後不帶回父shell環境中。 source 或者
crontab執行sh指令碼和手動執行結果不一樣問題解決
當使用crontab執行sh指令碼時,發現存到資料庫的資料丟失了非常多,困惑。。。於是各種搜尋,終於找到問題答案,即環境變數問題,解決方法很簡單,只需要在指令碼開頭增加 source ~/.bash_profile 即可。 還有,如果手動執行指令碼可以成功執行,但cront
QTP測試指令碼的維護 - 使用Update執行模式和Maintenance執行模式
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
多臺伺服器檔案分發指令碼和命令執行指令碼
背景:基於hadoop的分散式部署 (具體請看文章),為了方便檔案的分發與命令的執行,顧編制此指令碼 伺服器配置四臺:(h101 192.168.44.101)(h102 192.168.44.102)(h103 19
什麼是Linux的Shell指令碼和怎麼執行指令碼?
一、什麼是Shell? shell是外殼的意思,就是作業系統的外殼。我們可以通過shell命令來操作和控制作業系統,比如Linux中的Shell命令就包括ls、cd、pwd等等。總結來說,Shell是一個命令直譯器,它通過接受使用者輸入的Shell命令來啟動
Daemon執行緒和Join執行緒
1、Daemon執行緒 Daemon執行緒稱為守護執行緒(非常喜歡這個名字)。執行緒一旦被設定為守護執行緒,當非守護執行緒結束,守護執行緒即使沒有執行完,也必須隨之全部結束。例如我們曾經玩兒過的坦克大戰,一旦守護的老巢完蛋了,其它守護坦克沒死也要結束。 Daemo
程序、執行緒和多執行緒基本概念
程序、執行緒和多執行緒基本概念 一、概念 1、程序(process) 狹義定義:程序就是一段程式的執行過程。 廣義定義:程序是一個具有一定獨立功能的程式關於某個資料集合的一次執行活動。它是作業系統動態執行的基本單元,在傳統的作業系統中,程序既是基本的分配單元,也是基本的執行單元。
9.基於FFMPEG+SDL2播放視訊(解碼執行緒和播放執行緒分開)
參考資料: 1.雷博部落格 2. An ffmpeg and SDL Tutorial 繼續FFMPEG學習之路。。。 文章目錄 1 綜述 2 程式碼1(基礎程式碼) 3 程式碼2(播放執行緒和解碼執行緒分開) 3.1 幾個結構體
Linux 多執行緒和多程序的區別(小結)
最近學習Linux,看到“hairetz的專欄”的帖子不錯,特轉來大家一起學習。 很想寫點關於多程序和多執行緒的東西,我確實很愛他們。但是每每想動手寫點關於他們的東西,卻總是求全心理作祟,始終動不了手。 今天終於下了決心,寫點東西,以後可以再修修補補也無妨。一.為何需要多程序(或者多執行緒),為何需
Python-爬取妹子圖(單執行緒和多執行緒版本)
一、參考文章 Python爬蟲之——爬取妹子圖片 上述文章中的程式碼講述的非常清楚,我的基本能思路也是這樣,本篇文章中的程式碼僅僅做了一些異常處理和一些日誌顯示優化工作,寫此文章主要是當做筆記,方便以後查閱,修改的地方如下: 1、異常處理
Python-爬取校花網視訊(單執行緒和多執行緒版本)
一、參考文章 python爬蟲爬取校花網視訊,單執行緒爬取 爬蟲----爬取校花網視訊,包含多執行緒版本 上述兩篇文章都是對校花網視訊的爬取,由於時間相隔很久了,校花網上的一些視訊已經不存在了,因此上
Qt中通過訊號和槽在子執行緒和主執行緒中進行資料傳遞
QT中兩個執行緒之間進行自定義型別資料傳遞 兩個執行緒中進行資料傳遞時,傳遞的資料放到佇列中(queue),所以在這個過程中,需要在傳遞前將資料拷貝、儲存到佇列中;為了儲存這些引數,Qt需要construct、destruct、copy這些物件,為了讓Qt知道
使用者級執行緒,核心級執行緒和硬體執行緒
在閱讀<<作業系統概念>>一書中多次提到使用者執行緒、核心執行緒、以及硬體執行緒、軟體執行緒、 我們來解釋這些概念的不同。 1.使用者級執行緒在使用者層通過執行緒庫來實現。對它的建立,撤銷和切換都不利用系統的呼叫。 2.核心級執行緒由作業系統
ThreadPool執行緒池使用及解決主執行緒和子執行緒執行順序問題
執行緒池建立五個執行緒,每個執行緒往list中新增100個元素。synchronized只鎖執行緒共享變數list物件,程式碼段內僅新增元素及列印資訊。設定10ms睡眠時間給其餘執行緒機會。 ExecutorService fixedThreadPool = Execut
Unity進階篇:主執行緒和子執行緒概念及注意點
先理解一下什麼是執行緒: 執行緒是作業系統級別的概念,現代作業系統都實現並且支援執行緒,執行緒的排程對應用開發者是透明的,開發者無法預期某執行緒在何時被排程執行。基於此,一般那種隨機出現的BUG,多與
linux下使用top命令檢視系統執行狀態和程序執行狀態
linux下top命令檢視系統執行狀態和程序執行狀態 在linux下可以通過top命令來查系統執行狀態和程序執行狀態,通過man檢視top手冊,top的解釋是display Linux tasks,以前看到過一個另外的解釋display top CPU proc
抽象類和介面的區別,內部類引用外部方法final引數,守護執行緒和使用者執行緒
abstract class和interface有什麼區別? 答:宣告方法的存在而不去實現它的類被叫做抽象類(abstract class),它用於要建立一個體現某些基本行為的類,併為該類宣告方法,但不能在該類中實現該類的情況。不能建立abstract 類的
以生活的例子說明單執行緒和多執行緒
以生活例子說明單執行緒與多執行緒 轉載自:書圈 1. 程式設計的目標 在我看來單從程式的角度來看,一個好的程式的目標應該是效能與使用者體驗的平衡。當然一個程式是否能夠滿足使用者的需求暫且不談,這是業務層面的問題,我們僅僅討論程式本身。圍繞兩點來展開,效能與
Java主執行緒和其餘執行緒的區別和實踐(Main、Runnable、Thread)
在日常的開發中,很多一些開發中較常見的問題,還是需要去仔細研究一下,最重要的還是實踐。以小見大。 一、Java執行緒中。Main、Runnable和Thread。 相信在工作中,只要是有用到多執行緒非同步程式設計,最起碼都要和這三個打交道。 1、每個Java應用程式