使用方式:mkdir [-p] dirName
说明:建立名称为 dirName 的子目录。
参数:-p 确保目录名称存在,如果目录不存在的就新创建一个。
语法:mkdir [选项] dir-name
说明:该命令创建由dir-name命名的目录。要求创建目录的用户在当前目录中(dir-name的父目录中)具有写权限,并且dirname不能是当前目录中已有的目录或文件名称。
命令中各选项的含义为:
- m 对新建目录设置存取权限。也可以用chmod命令设置。
- p 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。
给一个mkdir函数的实例:
#include <direct.h>
#include <stdlib.h>
#include <stdio.h>
int main( void )
{
if( _mkdir( "\\testtmp" ) == 0 )
{
printf( "Directory '\\testtmp' was successfully created\n" )
system( "dir \\testtmp" )
if( _rmdir( "\\testtmp" ) == 0 )
printf( "Directory '\\testtmp' was successfully removed\n" )
else
printf( "Problem removing directory '\\testtmp'\n" )
}
else
printf( "Problem creating directory '\\testtmp'\n" )
}
最近有个将文件上传到内部web服务器上的任务,于是参考了网上部分源码用python写了这个小程序,代码如下:
[python] view plain copy
#coding:utf-8
'''''
Created on 2015.3.19
@author: damofy
'''
import os
import time
import sys
import urllib2
'''''
filename 待上传的文件
fieldname 表单域中的name属性
'''
def CreateBody(filename, fieldname, strBoundary):
bRet = False
sData = []
sData.append('--%s' % strBoundary)
#'Content-Disposition: form-data name="uploadfile" filename="XX-Net-1.3.6.zip"'
sData.append('Content-Disposition: form-data name="%s"' % fieldname + 'filename="%s"' % os.path.basename(filename))
sData.append('Content-Type: %s\r\n' % 'application/octet-stream')
try:
pFile = open(filename, 'rb')
sData.append(pFile.read())
sData.append('--%s--\r\n' % strBoundary)
bRet = True
finally:
pFile.close()
return bRet, sData
def uploadfile(http_url, filename, fieldname):
if os.path.exists(filename):
filesize = os.path.getsize(filename)
print('file:' + filename + ' is %d bytes!' % filesize)
else:
print('file:' + filename + ' isn\'t exists!')
return False
strBoundary = '---------------------------%s' % hex(int(time.time() * 1000))
bRet, sBodyData = CreateBody(filename, fieldname, strBoundary)
if True == bRet:
http_body = '\r\n'.join(sBodyData)
stReq = urllib2.Request(http_url, http_body)
stReq.add_header('User-Agent','Mozilla/5.0')
stReq.add_header('Content-Length:', '%d' % filesize)
stReq.add_header('Content-Type', 'multipart/form-data boundary=%s' % strBoundary)
resp = urllib2.urlopen(stReq, timeout=5)
# get response
msg = resp.read()
print("Response content:\n" + msg)
else:
print("CreateBody failed!")
return bRet
if __name__ == '__main__':
if len(sys.argv) > 2:
http_url = sys.argv[1]
filename = sys.argv[2]
else:
print('python upload.py http://10.20.131.23/upload ./test.dat')
sys.exit()
# 参数3 "uploadfile" 是post表单中的name属性,需要与服务端保持一致
uploadfile(http_url, filename, 'uploadfile')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)