python2.7
想格式化列出一個(gè)文件夾下面所有的文件夾以及文件犹菱,不想用java寫(xiě)(跑java程序挺麻煩)腊尚,用shell寫(xiě)也挺麻煩机错,覺(jué)得用python做這個(gè)事情挺合適的
## listfile.python
import os
import sys
def list(directory,level):
paths = os.listdir(directory)
for path in paths:
for i in range(1,level):
sys.stdout.write("--")
print path
if os.path.isfile(directory+"/"+path) == False:
list(directory+"/"+path,level+1)
list(sys.argv[1],2)
使用方式
python listfile.python `pwd`
效果如下
--org
----springframework
------boot
--------loader
----------archive
------------ExplodedArchive$1.class
------------Archive.class
------------ExplodedArchive$FileEntry.class
------------Archive$Entry.class
------------Archive$EntryFilter.class
------------ExplodedArchive$FileEntryIterator.class
------------JarFileArchive$JarFileEntry.class
------------JarFileArchive.class
------------ExplodedArchive.class
------------ExplodedArchive$FileEntryIterator$EntryComparator.class
------------JarFileArchive$EntryIterator.class
上面一些知識(shí)點(diǎn)
- 默認(rèn)print輸出會(huì)換行并且?guī)Э崭袂姑迹@邊使用了sys.stdout.write
- 遞歸方法
- 使用sys.argv[1]接受傳入的參數(shù)狸驳,sys.argv[1]是當(dāng)前這個(gè)py文件的名字
-
pwd
相當(dāng)于把執(zhí)行的pwd shell命令結(jié)果作為python腳本參數(shù)