リストを作成するためのBashスクリプト

リストを作成するためのBashスクリプト

bashスプレッドシートでcsv正しい形式の列を選択してリストを生成するスクリプトを作成するにはどうすればよいですか?

csv次の内容を含むファイルがある場合:

        [user]$ cat list1.csv
        Last, First, user
        lname1, fname1, user1
        lname2, fname2, user2

        [user]$ cat list2.csv
        Last, First, user
        lname3, fname3, user3
        lname4, fname4, user4

スクリプトを次のように呼び出したいと思います。CreateList <column> <file1> <file2> ...

たとえば、

        [user]$ CreateList 2 list2.csv list1.csv
        list2: fname3, fname4
        list1: fname1, fname2

ベストアンサー1

そうshではありませんが、bash実行bashできます。

$ cat CreateList 
#!/bin/sh

col="$1"; shift

for file
do
        echo -n "$file:"
        cut -d, -f"$col" "$file" | sed 1d | tr '\n' ','| sed '$ s/,$//'
        echo
done

$ 
$ head -9 list*.csv
==> list1.csv <==
Last,First,user
lname1,fname1,user1
lname2,fname2,user2

==> list2.csv <==
Last,First,user
lname3,fname3,user3
lname4,fname4,user4
$ 

$ sh CreateList 2 list2.csv list1.csv
list2.csv:fname3,fname4
list1.csv:fname1,fname2
$ 

おすすめ記事