공백이 포함된 경로에 경로 변수 cd 사용

공백이 포함된 경로에 경로 변수 cd 사용

.bash_profile내 as에서 실행되는 명령 목록이 포함된 파일이 있습니다.

source my_cmds

예를 들어:

$cat my_cmds 
scripts=~/scripts

내가 가정하면 $HOME프롬프트 에서 실행할 /Users/knayak때 내가 필요합니다.
cd $scripts/Users/knayak/scripts

이제 이 형식의 경로(어떤 이유로든 이름을 바꿀 수 없음)가 있는데 이 때문에 해당 변수를 사용할 수 있도록 명령 변수를 설정하는 방법을 모르겠습니다 cd $path.

/Users/knayak/Somedir - some name Inc/Tasks

my_cmds환경 변수를 설정하기 위해 이 모든 것을 파일에 추가해 보았습니다 tasks.

$cat my_cmds 
tasks=~/Somedir - some name Inc/Tasks
tasks="~/Somedir - some name Inc/Tasks"
tasks=~/"Somedir - some name Inc/Tasks"
...

작은 따옴표를 포함하여 더 많은 것이 있지만 이 작업을 수행하면 그 중 아무 것도 작동하지 않는 것 같습니다 cd $tasks. 대부분은 오류로 인해 실패합니다.

cd: "/Users/knayak/Somedir: 해당 파일이나 디렉터리가 없습니다.

이 경로를 사용 tasks=~/<whatever> 하려면 양식에 올바른 값을 설정해야 합니까 ?cd $tasks

답변1

변수 확장을 인용해 주세요.

파일이 다음과 같은 경우 my_cmds:

$ cat my_cmds 
tasks=~/"Somedir - some name Inc/Tasks"

파일에는 다음 ./bash_profile이 포함됩니다(다른 줄 중에서).

$ cat ~/.bash_profile
[ -f ~/my_cmds ] && . ~/my_cmds
cd "$tasks" && pwd

~/.bash_profile을 실행하면 다음이 표시됩니다.

$ sh ~/.bash_profile
/Users/knayak/Somedir - some name Inc/Tasks

관련 정보