os.chdir() 到相对主目录 (/home/usr/)
os.chdir() to relative home directory (/home/usr/)
有没有办法使用 os.chdir() 转到相关用户文件夹?
我正在制作一个 bash,我发现的唯一问题是 cd ~
,arg[0]
未定义,因为我正在使用此 cd 函数:
def cd(args):
os.chdir(args[0])
return current_status
我想改成
def cd(args):
if args[0] == '~':
os.chdir('/home/')
# Here I left it to /home/ since I don't know how
# to get the user's folder name
else:
os.chdir(args[0])
return current_status
不,os.chdir
不会那样做,因为它只是系统调用的薄包装。考虑 ~
实际上是目录的合法名称。
但是,您可以使用 os.expanduser
在路径中扩展 ~
。
def cd(path):
os.chdir(os.path.expanduser(path))
请注意,这也会将 ~user
扩展到 user
的主目录。
有没有办法使用 os.chdir() 转到相关用户文件夹?
我正在制作一个 bash,我发现的唯一问题是 cd ~
,arg[0]
未定义,因为我正在使用此 cd 函数:
def cd(args):
os.chdir(args[0])
return current_status
我想改成
def cd(args):
if args[0] == '~':
os.chdir('/home/')
# Here I left it to /home/ since I don't know how
# to get the user's folder name
else:
os.chdir(args[0])
return current_status
不,os.chdir
不会那样做,因为它只是系统调用的薄包装。考虑 ~
实际上是目录的合法名称。
但是,您可以使用 os.expanduser
在路径中扩展 ~
。
def cd(path):
os.chdir(os.path.expanduser(path))
请注意,这也会将 ~user
扩展到 user
的主目录。