我有许多包含文件的文件夹,在每个文件夹中都有一个名为String reportID = "06"
String reportTypeValue = "PAS ITD/EOD EX1 Allocation Statement"
driver.findElement(By.xpath("//table/descendant-or-self::tr[td[1][substring(text(), string-length(text()) - string-length('" + reportID + "') + 1)]][td[3][text()='" + reportTypeValue + "']]/td[7]/a")
的子文件夹。我要做的是将所有文件移到每个wvfm文件夹中。
我尝试过下面的一行,但是没有用
const express = require('express');
const app = express();
const jsdom = require('jsdom');
const { JSDOM } = jsdom;
app.listen(3000, () => {
console.log("connesso all'ip: http://localhost:3000");
});
app.get('/', (req, res) => {
// res.send(req.protocol + '://' + req.hostname);
const url = 'URL OF THE PAGE';
JSDOM.fromURL(url).then(dom => {
const element = dom.window.document.getElementsByClassName('CLASS I WANT TO GET');
console.log(element.length);
});
});
但是那不太正确
答案 0 :(得分:1)
使用for
循环(for i in */; do
)列出文件,然后移至文件夹以列出所有文件并将其保存到变量(F=$(ls)
)中。
然后将所有文件移动到不包含文件夹(mv ${F/wvfm/} wvfm
)的位置,如下所示:
#!/bin/bash
subdirectory="wvfm"
for i in */; do
cd $i
F=$(ls)
mv ${F/$subdirectory/} $subdirectory
cd ../
done
答案 1 :(得分:0)
find * -maxdepth 0 -type d | xargs -n 1 -I {} mv {}/* {}/wvfm
应该可以解决问题;又快又脏。不是MacOS用户,但可以使用bash。
说明:
find * -maxdepth 0 -type d
查找深度为0的所有目录(即:不要下降目录),
使用选项-n 1
到xargs的管道,一次操作一个值,-I replace-str
,字符串替换(请参见man xargs)。
操作命令:对于每个目录匹配,mv {}/* {}/wvfm
都将替换为mv dirA/* dirA/wvfm
。
您将收到一个“错误” mv: cannot move /wvfm' to a subdirectory of itself, 'wvfm/wvfm'
,但您可以忽略/利用它(快速又肮脏)。
您可以使用以下方法覆盖所有基地:
for entry in $(find * -maxdepth 0 -type d); do
(cd $entry; [[ -d wvfm ]] && \
find * -maxdepth 0 ! -name wvfm -exec mv {} wvfm \;
)
done
find * -maxdepth 0 -type d
再次仅查找顶级目录,
在子外壳中,如果有目录wvfm
,请转到输入目录,
查找除wvfm
目录和-exec
命令mv
以外的所有内容
退出子Shell会使您回到起始(根)目录,准备进行下一次输入。