小编use*_*481的帖子

从路径中提取文件名

我想从下面的路径中提取文件名:

D:\Server\User\CUST\MEA\Data\In\Files\CORRECTED\CUST_MEAFile.csv

现在我写了这个代码来获取文件名.只要文件夹级别没有改变,这工作正常.但是如果文件夹级别已更改,则此代码需要重写.我正在寻找一种方法使其更灵活,例如代码总是可以提取文件名,而不管文件夹级别如何.

($outputFile).split('\')[9].substring(0)
Run Code Online (Sandbox Code Playgroud)

powershell powershell-2.0

53
推荐指数
8
解决办法
7万
查看次数

在最后一个反斜杠后提取剩余字符串的函数

我需要一个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)

excel vba replace excel-vba excel-formula find-replace

4
推荐指数
1
解决办法
3万
查看次数

Powershell - 选择字符串中的 OR 运算符

在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)

powershell

4
推荐指数
1
解决办法
2万
查看次数

Powershell - 排除Get-ChildItem中的文件夹

如何排除文件夹?现在我硬编码文件夹名称,但我希望它更灵活.

foreach($file in Get-ChildItem $fileDirectory -Exclude folderA,folderb)
Run Code Online (Sandbox Code Playgroud)

powershell

3
推荐指数
2
解决办法
2万
查看次数

Powershell - 即使发生错误,Catch 块也不会调用

为什么即使有错误生成,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)

powershell

2
推荐指数
1
解决办法
923
查看次数

Oracle声明

表记录如下

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)

有人可以帮我一把吗?

oracle

1
推荐指数
1
解决办法
240
查看次数