[解決済み】PowerShellで文字列を整数に変換する方法
2022-03-17 18:58:43
質問
私は番号付きのディレクトリのリストを持っています。私は最も高い番号を見つけ、それを1つ増やし、その増分の値で新しいディレクトリを作成しなければなりません。私は以下の配列を並べ替えることができますが、最後の要素は文字列であるため、増分することができません。
この下の配列の要素を整数に変換するにはどうすればよいですか?
PS C:\Users\Suman\Desktop> $FileList
Name
----
11
2
1
解決方法は?
変数の前に型を指定することで、その型を強制的に変更することができます。これは、以下のように呼ばれます。 (ダイナミック)キャスティング ( 詳細はこちら ):
$string = "1654"
$integer = [int]$string
$string + 1
# Outputs 16541
$integer + 1
# Outputs 1655
例として、次のスニペットでは、各オブジェクトに
$fileList
を追加し、さらに
IntVal
の整数値を持つプロパティです。
Name
プロパティでソートされます。
$fileList
をこの新しいプロパティに適用し (デフォルトは昇順)、最後の (最も高い)
IntVal
) オブジェクトの
IntVal
の値をインクリメントし、最後にそれにちなんだフォルダを作成します。
# For testing purposes
#$fileList = @([PSCustomObject]@{ Name = "11" }, [PSCustomObject]@{ Name = "2" }, [PSCustomObject]@{ Name = "1" })
# OR
#$fileList = New-Object -TypeName System.Collections.ArrayList
#$fileList.AddRange(@([PSCustomObject]@{ Name = "11" }, [PSCustomObject]@{ Name = "2" }, [PSCustomObject]@{ Name = "1" })) | Out-Null
$highest = $fileList |
Select-Object *, @{ n = "IntVal"; e = { [int]($_.Name) } } |
Sort-Object IntVal |
Select-Object -Last 1
$newName = $highest.IntVal + 1
New-Item $newName -ItemType Directory
Sort-Object IntVal
は不要なので、削除してください。
お好みで
.
[int]::MaxValue = 2147483647
を使用する必要があるので
[long]
タイプは、この値を超えて (
[long]::MaxValue = 9223372036854775807
).
関連
-
[解決済み】'<'演算子は将来の使用のために予約されている
-
[解決済み] インストールされたPowerShellのバージョンを確認する
-
[解決済み] PowerShellで「このシステムではスクリプトの実行が無効になっています」と言われる。
-
[解決済み] PowerShellでコードをコメントアウトする方法とは?
-
[解決済み] Windows PowerShellの環境変数を設定する
-
[解決済み] PowerShellで文字列と変数を連結する方法は?
-
[解決済み] PowerShellでコマンドライン引数を処理する方法
-
[解決済み] PowerShellでスクリプトを終了させる
-
[解決済み] Powershellで複数のファイル内の文字列を検索してファイル名を返すには?
-
[解決済み】PowerShellスクリプトを実行する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] OutVariableを使用してArrayListを作成する
-
[解決済み] PowerShellで、変数が数値を保持しているかどうかをテストするにはどうすればよいですか?
-
[解決済み] Push-LocationとSet-Locationの使い分けは?
-
[解決済み] Powershell send-mailmessage - 複数の受信者にメールを送信する
-
[解決済み] PowerShellで改行するには?
-
[解決済み] Powershell:スクリプトにエラーが表示されないようにするにはどうすればよいですか?
-
[解決済み] PowerShellを使用してSFTPにファイルをアップロードする
-
[解決済み] Powershellでギャラリーが利用できないというエラーが発生しました。
-
[解決済み] Powershell プロセスの開始、タイムアウトによる待機、Kill、終了コードの取得
-
[解決済み] powershellの&マークはどういう意味ですか?