Python:如何将文件夹列表(包含子文件夹)移动到新目录

时间:2017-04-20 09:25:37

标签: python directory shutil

我有一个目录,字面上有3000多个文件夹(都有子文件夹)。

我需要做的是查看这些文件的目录并将它们移动到另一个文件夹。我做了一些研究,我发现shutil用于移动文件,但我不确定如何输入要查找的文件列表。

例如,在目录中,我想获取以下文件夹(及其子文件夹)并将它们移动到另一个名为“Merge 1”的文件夹

1442735516927 1442209637226 1474723762231 1442735556057 1474723762187 1474723762286 1474723762255 1474723762426 1474723762379 1474723762805 1474723762781 1474723762936 1474723762911 1474723762072 1474723762163 1474723762112 1442209642695 1474723759389 1442735566966

我不知道从哪里开始,所以任何帮助都非常感谢。谢谢!

1 个答案:

答案 0 :(得分:10)

结合os和shutil,下面的代码应该回答你的具体问题:

class WiFiConnection
{
    private static final int SCAN_INTERVAL = 1200;

    final private List<String> _bestSSIDs = new ArrayList<>();

    private WifiManager _wifiManager;

    private final WiFiScanner _startScan = new WiFiScanner();

    WiFiConnection(Activity activity) {
        _wifiManager = (WifiManager) activity.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
    }

    List<String> getBestSSIDs() {return _bestSSIDs; }
    WiFiScanner getWifiScanner() { return _startScan; }
    void stopScan() { _startScan.stop(); }

    boolean isWifiEnabled() { return _wifiManager.isWifiEnabled(); }

    void updateScanData(final String noLansMsg) {
        if ((_wifiManager != null && _wifiManager.isWifiEnabled())) {
            List<ScanResult> scanResults = _wifiManager.getScanResults();
            Log.d("WiFi", "found nets: " + scanResults.size());

            // my sorting code
        }
    }

    private class WiFiScanner implements Runnable
    {
        private boolean _stop = false;
        public void stop() {_stop = true;}
        @Override
        public void run() {
            while (!_stop) {
                _wifiManager.startScan();
                try {
                    Thread.sleep(SCAN_INTERVAL);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}