Shell - 學習筆記 - 1.14 - 如何編寫自己的Shell配置文件(配置腳本)?

第1章 Shell基礎(開胃菜)

14 - 如何編寫自己的Shell配置文件(配置腳本)? 

學習了《Shell配置文件的加載》一節,讀者應該知道 Shell 在登錄和非登錄時都會加載哪些配置文件了。對于普通用戶來說,也許 ~/.bashrc 才是最重要的文件,因為不管是否登錄都會加載該文件。

我們可以將自己的一些代碼添加到 ~/.bashrc,這樣每次啟動 Shell 都可以個性化地配置。如果你有代碼潔癖,也可以將自己編寫的代碼放到一個新文件中(假設叫 myconf.sh),只要在 ~/.bashrc 中使用類似. ./myconf.sh的形式將新文件引入進來就行了

使用 source 命令引入其它代碼文件時有一些細節需要注意,我們將在《Shell模塊化》一節中展開討論。

實例1:給 PATH 變量增加新的路徑

你曾經是否感到迷惑,Shell 是怎樣知道去哪里找到我們輸入的命令的?例如,當我們輸入 ls 后,Shell 不會查找整個計算機系統,而是在指定的幾個目錄中檢索(最終在 /bin/ 目錄中找到了 ls 程序),這些目錄就包含在 PATH 變量中。

當用戶登錄 Shell 時,PATH 變量會在 /etc/profile 文件中設置,然后在 ~/.bash_profile 也會增加幾個目錄。如果沒有登錄 Shell,PATH 變量會在 /etc/bashrc 文件中設置。

如果我們想增加自己的路徑,可以將該路徑放在

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

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

相關文章

【數據處理】NumPy數組的合并操作,如何將numpy數組進行合并?

,NumPy中的合并操作是指將兩個或多個數組合并成一個數組的操作。這種操作可以通過不同的函數來實現。 一、橫向合并(水平合并) 橫向合并是指將兩個具有相同行數的數組按列方向合并成一個數組的操作。在NumPy中,可以使用hstack()…

044:vue中引用json數據的方法

第044個 查看專欄目錄: VUE ------ element UI 專欄目標 在vue和element UI聯合技術棧的操控下,本專欄提供行之有效的源代碼示例和信息點介紹,做到靈活運用。 (1)提供vue2的一些基本操作:安裝、引用,模板使…

多相Buck的工作原理

什么是多相Buck電源? 多相電源控制器是一種通過同時控制多個電源相位的設備,以提供穩定的電力供應。相位是指電源中的電流和電壓波形。多相控制器的設計旨在最大程度地減小電力轉換系統的紋波,并提高整體能效。它通常包含一系列的功率級聯&a…

我的創作紀念日1024天紀念

機緣 經歷的1024天,突然有一種驚奇,日子一天天過,有種恍惚的感覺 收獲 從最開始的隨筆,慢慢向著筆記總結轉變,不經意間積累了好多 憧憬 雖不知最終會怎樣發展,但堅持與向前是一定的,未來一…

結構化布線系統

滿足下列需求: 1.標準化:國際、國家標準。 2.實用性:針對實際應用的需要和特點來建設系統。 3.先進性:采用國際最新技術。5-10年內技術不落后。 4.開放性:整個系統的開放性。 5.結構化、層次化:易于管理和維…

Matplotlib數據可視化

繪圖基礎語法 1 創建畫布并且創建子圖 首先創建一個空白的畫布,并且可以將畫布分為幾個部分,這樣就可以在同一附圖上繪制多個圖像。 plt.figure 創建一個空白畫布,可以指定畫布大小、像素 figure.add_subplot 創建并且選中子…

docker鏡像、容器管理與遷移

鏡像管理 搜索鏡像: 這種方法只能用于官方鏡像庫 搜索基于 centos 操作系統的鏡像 # docker search centos 按星級搜索鏡像: 查找 star 數至少為 100 的鏡像,默認不加 s 選項找出所有相關 ubuntu 鏡像: …

【web安全】文件讀取與下載漏洞

前言 菜某整理僅供學習,有誤請賜教。 概念 個人理解:就是我們下載一個文件會傳入一個參數,但是我們可以修改參數,讓他下載其他的文件。因為是下載文件,所以我們可以看到文件里面的源碼,內容。 文件讀取…

Python嗅探和解析網絡數據包

