handson(light): aws cli output

2.0.2. ファイルの作成 (プレフィクス: ${HOME}/environment/local-handson-cli-awscli-output/test*)

手順の目的

ファイル名プレフィックス"${HOME}/environment/local-handson-cli-awscli-output/test"のファイルを3500個作成します。

設定値の指定

設定値の指定

手順に必要な設定値を変数に格納をします。

1. ファイル保存用ディレクトリ

ファイル保存用ディレクトリを指定します。

変数の設定:

DIR_TARGET="${HOME}/environment/local-handson-cli-awscli-output"

ディレクトリが存在することを確認し、存在しない場合は作成します。

コマンド:

ls -d ${DIR_TARGET} > /dev/null 2>&1 \
  || mkdir -p ${DIR_TARGET}

結果(例):

(出力なし)

2. ファイル名プレフィックス

ファイル名のプレフィックスを指定します。

変数の設定:

FILE_TARGET_PREFIX="${DIR_TARGET}/test" \
  && echo ${FILE_TARGET_PREFIX}

結果(例):

${HOME}/environment/local-handson-cli-awscli-output/test

3. ファイル作成数

ファイルの作成数を指定します。

変数の設定:

COUNT_FILE_TARGET='3500'

設定値の確認

各変数に正しい設定値が格納されていることを確認します。

変数の確認:

cat << END

  # 1. DIR_TARGET:"${HOME}/environment/local-handson-cli-awscli-output"
       DIR_TARGET="${DIR_TARGET}"
  # 2. FILE_TARGET_PREFIX:"${HOME}/environment/local-handson-cli-awscli-output/test"
       FILE_TARGET_PREFIX="${FILE_TARGET_PREFIX}"
  # 3. COUNT_FILE_TARGET:"3500"
       COUNT_FILE_TARGET="${COUNT_FILE_TARGET}"

END

各変数について、上の行と下の行の値の内容もしくは形式が同じであることを確認します。 もし異なる場合は、それぞれの手順番号に戻って変数の設定を行います。

処理の実行

1つ目のファイルを作成します。

変数の確認:

cat << END

  # FILE_TARGET_PREFIX:"${HOME}/environment/local-handson-cli-awscli-output/test"
    FILE_TARGET_PREFIX="${FILE_TARGET_PREFIX}"

END

コマンド:

dd if=/dev/zero of=${FILE_TARGET_PREFIX}_1.data bs=1 count=1

結果(例):

1+0 records in
1+0 records out
1 byte (1 B) copied, 0.000130677 s, 7.7 kB/s

2つ目以降のファイルを作成します。

変数の確認:

cat << END

  # FILE_TARGET_PREFIX:"${HOME}/environment/local-handson-cli-awscli-output/test"
    FILE_TARGET_PREFIX="${FILE_TARGET_PREFIX}"
  # COUNT_FILE_TARGET:"3500"
    COUNT_FILE_TARGET="${COUNT_FILE_TARGET}"

END

コマンド:

for i in $(seq 2 ${COUNT_FILE_TARGET}); do
  cp ${FILE_TARGET_PREFIX}_1.data ${FILE_TARGET_PREFIX}_${i}.data
done

結果(例):

(出力なし)

完了確認

「ファイル名"${HOME}/environment/local-handson-cli-awscli-output/test"のファイルが3500個存在する。」ことを確認します。

コマンド:

ls ${FILE_TARGET_PREFIX}* \
  | wc -l

結果(例):

3500

手順の完了