在一个文件中我有那种线:
I have lot of spaces in me.
Run Code Online (Sandbox Code Playgroud)
我用这个powershell代码用一个空格替换每个空格:
$String = "I have lot of spaces in me."
while ($String.Contains(" "))
{
$String = $String -replace " "," "}
Run Code Online (Sandbox Code Playgroud)
结果是:
I have lot of spaces in me.
我想对txt文件中的每一行执行此操作.你能给我最好的方法吗?
第二部分:
如果有多个空格,例如,我怎样才能更换东西;
?
答复将是:
;4828;toto;toto;Ticket;0112APPT
Run Code Online (Sandbox Code Playgroud)
并不是 :
;4828;toto toto;Ticket;0112APPT
Run Code Online (Sandbox Code Playgroud)
要清楚,我想用角色替换两个白空间 ;
我试图在我的Powershell脚本中执行以下命令:
D:\Apps\Documentum\product\7.3\bin\idql.exe -udmadmin -pPassword dctm04 -RC:\temp\documentum\session_list.txt -w20 > C:\temp\documentum\session_logstash.txt
Run Code Online (Sandbox Code Playgroud)
在我的powershell脚本中,我这样做:
$DOCBASE="dctm04"
$USER_DOCBASE="dmadmin"
$USER_PWD="Password01"
$IDQL_PATH="D:\Apps\Documentum\product\7.3\bin"
$QRY_SESSIONS="C:\temp\documentum\session_list.txt"
$QRY_LOG_SESSIONS="C:\temp\documentum\session_logstash.txt"
$IDQL_PATH\idql.exe -u$USER_DOCBASE -p$USER_PWD $DOCBASE -R$QRY_SESSIONS -w20 > $QRY_LOG_SESSIONS
Run Code Online (Sandbox Code Playgroud)
但它无法正常工作,我收到以下错误:
At C:\temp\documentum\Generate.ps1:49 char:13
+ $IDQL_PATH\idql.exe -u$USER_DOCBASE -p$USER_PWD $DOCBASE -R$QRY_SESSIONS -w20 ...
+ ~~~~~~~~~
Unexpected token '\idql.exe' in expression or statement.
+ CategoryInfo : ParserError: (:) [], ParseException
+ FullyQualifiedErrorId : UnexpectedToken
Run Code Online (Sandbox Code Playgroud)
我认为,我没有在命令上正确使用变量。
请注意,我的powershell版本是:
PS C:\temp\documentum> $PSVersionTable.PSVersion
Major Minor Build Revision
----- ----- ----- --------
4 0 -1 -1
Run Code Online (Sandbox Code Playgroud)
你能给我解决方案来解决我的问题吗