我想从下面的路径中提取文件名:
D:\Server\User\CUST\MEA\Data\In\Files\CORRECTED\CUST_MEAFile.csv
现在我写了这个代码来获取文件名.只要文件夹级别没有改变,这工作正常.但是如果文件夹级别已更改,则此代码需要重写.我正在寻找一种方法使其更灵活,例如代码总是可以提取文件名,而不管文件夹级别如何.
($outputFile).split('\')[9].substring(0)
Run Code Online (Sandbox Code Playgroud) 我需要一个Excel函数,可以\从路径中提取最后一个字符串,如果没有\找到,则取整个字符串.例如:
D:\testing\rbc.xls output will be rbc.xls
D:\home\testing\test1\script1.sql output will be script.sql
script 3.txt output will be script 3.txt
Run Code Online (Sandbox Code Playgroud) 在powershell中这是一种放置多个搜索模式的方法吗?下面的命令示例,我想搜索那些具有 ASA 或 TMP 的字符串。但这不起作用。搜索应匹配为单个单词示例:ASA 为 true 但 TIASAP 为 false
Get-ChildItem E:\Test\Workflow -Exclude *.bak -Recurse | Select-String -pattern "ASA" -or "TMP" -SimpleMatch | Where-Object LineNumber -le 50 | group path | select name
Run Code Online (Sandbox Code Playgroud) 如何排除文件夹?现在我硬编码文件夹名称,但我希望它更灵活.
foreach($file in Get-ChildItem $fileDirectory -Exclude folderA,folderb)
Run Code Online (Sandbox Code Playgroud) 为什么即使有错误生成,powershell 也不会陷入 catch 语句?在这种情况下,我故意删除 Data 文件夹以查看 catch 块是否会被调用。
Catch
{
$ErrorMessage = $_.Exception.Message
$FailedItem = $_.Exception.ItemName
Send-MailMessage -From xxxxxxxxxx
Break
}
Run Code Online (Sandbox Code Playgroud)
从 powershell 收到此错误消息
Set-Content : Could not find a part of the path 'D:\Data\CUST.csv'.
At D:\Data\Scripts\CUST_HOUSEKEPPING.ps1:55 char:79
+ $getData2 | Where-Object{[regex]::matches($_,"\,").count -eq 22} | set-content <<<< $outPath
+ CategoryInfo : ObjectNotFound: (D:\Data\CUST.csv:String) [Set-Content], DirectoryNotFo
undException
+ FullyQualifiedErrorId : GetContentWriterDirectoryNotFoundError,Microsoft.PowerShell.Commands.SetContentCommand
Run Code Online (Sandbox Code Playgroud) 表记录如下
D:\HOME\DOC\FILE\2001\12\TT-12S2Q99-EE-EE1.pdf
D:\HOME\DOC\FILE\2002\02\TT-12S2Q94-EE-EE1.xml
D:\HOME\DOC\FILE\2005\05\TT-12S2Q98-EE-EE1.pdf
D:\HOME\DOCS\TEMPFILE\TT-12S2Q88-EE-EE1.pdf
Run Code Online (Sandbox Code Playgroud)
我想只提取这些文件名.结果应该是
TT-12S2Q99-EE-EE1
TT-12S2Q94-EE-EE1
TT-12S2Q98-EE-EE1
TT-12S2Q88-EE-EE1
Run Code Online (Sandbox Code Playgroud)
有人可以帮我一把吗?