Linux シェルスクリプト備忘録(cpコマンド)

フォルダ内にあるcsvファイルを指定したフォルダへコピーするシェルスクリプト。

#!/bin/bash
filename=’/hoge/*.csv’
dirname=’/hoge2′
cp -a -f -p ${filename} ${dirname}

変数<filename>にコピーしたいファイルを指定

全てのcsvファイルを対象としたいのでファイル名は<*.csv>で指定
*はワイルドカード

変数<dirname>にコピー先となるディレクトリを指定

cpコマンドを使用してコピー実行

cpコマンド実行時に以下のオプションを指定
-a:元ファイルの属性とディレクトリの構成を保持
-f:警告なしで上書き
-p:元ファイルのオーナー、グループ、パーミション、タイムスタンプを保持

Linux シェルスクリプト備忘録(改行コード)

catコマンドで改行コードをチェック
式:cat “オプション” “ファイル名”
全ての非表示文字を表示するためoptionに-Aを指定
cat -A hoge.txt

行の末尾に^M$が表示されている場合は改行コードがCRLFとなっているため
以下のコマンドで改行コードをLFにする

trコマンドで改行コードを削除し新ファイル名で保存する
式:tr “オプション ” “文字セット” <“対象ファイル名 “> “コピー先ファイル名”
改行コードをを削除したいので-dオプションを使用して文字セットの削除を行いhoge2.txtとして保存
tr -d ‘\r’ <hoge.txt> hoge2.txt