.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