Linux source命令

Linux source命令:

通常用法:source filepath 或 . filepath

功能:使當前shell讀入路徑為filepath的shell文件并依次執行文件中的所有語句,通常用于重新執行剛修改的初始化文件,使之立即生效,而不必注銷并重新登錄。例如,當我們修改了/etc/profile文件,并想讓它立刻生效,而不用重新登錄,就可以使用source命令,如source /etc/profile。

source命令(從 C Shell 而來)是bash shell的內置命令;點命令(.),就是個點符號(從Bourne Shell而來)是source的另一名稱。這從用法中也能看出來。

?

source filepath 與 sh filepath 、./filepath的區別

  1. 當shell腳本具有可執行權限時,用sh filepath與./filepath是沒有區別的。./filepath是因為當前目錄沒有在PATH中,所有"."是用來表示當前目錄的。

  2. sh filepath 會重新建立一個子shell,在子shell中執行腳本里面的語句,該子shell繼承父shell的環境變量,但子shell是新建的,其改變的變量不會被帶回父shell,除非使用export。

  3. source filename其實只是簡單地讀取腳本里面的語句依次在當前shell里面執行,沒有建立新的子shell。那么腳本里面所有新建、改變變量的語句都會保存在當前shell里面。

?

舉例說明:

  1. 新建一個test.sh腳本,內容為:A=1;

  2. 修改其可執行權限:chmod +x test.sh;

  3. 運行sh test.sh后,echo $A,顯示為空,因為A=1并未傳回給當前shell;

  4. 運行./test.sh后,也是一樣的效果;

  5. 運行source test.sh 或者 . test.sh,然后echo $A,則會顯示1,說明A=1的變量在當前shell中;

轉載于:https://www.cnblogs.com/pkufork/p/linux_source.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/287231.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/287231.shtml
英文地址,請注明出處:http://en.pswp.cn/news/287231.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux下覆蓋文件命令,在Linux中使用命令行進行文件覆蓋的操作

習慣了freebsd里的cp/rm/mv等命令遇到同名文件時直接覆蓋操作,而在linux中(不一定是全部,可能是我使用的幾種),使用cp/rm/mv命令覆蓋文件操作時總是提示輸入yes或no,很是麻煩,一兩個的也就算了,沒什么&…

云堆棧三大服務模式解析

如果準備使用云計算或者要在自己的IT環境中部署云計算,首先要確定合適的服務模式。這就需要我們對每種服務模式含義和特點都有所了解,很清楚從中能夠獲得哪些有益東西。正所謂“知己知彼百戰不殆”,我們要對自己想要得到什么非常了解&#xf…

Android之瀏覽器作為客戶端訪問手機socket作為服務端下載圖片和網頁和APK

1 需求 在同一局域網內,手機(PC端)瀏覽器作為客戶端,然后手機app里面通過socket寫服務代碼,然后瀏覽器訪問手機服務端的網頁和圖片和css文件和下載APK 2 代碼實現 創建服務線程代碼 var serverSocket: ServerSocket? = nullvar run = trueinner class HttpServerThrea…

Excel數據生成SQL insert語句

CONCATENATE("insert into teacher(ID, NAME, ADDRESS) values (",A1,",",B1,",",C1,");")轉載于:https://blog.51cto.com/kxtand/1704951

《看聊天記錄都學不會Python到游戲實戰?太菜了吧》(5)用前朝的劍斬今朝的官

本系列文章將會以通俗易懂的對話方式進行教學,對話中將涵蓋了新手在學習中的一般問題。此系列將會持續更新,包括別的語言以及實戰都將使用對話的方式進行教學,基礎編程語言教學適用于零基礎小白,之后實戰課程也將會逐步更新。 若…

【攝影測量原理】第二章:單幅影像解析基礎

本章提綱: 第一節 空中攝影基本知識第二節 中心投影與正射投影第三節 共線方程第四節 航攝像片的像點位移第五節 單幅影像解析基礎第一節 空中攝影基本知識 2.1.1 航空攝影機 1. 光學航空攝影機 <

Blazor Hybrid / MAUI 簡介和實戰

1. BlazorBlazor 是一個使用 .NET 生成交互式客戶端 Web UI 的框架&#xff1a;使用 C# 代替 JavaScript 來創建信息豐富的交互式 UI。共享使用 .NET 編寫的服務器端和客戶端應用邏輯。將 UI 呈現為 HTML 和 CSS&#xff0c;以支持眾多瀏覽器&#xff0c;其中包括移動瀏覽器。與…

linux下ffmpeg編譯成so文件,一、ffmpeg編譯成android使用的so庫

1.在https://ffmpeg.org/中下載ffmpeg源碼(目前版本為ffmpeg-3.2.1)2.下載ndk3.分別解壓ffmpeg和ndk&#xff0c; 路徑如 &#xff1a;ffmpeg路徑&#xff1a;/home/lx/Downloads/ffmpeg-3.2.1ndk路徑&#xff1a;/home/lx/Downloads/android-ndk-r13b4.替換ffmpeg-3.2.1/confi…

