首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用powershell将文件中的路径从斜杠更改为反斜杠

使用powershell将文件中的路径从斜杠更改为反斜杠
EN

Stack Overflow用户
提问于 2013-06-19 02:46:29
回答 2查看 5.8K关注 0票数 3

我有一个来自unix环境的配置文件,其中在windows中,basepath被替换为basepath:

代码语言:javascript
复制
inputdir = D:\etl-i_win_4/input/000/
inputdir = D:\etl-i_win_4/input/001/
inputdir = D:\etl-i_win_4/input/002/
inputdir = D:\etl-i_win_4/input/003/
inputdir = D:\etl-i_win_4/input/004/
inputdir = D:\etl-i_win_4/input/005/
inputdir = D:\etl-i_win_4/input/006/
inputdir = D:\etl-i_win_4/input/007/
inputdir = D:\etl-i_win_4/input/008/
inputdir = D:\etl-i_win_4/input/009/

movepostcmd = D:\etl-i_win_4/divider/bin/os-independant/divider.postprocessing

ctrldir = D:\etl-i_win_4/divider/applogs/

lockglob = /opt/netmind/test/etl-festo/kette/divider/applogs/dividerglob.lock

我需要适当的windows路径与反斜杠。读取配置文件,用windows路径标识行,并用\替换所有/的函数会是什么样子?请注意,应忽略包含unix路径的最后一行。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-19 03:17:13

您可以尝试使用thid替换所有路径:

代码语言:javascript
复制
Get-Content "C:\temp\config.txt" | % {$_ -replace '/','\'} | set-content "C:\temp\config Bis.txt"

对于Windows path,根据每一行包含一个Windows path匹配"A_LETTER:\“模式。不是很好,但它可以完成这项工作:

代码语言:javascript
复制
Get-Content "C:\temp\path.txt" | % {if ($_ -match "[A-Z]:\\"){$_ -replace '/','\'}else {$_}} | set-content "C:\temp\path Bis.txt"
票数 1
EN

Stack Overflow用户

发布于 2013-06-19 04:22:41

您也可以尝试使用.Net Path类:

代码语言:javascript
复制
Get-Content "C:\temp\config.txt" | % { [System.Io.Path]::GetFullPath($_) }
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17176520

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档