関連

概要

テストでデータをこちょこちょ触るのが面倒だったので作りました。

要件は以下。

制限事項は以下。

スクリプト

#!/bin/sh

directory=`./abstpath.sh $1`
if [ ! -d ${directory} ]
then
    echo "the directory does not exist."
    exit
fi

files=`find ${directory} -maxdepth 1 -name "*.dat"`
for file in ${files}
do
    table=`basename ${file} .dat`
    mysql -u<ユーザ> -p<パスワード> <データベース> -e "DELETE FROM ${table};"
    mysql -u<ユーザ> -p<パスワード> <データベース> -e "LOAD DATA LOCAL INFILE '${file}' INTO  TABLE ${table} FIELDS TERMINATED BY '\t';"
    echo "${table} < ${file}"
done
#!/bin/sh

echo $(cd $(dirname $0) && pwd)/$1

操作手順

┣ reset.sh
┗ data/
  ┣ hoge.dat
  ┗ moge.dat

こんなディレクトリ構成になっているとして、

$ ./reset.sh data/

こうするとわーっとなります。

参考

Last-modified: 2013-08-17 (土) 18:07:15 (2227d)