SpringMVC總結帖

SpringMVC是基于MVC設計理念的一款優秀的Web框架&#xff0c;是目前最流行的MVC框架之一&#xff0c;SpringMVC通過一套注解&#xff0c;讓POPJ成為處理請求的控制器&#xff0c;而無需實現任何接口&#xff0c;然后使用實現接口的控制器也完全沒問題&#xff1b;支持REST風格的…

Android之RxPermissions用kotlin寫沒反應

1 問題 用rxPermisssons下面的寫法沒反應 RequiresApi(Build.VERSION_CODES.N)fun test(){val rxPermissions RxPermissions(this)rxPermissions.requestEach(Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE).subscribe {object : Consumer<Perm…

基于.NetCore開發博客項目 StarBlog - (7) 頁面開發之文章詳情頁面

系列文章基于.NetCore開發博客項目 StarBlog - (1) 為什么需要自己寫一個博客&#xff1f;基于.NetCore開發博客項目 StarBlog - (2) 環境準備和創建項目基于.NetCore開發博客項目 StarBlog - (3) 模型設計基于.NetCore開發博客項目 StarBlog - (4) markdown博客批量導入基于.N…

關 于 解 析 php 的 問 題

在搭建discuz論壇的時候出的問題&#xff0c;上次搭建用的是2.2版本&#xff0c;這次下了個2.4版的Apache發現有好多地方不一樣&#xff1b;比如在order deny allow 方面就變了Deny from all變成Require all deniedAllow from all變成Require all granted今天在配置完后開始在瀏…

【攝影測量原理】第三章:雙像立體測圖

本章主要內容: 第一節 人眼的立體視覺和立體觀測第二節 立體像對相對定向和核線幾何第三節 立體像對的前方交會第四節 單元模型的絕對定向第五節 雙像解析攝影測量 第一節 人眼的立體視覺和立體觀測 1.1 人眼的立體視覺 人用雙眼判斷景物可判斷其遠近,得到…

linux源碼編譯emqttd,emqtt編譯及簡單測試記錄

emqtt&#xff1a;在Erlang中實現的MQTT客戶端庫和命令行工具&#xff0c;支持MQTT v5.0 / 3.1.1 / 3.1。下載源碼編譯cd emqtt & make運行./rebar3 shell測試1、初始化{ok, ConnPid} emqtt:start_link([{clientid, "2020"},{keepalive, 0},{proto_ver, v5},{ho…

《看聊天記錄都學不會C語言?太菜了吧》(18)2分鐘搞結構體

若是大一學子或者是真心想學習剛入門的小伙伴可以私聊我&#xff0c;若你是真心學習可以送你書籍&#xff0c;指導你學習&#xff0c;給予你目標方向的學習路線&#xff0c;無套路&#xff0c;博客為證。 本系列文章將會以通俗易懂的對話方式進行教學&#xff0c;對話中將涵蓋…

【攝影測量原理】第四章:解析空中三角測量

第一節 概述第二節 航帶法解析空中三角測量第三節 獨立模型法解析空中三角測量第四節 光束法解析空中三角測量第五節 GPS輔助空中三角測量第六節 機載POS系統對地定位 第一節 概述 空中三角測量 是立體攝影測量中,根據少量的野外控制點,在室內進…

setInterval和setTimeout的使用區別

setTimeout和setInterval的使用 這兩個方法都可以用來實現在一個固定時間段之后去執行JavaScript。不過兩者各有各的應用場景。 方 法 實際上&#xff0c;setTimeout和setInterval的語法相同。它們都有兩個參數&#xff0c;一個是將要執行的代碼字符串&#xff0c;還有一個是以…

「System Design」設計一個短鏈接系統

短鏈接系統可以把比較長的 URL 網址轉換成簡短的網址字符串&#xff0c;短鏈接的優勢是方便傳播。適合在一些對字符串長度有要求的場景中使用&#xff0c;比如短信&#xff0c;微博等&#xff0c;比如https://www.cnblogs.com/myshowtime/p/16227260.html轉換成短鏈接為https:/…

Android之頁面有變化用onWindowFocusChanged來監聽權限是否開啟

1 問題 我們需要在Activity里面監聽網絡變化、熱點是否開啟和關閉、GPS服務是否開啟、位置權限是否開啟等一些列行為。 2 思路 方法一: 如果是需要啟動activity進行權限申請,我們可以用如下組合模式 var intent = Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS)startA…

iOS中 Animation 動畫大全 韓俊強的博客

每日更新關注:http://weibo.com/hanjunqiang 新浪微博&#xff01; iOS開發者交流QQ群&#xff1a; 4463102061.iOS中我們能看到的控件都是UIView的子類,比如UIButton UILabel UITextField UIImageView等等 2.UIView能夠在屏幕的顯示是因為在創建它的時候內部自動添加一個CALa…