我需要获取当前登录用户的主目录的位置.目前,我一直在Linux上使用以下内容:
os.getenv("HOME")
Run Code Online (Sandbox Code Playgroud)
但是,这在Windows上不起作用.什么是正确的跨平台方式?
困难在于它应该是跨平台的.Windows 2000,XP,Vista,OSX,Linux,其他unix版本.我正在寻找可以为所有平台实现此目的的代码片段,以及一种检测平台的方法.
现在,你应该知道的错误4787931是user.home不能正常工作,所以请不要为我提供教科书的答案,我可以在手册中找到这些我自己.
我正在尝试使用命令提示符移动一些文件,我习惯使用linux终端我~用来指定我的主目录我到处都看了但是我似乎无法找到它的Windows命令提示符(Documents and Settings\[user])
Process.platform为Windows返回"win32".在Windows上,用户的主目录可能是C:\ Users [USERNAME]或C:\ Documents and Settings [USERNAME],具体取决于所使用的Windows版本.在Unix上,这不是问题.
filesystems platform-agnostic platform-independent node.js home-directory
首先,我知道这~/是主目录.CD到~或~/带我到主目录.
然而,cd ~X带我到一个特殊的地方,X似乎什么都有.
在bash中,如果我点击" cd ~"并点击标签,它会显示一些可能的~X选项,例如~mailand ~postgres和~ssh.转到那些文件夹并执行一个pwd向我显示这些文件夹不在主目录中; 他们到处都是.
它们不是别名.我查过了.它们不是env.变量,否则它们需要一个$.
什么是设置这些链接,我在哪里可以找到这些链接的设置位置?
嗨,我正在尝试将我的rails_projects目录从haseebjaved/Desktop/rails_projects复制到我的主目录,即haseebjaved.
我怎么能通过命令行执行此操作?
另外,我可以在UI上看到我的主目录还是仅通过Mac OS X中的命令行?
是否可以通过UI将目录复制到我的主目录?或者只能通过命令行?
谢谢
以下是获取正在运行的用户主目录的最佳方法吗?或者我有一个特定的功能吗?
os.Getenv("HOME")
Run Code Online (Sandbox Code Playgroud)
如果以上是正确的,那么是否有人知道这种方法是否可以保证在非Linux平台上运行,例如Windows?
我看到如果我们更改HOME(linux)或USERPROFILE(windows)环境变量并运行python脚本,它会在我尝试时将新值作为用户主页返回,os.environ ['HOME'] os.exp
有没有办法找到真正的用户主目录而不依赖于环境变量?
编辑:
这是一种通过在注册表中阅读http://mail.python.org/pipermail/python-win32/2008-January/006677.html在Windows中查找userhome的方法
编辑:
使用pywin32查找windows的一种方法,
from win32com.shell import shell,shellcon
home = shell.SHGetFolderPath(0, shellcon.CSIDL_PROFILE, None, 0)
Run Code Online (Sandbox Code Playgroud) 我需要检查用户主目录中的文件是否存在,因此请使用文件检查:
if ( -e "~/foo.txt" ) {
print "yes, it exists!" ;
}
Run Code Online (Sandbox Code Playgroud)
即使在用户的主目录下有一个名为foo.txt的文件,Perl总是抱怨没有这样的文件或目录.当我用/ home/jimmy替换"〜"时(让我们说用户是jimmy)然后Perl做出正确的判决.
你能解释为什么"〜"不能在Perl中工作并告诉我Perl找到用户主目录的方式是什么?
一个简单的问题,与应用程序写入内部存储器时的默认"主页"目录有关.默认情况下,创建的所有文件都由OS(2.2)放置在:
/data/data/your.package/files
Run Code Online (Sandbox Code Playgroud)
在读取文件时,使用相同的默认值,通过openFileInput(),保持适当的上下文openFileOutput().但是如果我需要检查文件存在,例如,使用File类,我需要在构造函数中指定整个路径.
我看到有Environment.getDataDirectory()(返回/data),Environment.getRootDirectory()(返回/system)等,但没有任何东西与获取应用程序的'home'目录有关.
这不是一个大问题,但我宁愿不硬编码我的App for File使用的完整路径(比如包名称更改,比如未来操作系统版本中的路径更改),如果有某种方法可以引用应用程序的"主页"目录以编程方式.