teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

5

修正

2021/02/22 02:18

投稿

shinra-men
shinra-men

スコア1

title CHANGED
File without changes
body CHANGED
@@ -3,8 +3,9 @@
3
3
  Powershell初心者です。
4
4
  $pathにはCSVファイルがたくさん入っているとします。
5
5
  すべてのCSVを1つずつ読み込み、2列目の2行目がABCDから始まっていたら、CSVを$Targetへ移動させたいです。
6
- CSVはヘッダー有り・文字コードJIS・区切り文字,です。
7
6
 
7
+ CSVはヘッダー有り・文字コードSJIS・区切り文字,です。
8
+
8
9
  ### 発生している問題・エラーメッセージ
9
10
 
10
11
  エラーメッセージはないのですが、2列目2行目を指定できていません。

4

CSVはヘッダー有り・文字コードJIS・区切り文字,です。

2021/02/22 02:18

投稿

shinra-men
shinra-men

スコア1

title CHANGED
File without changes
body CHANGED
@@ -3,6 +3,7 @@
3
3
  Powershell初心者です。
4
4
  $pathにはCSVファイルがたくさん入っているとします。
5
5
  すべてのCSVを1つずつ読み込み、2列目の2行目がABCDから始まっていたら、CSVを$Targetへ移動させたいです。
6
+ CSVはヘッダー有り・文字コードJIS・区切り文字,です。
6
7
 
7
8
  ### 発生している問題・エラーメッセージ
8
9
 

3

修正

2021/02/22 02:17

投稿

shinra-men
shinra-men

スコア1

title CHANGED
File without changes
body CHANGED
@@ -37,7 +37,7 @@
37
37
  ```
38
38
  #CSVファイルを1つずつ読み込む
39
39
  $array | ForEach-Object{
40
- If(Get-Content $_ | ConvertFrom-Csv -Header 2列目のヘッダー名 | Select-String -Pattern "BtoB*"){
40
+ If(Get-Content $_ | ConvertFrom-Csv -Header 2列目のヘッダー名 | Select-String -Pattern "ABCD*"){
41
41
  Move-Item $_ $Target -Force
42
42
  }
43
43
  ```

2

CSVの内容を取得する文

2021/02/20 06:05

投稿

shinra-men
shinra-men

スコア1

title CHANGED
File without changes
body CHANGED
@@ -28,4 +28,16 @@
28
28
  Move-Item $_ $Target -Force
29
29
  }
30
30
  }
31
+ ```
32
+
33
+ ### 2/20追記 
34
+ Ifの中にCSVの2列目のヘッダーを指定する文を追加しました。
35
+ 2列目から検索をしたいのに、1列目を検索してしまいます。
36
+
37
+ ```
38
+ #CSVファイルを1つずつ読み込む
39
+ $array | ForEach-Object{
40
+ If(Get-Content $_ | ConvertFrom-Csv -Header 2列目のヘッダー名 | Select-String -Pattern "BtoB*"){
41
+ Move-Item $_ $Target -Force
42
+ }
31
43
  ```

1

コメント追加

2021/02/20 06:04

投稿

shinra-men
shinra-men

スコア1

title CHANGED
File without changes
body CHANGED
@@ -19,6 +19,10 @@
19
19
  #移動先フォルダ
20
20
  $Target = ""
21
21
 
22
+ #CSVファイルの一覧
23
+ $array = Get-ChildItem -File -Name $path
24
+
25
+ #CSVファイルを1つずつ読み込む
22
26
  $array | ForEach-Object{
23
27
  If(Select-String -Path $_ -Pattern "ABCD*" -Quiet){
24
28
  Move-Item $_ $Target -Force