我尝试使用PowerShell脚本更改文件内容中的开始日期和结束日期,但它将两个日期更改为相同。
class CTest
{
private:
int a = 0;
BYTE b; CHAR* c; int d; int e; int f; int g;
public:
CTest() b:(0)
{
c = 0;
}
};
文本文件的内容是这样的:
http://www.google.com="Global History"&customer=guest&password=guest&STARTTIME=2016,01,30,00,00,00&STOPTIME=2016,01,30,00,00,00&POINTSEVERY=15 min&GRAPHTYPE=excel
答案 0 :(得分:1)
您需要在开始日期之前替换结束日期,否则开始日期将与第一次更换后的结束日期相同。因此,第二次替换会将开始和结束日期更改为新的结束日期值。此外,如果要在多个文件中进行替换,则无法将路径放在同一个变量中,以免第二个路径替换第一个路径。使用列表和foreach
循环(或类似的东西)代替。
$paths = 'H:\oim\adcbsm007\adcbsm007.txt', 'H:\oim\alps027\alps027.txt'
$startOld = '2016,01,28'
$startNew = '2016,01,29'
$endOld = '2016,01,29' # == $startNew
$endNew = '2016,01,30'
foreach ($p in $paths) {
(Get-Content $p) -replace $endOld, $endNew -replace $startOld, $startNew |
Set-Content $p
}