簡體   English   中英

從用戶輸入更改目錄的 Bash 腳本

[英]Bash script to change directory from user input

每當我執行此腳本時,它都會說:沒有這樣的文件或目錄。 我不確定我在這里做錯了什么。 我在它周圍加上引號,以防萬一目錄名稱中有空格。

#!/bin/bash
read -p "Enter destination: " folder
folder=$(sed -e 's/^/"/' -e 's/$/"/' <<< $folder)
cd $folder

無論目錄是否有空格,最好在cd 命令中使用引號,如下所示:

#!/bin/bash
read -p "Enter destination: " folder
cd "$folder"
pwd

測試:

在此處輸入圖片說明

另一種解決方案(謹慎使用,因為它可能會導致其他問題)在您的代碼中使用eval

#!/bin/bash
read -p "Enter destination: " folder
folder=$(sed -e 's/^/"/' -e 's/$/"/' <<< $folder)
eval cd $folder

參考:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM