我正在将一组zli文件从一个文件夹复制到另一个文件夹。现在我需要解压缩该文件夹中的每个文件。我在Windows上使用Pycharm运行python,文件夹在Linux服务器中。如何进入当前文件夹并解压缩每个文件?
from __future__ import with_statement
from fabric.api import *
import ConfigParser, paramiko, shutil, os, glob, zlib
def get_Connection():
config = ConfigParser.RawConfigParser()
config.read('config.cfg')
env.user = config.get('UK_CDN','db.user_name' )
env.password = config.get('UK_CDN','db.password' )
host = config.get('UK_CDN','db.ip' )
with settings(hide('warnings', 'running', 'stdout', 'stderr'), warn_only=True, host_string=host):
paramiko.util.log_to_file('ENC_Analysis.log')
files = run('ls -ltr /home/ndsuser/enc/data/dbSchema_1/catalogue_24802')
run('rm -rf /usr/rosh/ENC_Analysis/*')
run('cp /home/ndsuser/enc/data/dbSchema_1/catalogue_24802/* /usr/rosh/ENC_Analysis/')
count = run('ls -l /usr/rosh/ENC_Analysis/ | wc -l')
os.chdir('/usr/rosh/ENC_Analysis/')
for file in os.listdir('/usr/rosh/ENC_Analysis/'):
print file
如果我运行此代码,我会遇到如下问题。
File "C:/Work/Scripts/VOD/ENC.py", line 20, in get_Connection
os.chdir('/usr/rosh/ENC_Analysis/')
WindowsError: [Error 3] The system cannot find the path specified: '/usr/rosh/ENC_Analysis/'
我知道这个问题是因为系统无法在Windows机器中找到路径。如何从Windows机器到达Linux服务器中的路径?
答案 0 :(得分:2)
您可以将PyCharm设置为自动将python脚本复制到远程服务器并在那里运行。 PyCharm的文档位于https://www.jetbrains.com/pycharm/help/configuring-remote-interpreters-via-ssh.html
由于您已经导入了paramiko,您还可以通过ssh会话将所有相关命令发送到Linux服务器,同时在本地运行脚本。这似乎有点尴尬,但仍然有效。
sshconnection = paramiko.SSHClient()
sshconnection.connect(hostname, username=..., password=... )
stdin, stdout, stderr = sshconnection.exec_command('ls -ltr /home/...')
等等。