#!/usr/bin/env python3
#coding=utf-8
import os
import shutil
from stat import
*import pwd
import grp
import traceback
import time
defllist
(path=
'.')
:try
:for name in os.listdir(path)
:# get stat info
si = os.stat(os.path.join(path,name)
)# print file type
if(s_isreg(si.st_mode)):
print
("-"),
elif
(s_islnk(si.st_mode)):
print
("l"),
elif
(s_isdir(si.st_mode)):
print
("d"),
# print rwx permission
perstr =
"" perstr +=
("r"
if(s_irusr & si.st_mode)
else
"-")
perstr +=
("w"
if(s_iwusr & si.st_mode)
else
"-")
perstr +=
("x"
if(s_ixusr & si.st_mode)
else
"-")
perstr +=
("r"
if(s_irgrp & si.st_mode)
else
"-")
perstr +=
("w"
if(s_iwgrp & si.st_mode)
else
"-")
perstr +=
("x"
if(s_ixgrp & si.st_mode)
else
"-")
perstr +=
("r"
if(s_iroth & si.st_mode)
else
"-")
perstr +=
("w"
if(s_iwoth & si.st_mode)
else
"-")
perstr +=
("x"
if(s_ixoth & si.st_mode)
else
"-")
print
(perstr)
,# print links num
print(""
.format
(si.st_nlink)),
# get user name
#print(" ", pwd.getpwuid(si.st_uid).pw_name),
# > 左對齊 >右對齊 ^居中對齊
print(""
.format
(pwd.getpwuid(si.st_uid)
.pw_name)),
# get group name
print(""
.format
(grp.getgrgid(si.st_gid)
.gr_name)),
# print file size
# > 左對齊 >右對齊 ^居中對齊
print(""
.format
(si.st_size)),
print
(time.ctime(si.st_mtime)),
print
(name)
except exception as e:
print
(traceback.format_exc())
print
(, e)
if(__name__ ==
"__main__"):
parser = optionparser(
) parser.add_option(
'-p'
,'--path'
, default=
'.',
help
='input the path you want list,default is .'
) opts, args = parser.parse_args(
) llist(opts.path)
支援-p引數輸入想要顯示的路徑
除了顯示時間的方式和顯示順序不一樣,其他都是一樣的
stat模組
pwd模組
grp模組
在Windows下利用Python控制Linux
在windows下如何能控制linux,大概的想法肯定是ssh,的確,python也提供了對應的庫,以下先提供乙個例子,通過python獲得xenserver的uuid import paramiko hostname 10.10.10.100 port 22 username root passw...
練手,用Python實現Linux下的tree命令
用python實現了linux下的tree命令的基本功能,沒有實現各種引數。寫得不好,歡迎拍磚。覺得原來的沒有python的風格,換了乙個寫法,感覺格式不好看。新的 import os def tree path def tree iter path,prefix path os.path.absp...
Python實現Linux環境下的ls命令
在linux下使用ls命令結合正規表示式,能夠高效地進行檔案搜尋,並通過引數操作檔案,於是就想用python實現這個功能以便在windows上使用 import os import re import sys path os.getcwd substr raw input the sub strin...