私はpowershell 2.0スクリプトの変数に絶対パスを持っています。私は拡張機能を削除したいが、完全なパスとファイル名を保持したい。それを行う最も簡単な方法は?PowerShellで拡張子なしのファイルパスを取得するにはどうすればよいですか?
私はと呼ばれる変数にC:\Temp\MyFolder\mytextfile.fake.ext.txt
を持っているのであれば、$file
は私が[string]
タイプであれば
C:\Temp\MyFolder\mytextfile.fake.ext
それは[文字列です。 ]タイプ。私はそれをより堅牢にして、可変長の長さに対処したいのですか? '.pl'ファイルや' .blahblah'ファイルがあるとどうなりますか? –
@ MarkAllison追加されたソリューション.. –
'$ file.Substring(0、$ file.LastIndexOf( '。'))'は良いものです。しかし、2つのケースを考えてみましょう。1)拡張子がなく、中央にドットがあります。 'C:\ Tests.1 \ FileNoExtension'の結果は 'C:\ Tests'になります。 2)全くドットがないと例外が発生する。 –