您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 综合/其它 > python_os模块常用命令
pythonos模块常用命令python编程时,经常和文件、目录打交道,这是就离不了os模块。os模块包含普遍的操作系统功能,与具体的平台无关。以下列举常用的命令1.os.name——判断现在正在实用的平台,Windows返回‘nt';Linux返回’posix'2.os.getcwd()——得到当前工作的目录。3.os.listdir()——指定所有目录下所有的文件和目录名。例:以列表的形式全部列举出来,其中没有区分目录和文件。4.os.remove()——删除指定文件5.os.rmdir()——删除指定目录6.os.mkdir()——创建目录注意:这样只能建立一层,要想递归建立可用:os.makedirs()7.os.path.isfile()——判断指定对象是否为文件。是返回True,否则False8.os.path.isdir()——判断指定对象是否为目录。是True,否则False。例:9.os.path.exists()——检验指定的对象是否存在。是True,否则False.例:10.os.path.split()——返回路径的目录和文件名。例:此处只是把前后两部分分开而已。就是找最后一个'/'。看例子:11.os.getcwd()——获得当前工作的目录(getcurrentworkdir)12.os.system()——执行shell命令。例:注意:此处运行shell命令时,如果要调用python之前的变量,可以用如下方式:var=123os.environ['var']=str(var)//注意此处[]内得是“字符串”os.system('echo$var')13.os.chdir()——改变目录到指定目录14.os.path.getsize()——获得文件的大小,如果为目录,返回015.os.path.abspath()——获得绝对路径。例:16.os.path.join(path,name)——连接目录和文件名。例:17.os.path.basename(path)——返回文件名18.os.path.dirname(path)——返回文件路径19.获得程序所在的实际目录importosimportsysif__name__==__main__:printos.path.realpath(sys.argv[0])printos.path.split(os.path.realpath(sys.argv[0]))printos.path.split(os.path.realpath(sys.argv[0]))[0]执行结果12/home/jihite/ftp/del.py('/home/jihite/ftp','del.py')3/home/jihite/ftp细节——os.path.spilit()把目录和文件区分开12345importosos.path.split(a/b/c/d)('a/b/c','d')os.path.split(a/b/c/d/)('a/b/c/d','')分类:Python每日小灶##########################################################################################################################################################Pythonos模块介绍投稿:mdxy-dxy字体:[增加减小]类型:转载时间:2014-11-30我要评论这篇文章主要介绍了Pythonos模块介绍,需要的朋友可以参考下os.getcwd()获取当前工作目录,即当前python脚本工作的目录路径os.chdir(dirname)改变当前脚本工作目录;相当于shell下cdos.curdir返回当前目录:('.')1os.pardir获取当前目录的父目录字符串名:('..')os.makedirs('dirname1/dirname2')可生成多层递归目录os.removedirs('dirname1')若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推os.mkdir('dirname')生成单级目录;相当于shell中mkdirdirnameos.rmdir('dirname')删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdirdirnameos.listdir('dirname')列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印os.remove()删除一个文件os.rename(oldname,newname)重命名文件/目录os.stat('path/filename')获取文件/目录信息os.symlink('path/filename','ln_filename')创建符号链接,源需绝对路径os.utime()修改时间属性importosstinfo=os.stat('c.py')printaccesstimeofc.py:%s\nmodifiedtimeofc.py:%s%(stinfo.st_atime,stinfo.st_mtime)accesstimeofc.py:1375448908.0modifiedtimeofc.py:1369735909.0os.utime('c.py',(1375448978,1369735977))printaccesstimeofc.py:%s\nmodifiedtimeofc.py:%s%(stinfo.st_atime,stinfo.st_mtime)accesstimeofc.py:1375448908.0modifiedtimeofc.py:1369735909.0退出Python交互模式,再次进入importosstinfo=os.stat('c.py')printaccesstimeofc.py:%s\nmodifiedtimeofc.py:%s%(stinfo.st_atime,stinfo.st_mtime)accesstimeofc.py:1375448978.0modifiedtimeofc.py:1369735977.0os.walk()生成一个目录树下的所有文件名os.walk(top[,topdown=True[,onerror=None[,followlinks=False]]])1.top表示需要遍历的目录树的路径2.topdown的默认值是”True”,表示首先返回目录树下的文件,然后在遍历目录树的子目录.Topdown的值为”False”时,则表示先遍历目录树的子目录,返回子目录下的文件,最后返回根目录下的文件3.onerror的默认值是”None”,表示忽略文件遍历时产生的错误.如果不为空,则提供一个自定义函数提示错误信息后继续遍历或抛出异常中止遍历该函数返回一个元组,该元组有3个元素,这3个元素分别表示每次遍历的路径名,目录列表和文件列表os.walk()举例:?1234importosforroot,dirs,filesinos.walk(wd/chat,topdown=False):...fornameinfiles:...print(os.path.join(root,name))#打印文件绝对路径...fornameindirs:...print(os.path.join(root,name))#打印目录绝对路径567...os.tmpfile()创建并打开‘w+b'一个新的临时文件os.sep输出操作系统特定的路径分隔符,win下为\\,Linux下为/os.linesep输出当前平台使用的行终止符,win下为\t\n,Linux下为\nos.pathsep输出用于分割文件路径的字符串os.name输出字符串指示当前使用平台。win-'nt';Linux-'posix'os.system(bashcommand)运行shell命令,直接显示os.popen(bashcommand)运行shell命令,生成对象,可赋给变量,再用read读取importosos.system('lstwisted')chat_client_twisted.pychat_server_twisted.py0LS=os.popen('lstwisted')LS.readlines()['chat_client_twisted.py\n','chat_server_twisted.py\n']os.environ获取系统环境变量os.access('pathfile',os.W_OK)检验文件权限模式,输出True,Falseos.chmod('pathfile',os.W_OK)改变文件权限模式#echo'test'test.shos.access('test.sh',os.W_OK)Trueos.access('test.sh',os.X_OK)Falseos.chmod('test.sh',os.X_OK)os.access('test.sh',os.X_OK)True#ls-ltest.sh---------x1rootroot12Oct2023:03test.shos.path常用模块详解os.path.abspath(path)返回path规范化的绝对路径importos.pathos.path.abspath('c.py')'/root/py/c.py'os.path.abspath('../py/c.py')'/root/py/c.py'os.path.split(path)将path分割成目录和文件名二元组返回os.path.split('/root/py/c.py')('/root/py','c.py')os.path.split('/root/py/')('/root/py','')os.path.dirname(path)返回path的目录。其实就是os.path.split(path)的第一个元素os.path.dirname('/root/py/c.py')'/root/py'os.path.dirname('c.py')''os.path.basename(path)返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素os.path.basename('/root/py/c.py')'c.py'os.path.basename('/root/py')'py'os.path.commonprefix(list)返回list中,所有path共有的最长的路径,从左向右,相同字符os.path.exists(path)如果path存在,返回True;如果path不存在,返回Falseos.path.isabs(path)如果path是绝对路径,返回Trueos.path.isfile(path)如果path是一个存在的文件,返回True。否则返回Falseos.path.isdir(path)如果path是一个存在的目录,则返回True。否则返回Falseos.path.join(path1[,path2[,...]])将多个路径组合后返回,第一个绝对路径之前的参数将被忽略os.path.normcase(path)在Linux下,该函数会原样返回path,在windows平台上会将路径中所有字符转换为小写,并将所有斜杠转换为反斜杠os.path.normcase('c:/windows\\system32\\')'c:\\windows\\system32\\'os.path.normpath(path)规范化路径os
本文标题:python_os模块常用命令
链接地址:https://www.777doc.com/doc-4211540 .html