Он может быть добавлен при этом '& amp;' может использоваться для добавления дополнительных условий, например
df = df[(df.EPS > 2.0) & (df.EPS <4.0)]
Обратите внимание, что при оценке утверждений панды нужны скобки.
Попробуйте это (GNU sed):
for /f "tokens=2 delims==" %a in ('wmic OS Get localdatetime /value') do set "dt=%a"
sed.exe "s@\(.*CONFIG_PROJECT_SW_DATE_VERSION=\x22\).*\(\x22\)@\1%dt:~2,2%%dt:~4,2%%dt:~6,2%\2@g" file
Измените два %a
на %%a
, если вы помещаете их в пакетный файл.
Я удалил переключатель -i
и добавил его обратно, когда вы проверили, что с выводом все в порядке.
Несколько вещей, которые необходимо учитывать:
sed
в cmd
или в пакетном файле, поэтому будьте осторожны с двойными кавычками и выходом из него. Поэтому я просто изменил кавычки внутри с помощью \x22
, что является еще одним способом ссылки на символы по их ASCII-коду. (Особенность GNU sed). cmd
или в пакетном файле %date:~2,2%%date:~5,2%%date:~8,2%
не гарантированно будет YYMMDD
, в зависимости от различных настроек локали, они могут иметь /
внутри, возможно, это является причиной вашей ошибки. Я попробовал другой способ получить дату, скопировал идею из этого ответа . s
на другой символ, здесь я изменил на @
. /
после флага g
. Пример:
> type file
var CONFIG_PROJECT_SW_DATE_VERSION="whatever"
> @for /f "tokens=2 delims==" %a in ('wmic OS Get localdatetime /value') do @set "dt=%a"
> sed.exe "s@\(.*CONFIG_PROJECT_SW_DATE_VERSION=\x22\).*\(\x22\)@\1%dt:~2,2%%dt:~4,2%%dt:~6,2%\2@g" file
var CONFIG_PROJECT_SW_DATE_VERSION="190327"