網絡工具解釋 Scapy是Python2和Python3都支持的庫。 它用于與網絡上的數據包進行交互。 它具有多種功能,通過這些功能我們可以輕松偽造和操縱數據包。 通過 scapy 模塊,我們可以創建不同的網絡工具,如 ARP Spoofer、網絡掃描儀、數據包轉儲器…

swiftUi——顏色

在SwiftUI中,您可以使用Color結構來表示顏色。Color可以直接使用預定義的顏色,例如.red、.blue、.green等,也可以使用自定義的RGB值、十六進制顏色代碼或者系統提供的顏色。 1. 預定義顏色 Text("預定義顏色").foregroundColor(.…

Swing程序設計(9)復選框,下拉框

文章目錄 前言一、復選框二、下拉框總結 前言 該篇文章簡單介紹了Java中Swing組件里的復選框組件、列表框組件、下拉框組件,這些在系統中都是常用的組件。 一、復選框 復選框(JCheckBox)在Swing組件中的使用也非常廣泛,一個方形方…

Albumentations(Augmentation Transformations)

Albumentations(Augmentation Transformations) Albumentations(Augmentation Transformations)是一個用于圖像數據增強(數據增廣)的Python包。它提供了豐富的圖像增強技術,用于訓練機器學習模…

hadoop安裝與配置-shell腳本一鍵安裝配置(集群版)

文章目錄 前言一、安裝準備1. 搭建集群 二、使用shell腳本一鍵安裝1. 復制腳本2. 增加執行權限3. 分發腳本4. 執行腳本5. 加載用戶環境變量 三、啟動與停止1. 啟動/停止hadoop集群(1) 復制hadoop集群啟動腳本(2) 增加執行權限(3) 啟動hadoop集群(4) 停止hadoop集群(5) 重啟hado…

智慧社區前景無限,科技引領未來發展

社區是城鎮化發展的標志,作為人類現代社會的生活的基本圈子,是人類生活離不開的地方,社區人口密度大、車輛多,管理無序,社區的膨脹式發展多多少少帶來一定的管理上的缺失。社區作為智慧城市建設的重要一環,…

編譯基于LIO-SAM的liorf“Large velocity, reset IMU-preintegration!“

使用LIO-SAM修改的代碼liorf(因自己使用的IMU傳感器是 6-axis ouster): LIO-SAM代碼連接: https://github.com/TixiaoShan/LIO-SAM liorf代碼連接: https://github.com/YJZLuckyBoy/liorf 編譯運行出現錯誤&#…

eve-ng山石網科HillStone鏡像部署

HillStone 部署 author:leadlife data:2023/12/4 mains:EVE-ng HillStone 鏡像部署 - use hillstone-sg6000 default:hillstone/hillstone 傳輸 scp hillstone-sg6000.zip root192.168.3.130:/opt/unetlab/addons/qemu/部署 cd …

echarts繪制一個環形圖

其他echarts&#xff1a; echarts繪制一個柱狀圖&#xff0c;柱狀折線圖 echarts繪制一個餅圖 echarts繪制一個環形圖2 效果圖&#xff1a; 代碼&#xff1a; <template><div class"wrapper"><!-- 環形圖 --><div ref"doughnutChart…

深入理解Spring Kafka中@KafkaListener注解的參數與使用方式

Apache Kafka作為一個強大的消息代理系統&#xff0c;與Spring框架的集成使得在分布式應用中處理消息變得更加簡單和靈活。Spring Kafka提供了KafkaListener注解&#xff0c;為開發者提供了一種聲明式的方式來定義消息監聽器。在本文中&#xff0c;我們將深入探討KafkaListener…

C++STL的string(超詳解)

文章目錄 前言C語言的字符串 stringstring類的常用接口string類的常見構造string (const string& str);string (const string& str, size_t pos, size_t len npos); capacitysize和lengthreserveresizeresize可以刪除數據 modify尾插插入字符插入字符串 inserterasere…

Linux lprm命令教程:如何取消打印任務(附案例詳解和注意事項)

Linux lprm命令介紹 lprm命令是Linux系統中的一個命令&#xff0c;全稱為"line printer remove"&#xff0c;用于取消已經排隊等待打印的打印任務。如果沒有提供任何參數&#xff0c;那么將會取消默認目標上的當前任務。你可以指定一個或多個作業ID號來取消這些作業…