python复制文件的命令_python 实现cp命令 复制文件和文件夹

这是一个用于在Linux和Windows环境下执行文件和目录复制的Python脚本。它接受命令行参数,支持-i和-o选项分别指定输入文件或目录及输出位置。在Linux下可直接运行,Windows下需删除第一行并使用Python解释器执行。
摘要由CSDN通过智能技术生成

随手写了个复制命令

在linux下可以直接./ 运行哟,windows下应该要删掉第一行,然后 python3 XXX.py

#!/usr/bin/env python3

import sys,getopt,shutil

def copyfile(infile,outfile):

try:

shutil.copy(infile,outfile)

except:

print('''Can't open this file''')

return

def copydir(indir,outdir):

try:

shutil.copytree(indir,outdir)

except:

print('This dir is wrong')

def main():

if len(sys.argv) < 2:

print("NO action specified")

else:

if sys.argv[1].startswith('--'):

if sys.argv[1][2:] == 'version':

print("version 0.1")

if sys.argv[1][2:] == 'help':

print('''

This program prints files to standard output.

Any number of files can be specified.

Options include:

-- version : Prints the version number

-- help : Display this help

- i : add input file

- o : add output file

''')

else:

print("Unknow option.")

else:

opts,args = getopt.getopt(sys.argv[1:],"i:o:")

input_file,output_file,input_dir,output_dir = '','','',''

for op,value in opts:

if op == "-i" :

if '.' in value:

input_file = value

else:

input_dir = value

elif op == "-o":

if '.' in value:

output_file = value

else:

output_dir = value

if input_file and output_file:

copyfile(input_file,output_file)

elif input_dir and output_dir:

copydir(input_dir,output_dir)

else:

print('Input Wrong')

if __name__ == '__main__':

main()

sys.argv

getopt

shutil

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值