質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
シェルスクリプト

シェルスクリプトは、UNIX系のOSもしくはコマンドラインインタプリタ向けに記述されたスクリプト。bash/zshといったシェルによって実行されるため、このように呼ばれています。バッチ処理などに使用されており、テキストファイルに書かれた命令を順に実行します。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

3回答

2345閲覧

シェルスクリプト for 分csvファイルの特定の列を読み込ませたい

Tubasa1995

総合スコア83

シェルスクリプト

シェルスクリプトは、UNIX系のOSもしくはコマンドラインインタプリタ向けに記述されたスクリプト。bash/zshといったシェルによって実行されるため、このように呼ばれています。バッチ処理などに使用されており、テキストファイルに書かれた命令を順に実行します。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2018/12/24 10:57

前提・実現したいこと

かなり初心者質問になるかもしれません.
今,したのようなコードを書いてcsvファイルの1列ずつを抜き出した
それぞれをcsvファイルとして保存しようと思い,以下のコードを作りました.
しかし
test.sh: line 1: syntax error near unexpected token (' test.sh: line 1: for i in ((i=1 ; i<7702 ; i++))'
のようなエラーがでます.

シェルスクリプトは初めて作ったのですが,このコードはダメなのでしょうか.

##作成したコード

for i in ((i=1 ; i<3 ; i++)) do cut -d ',' -f $i aaa.csv > i.csv done

##aaa.csv(Notepadで開いたもの)

1,6,11 2,7,12 3,8,13 4,9,14 5,10,15

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

質問タイトルから外れますが、フルテーブルスキャンを列数だけ繰り返すのが非効率なので、awkを使うとこんな感じでしょうか。

sh

1$ < aaa.csv awk -F, '{ for (i = 1; i <= NF; i++){ f = i ".csv"; print $i > f }}'

投稿2018/12/25 03:57

emasaka

総合スコア524

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

for i in ((i=1 ; i<3 ; i++))は、shではfor i in `seq 1 2`と書きます(バッククォートを全角で表現)。
または、Bash前提だと、for i in {1..2}や、for((i=1; i<3; i++))と書けます。

が、データを見るとおそらく、i<3ではなくてi<=3で 1,2,3と実行したいのでは?

Bash

1for i in {1..3} 2do 3 cut -d , -f $i aaa.csv > i.csv 4done

投稿2018/12/24 12:03

otn

総合スコア84505

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

こうじゃないですかね。

bash

1for i in $(seq 1 3) 2do 3 cut -d ',' -f $i aaa.csv > $i.csv 4done

投稿2018/12/24 11:15

shozi3

総合スコア691

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問