在Shell腳本中提取文件名和擴展名的方法?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!
有時你可能需要在不同的變量中提取文件名和擴展名來完成bash shell編程中的任務。
以下是詳細的內容
1、獲取沒有路徑的文件名:
首先從輸入文件名中刪除完整的文件路徑。例如,如果文件名輸入為/etc/apache2/apache2.conf,則僅提取完整文件名為apache.conf.
#!/bin/bash fullfilename="/etc/apache2/apache2.conf" filename=$(basename "$fullfilename") echo $filename
2、沒有擴展名的文件名:
現在,從提取的不帶路徑的完整文件名中提取不帶擴展名的文件名,如下所示。
#!/bin/bash fullfilename="/etc/apache2/apache2.conf" filename=$(basename "$fullfilename") fname="${filename%.*}" echo $fname
3、沒有名稱的文件擴展名:
現在從提取的不帶路徑的完整文件名中提取不帶名稱的文件擴展名。
#!/bin/bash fullfilename="/etc/apache2/apache2.conf" filename=$(basename "$fullfilename") ext="${filename##*.}" echo $ext
4、測試:
最后在一個shell腳本中測試所有內容。使用以下內容創建新的腳本文件。在執行腳本期間,文件名將作為命令行參數傳遞。
#!/bin/bash fullfilename=$1 filename=$(basename "$fullfilename") fname="${filename%.*}" ext="${filename##*.}" echo "Input File: $fullfilename" echo "Filename without Path: $filename" echo "Filename without Extension: $fname" echo "File Extension without Name: $ext"
我們以文件名作為命令行參數來執行腳本。
$ ./script.sh /etc/apache2/apache2.conf Input File: /etc/apache2/apache2.conf Filename without Path: apache2.conf Filename without Extension: apache2 File Extension without Name: conf
感謝各位的閱讀!看完上述內容,你們對在Shell腳本中提取文件名和擴展名的方法大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注創新互聯成都網站設計公司行業資訊頻道。
另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
新聞名稱:在Shell腳本中提取文件名和擴展名的方法-創新互聯
網頁URL:http://www.2m8n56k.cn/article24/pcjce.html
成都網站建設公司_創新互聯,為您提供ChatGPT、企業建站、網站設計公司、網站排名、軟件開發、定制網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