2017年4月20日木曜日

Linux上でシェルスクリプトを作った時のメモ

1."期待していないファイルの終了" というエラーになる。

対応→改行コードをLFにすればOK。


2.$ echo XYZ | md5sum とすると、XYZ+改行 のハッシュ値になってしまう。

$ echo -n XYZ | md5sum のように -n を付けて、XYZのハッシュ値を得る。

3.ファイルの内容を1行ずつ処理

cat と read コマンドを利用する方法

cat ファイル名 | while read 変数名
do
    変数を使った処理
done


以下の例 read-each-line.sh では、ファイルの内容に、行数をつけて表示します。
ファイルは引数として渡します。

#!/bin/bash
numLine=1
cat $1 | while read line
do
    echo $numLine: $line # 出力
    numLine=$((numLine + 1)) # 行数を1増やす
done



参考:[Bash] ファイルを一行ずつ処理する方法

0 件のコメント:

コメントを投稿