使用 python 在终端中更改目录
Change directory in terminal using python
我正在编写一个简单的脚本来将当前工作目录更改为其他目录。以下脚本在程序终止之前工作正常,之后我回到我的主目录。
#!/usr/bin/python
import os
if __name__ == '__main__':
os.chdir("/home/name/projects/python")
os.system("pwd")
print 'dir changed'
输出为:
bash:~$ python chdir.py
/home/name/projects/python
dir changed
bash:~$ pwd
/home/name
我希望即使在程序退出后仍保留目录更改。有什么想法吗?
编辑:
我真正想做的是:我经常使用这个目录,而不是每次打开终端时都执行 cd <path>
,我只写 ./progname
并更改目录。
import os
os.system('cd /home/name/projects/python')
如果您希望即使在程序退出后仍保留目录更改。
您可以使用 os.system("/bin/bash")
结束 python 脚本,这将使您进入新目录中的 bash shell。
#!/usr/bin/python
import os
if __name__ == '__main__':
os.chdir("/home/name/projects/python")
os.system("pwd")
os.system("/bin/bash")
对于您评论中提出的需求"I use this directory frequently and instead of doind cd <path>
every time I open the terminal, I just write ./progname
and it changes the directory"
我建议使用 bash 别名来更改目录:
bash:~$ alias mycd='cd /home/name/projects/python'
并在 bash shell 中使用此别名以更改目录:
bash:~$ mycd
您可以将此别名添加到您的 .bashrc
- 这将允许您每次都使用此别名。
万一有人想在没有 python 的情况下执行此操作 - 这最简单地使用 .bash_profile
文件完成。
步骤:
- 将此输入您的 .bash_profile。你可以用pico打开这个文件。
pico ~/.bash_profile
- 然后创建一个快捷方式(称为别名),你可以做任何你想做的短语。
alias cdd="cd ~/frequent/my-directory"
- 然后获取您的
.bash_profile
文件。
source ~/.bash_profile
现在,您只需 运行 您前面提到的快捷方式,这会切换您的目录,减少很多击键!
Macbook-Spen:~ spen$ cdd
Macbook-Spen:my-directory spen$
来源:
我正在编写一个简单的脚本来将当前工作目录更改为其他目录。以下脚本在程序终止之前工作正常,之后我回到我的主目录。
#!/usr/bin/python
import os
if __name__ == '__main__':
os.chdir("/home/name/projects/python")
os.system("pwd")
print 'dir changed'
输出为:
bash:~$ python chdir.py
/home/name/projects/python
dir changed
bash:~$ pwd
/home/name
我希望即使在程序退出后仍保留目录更改。有什么想法吗?
编辑:
我真正想做的是:我经常使用这个目录,而不是每次打开终端时都执行 cd <path>
,我只写 ./progname
并更改目录。
import os
os.system('cd /home/name/projects/python')
如果您希望即使在程序退出后仍保留目录更改。
您可以使用 os.system("/bin/bash")
结束 python 脚本,这将使您进入新目录中的 bash shell。
#!/usr/bin/python
import os
if __name__ == '__main__':
os.chdir("/home/name/projects/python")
os.system("pwd")
os.system("/bin/bash")
对于您评论中提出的需求"I use this directory frequently and instead of doind cd <path>
every time I open the terminal, I just write ./progname
and it changes the directory"
我建议使用 bash 别名来更改目录:
bash:~$ alias mycd='cd /home/name/projects/python'
并在 bash shell 中使用此别名以更改目录:
bash:~$ mycd
您可以将此别名添加到您的 .bashrc
- 这将允许您每次都使用此别名。
万一有人想在没有 python 的情况下执行此操作 - 这最简单地使用 .bash_profile
文件完成。
步骤:
- 将此输入您的 .bash_profile。你可以用pico打开这个文件。
pico ~/.bash_profile
- 然后创建一个快捷方式(称为别名),你可以做任何你想做的短语。
alias cdd="cd ~/frequent/my-directory"
- 然后获取您的
.bash_profile
文件。
source ~/.bash_profile
现在,您只需 运行 您前面提到的快捷方式,这会切换您的目录,减少很多击键!
Macbook-Spen:~ spen$ cdd
Macbook-Spen:my-directory spen$
来源: