Linux
- ディスク使用状況を確認する
- ホスト名を確認する
- 文字コードの置換(UTF-8 → SHIFT-JIS)
- 文字コードの置換(SHIFT-JIS → UTF-8)
- 改行文字の置換(CRLF → LF)
- 改行文字の置換(LF → CRLF)
- 正規表現で「行頭」を表現する
- 条件に一致するディレクトリ内の複数ファイルについて内容を取得し、区切り線を入れながら新しいファイルとして出力する
- 一括リネーム(サブディレクトリ内のファイルも対象)
- ファイルを指定行数で分割する
- 直前のコマンドの返り値を取得して表示
- ファイル名を一括変更する
- ファイル名を変更しながら複製する
- ファイルの所有者を変更する
ディスク使用状況を確認する
df -h
ホスト名を確認する
uname -n
文字コードの置換(UTF-8 → SHIFT-JIS)
iconv -f utf-8 -t cp932 data.csv -o data_sjis.csv
文字コードの置換(SHIFT-JIS → UTF-8)
iconv -f cp932 -t utf-8 data_sjis.csv -o data.csv
改行文字の置換(CRLF → LF)
sed -i 's/¥r//g' target_file
改行文字の置換(LF → CRLF)
sed -i 's/$/¥r/g' target_file
正規表現で「行頭」を表現する
「^」で表現。
条件に一致するディレクトリ内の複数ファイルについて内容を取得し、区切り線を入れながら新しいファイルとして出力する
for dir in `find NUMBER* -maxdepth 0 -type d`; \
do echo > ./$dir/new_file_name_$dir.log; \
for i in `tree -if /log_directory/$dir/ | grep .log`; \
do echo -------- $i -------- >> ./$dir/new_file_name_$dir.log; \
cat $i | grep -e WARNING: -e ERROR: >> new_file_name_$dir.log; \
echo >> new_file_name_$dir.log; \
done; \
done;
一括リネーム(サブディレクトリ内のファイルも対象)
for i in `tree -if --charset=C /home/user/ | grep .csv`; \
do echo ----- $i -----; \
rename before_text after_text $i; \
done;
-i ... 階層構造をなくす
-f ... フルパスで表示する
--charset=C ... 罫線の文字化けを回避する
ファイルを指定行数で分割する
split -l [分割する行数] [分割するファイル] [分割後ファイルのプレフィックス]
直前のコマンドの返り値を取得して表示
echo $?
ファイル名を一括変更する
for i in `tree -if /home/data/data_*.csv`; do rename before_name after_name $i; done
ファイル名を変更しながら複製する
for i in `ls /home/data/data_*.csv`; \
do cp -a $i `echo $i | sed "s/beforetxt/aftertxt/g"`; \
done
ファイルの所有者を変更する
chown user:group target_file