ls -1 | xargs -I{} -n 1 diff -q {} ../other_directory
diff -r でいいじゃないか
2016年10月20日木曜日
File名の加工 bash
basename, dirname使用しない.
#!/bin/bash
set -eu
logDate=`date +"%y%m%d_%H%M%S"`
fpath=${1}
fdir="${fpath%/*}"
fname_ext="${fpath##*/}"
fname_noext="${fname_ext%.*}"
fext="${fpath##*.}"
echo "$fpath ==>"
echo $fdir
echo $fname_ext
echo $fname_noext
echo $fext
echo "cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}"
#cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}
exit 0
#!/bin/bash
set -eu
logDate=`date +"%y%m%d_%H%M%S"`
fpath=${1}
fdir="${fpath%/*}"
fname_ext="${fpath##*/}"
fname_noext="${fname_ext%.*}"
fext="${fpath##*.}"
echo "$fpath ==>"
echo $fdir
echo $fname_ext
echo $fname_noext
echo $fext
echo "cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}"
#cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}
exit 0
File名の加工 bash
basename, dirname使用しない.
#!/bin/bash
set -eu
logDate=`date +"%y%m%d_%H%M%S"`
fpath=${1}
fdir="${fpath%/*}"
fname_ext="${fpath##*/}"
fname_noext="${fname_ext%.*}"
fext="${fpath##*.}"
echo "$fpath ==>"
echo $fdir
echo $fname_ext
echo $fname_noext
echo $fext
echo "cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}"
#cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}
exit 0
#!/bin/bash
set -eu
logDate=`date +"%y%m%d_%H%M%S"`
fpath=${1}
fdir="${fpath%/*}"
fname_ext="${fpath##*/}"
fname_noext="${fname_ext%.*}"
fext="${fpath##*.}"
echo "$fpath ==>"
echo $fdir
echo $fname_ext
echo $fname_noext
echo $fext
echo "cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}"
#cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}
exit 0
File名の加工 bash
basename, dirname使用しない.
#!/bin/bash
set -eu
logDate=`date +"%y%m%d_%H%M%S"`
fpath=${1}
fdir="${fpath%/*}"
fname_ext="${fpath##*/}"
fname_noext="${fname_ext%.*}"
fext="${fpath##*.}"
echo "$fpath ==>"
echo $fdir
echo $fname_ext
echo $fname_noext
echo $fext
echo "cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}"
#cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}
exit 0
#!/bin/bash
set -eu
logDate=`date +"%y%m%d_%H%M%S"`
fpath=${1}
fdir="${fpath%/*}"
fname_ext="${fpath##*/}"
fname_noext="${fname_ext%.*}"
fext="${fpath##*.}"
echo "$fpath ==>"
echo $fdir
echo $fname_ext
echo $fname_noext
echo $fext
echo "cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}"
#cp -p ${fpath} ${fdir}/${fname_noext}_${logDate}.${fext}
exit 0
2016年10月6日木曜日
2016年9月29日木曜日
2016年8月16日火曜日
2016年8月9日火曜日
sed
[上書き保存]
o Original File保存 -i.org
o 文字列を置換 -e "s/oldstrings/newstrings/"
o File上書き -i
sed -i.org -e "s/ pi --noclear/ PIPI --noclear/" /etc/systemd/system/getty.target.wants/getty@tty1.service
[commnet行削除]
o Original File保存 -i.org
o 文字列を置換 -e "s/oldstrings/newstrings/"
o File上書き -i
sed -i.org -e "s/ pi --noclear/ PIPI --noclear/" /etc/systemd/system/getty.target.wants/getty@tty1.service
[commnet行削除]
$ sed -e '/^#/d' sample.txt
[commnet記号削除]
$ sed -e 's/^#//' sample.txt
2016年7月29日金曜日
2016年6月1日水曜日
2016年3月25日金曜日
ファイルサイズ,ディレクトリサイズの表示
ファイルサイズ
ディレクトリのみ
du -ma | sort -rnディレクトリのみ
du -m | sort -rn
-m : --block-size=1MB 単位-k : --block-size=1KB 探知-a : 全てのファイル
2015年1月6日火曜日
shell exprは遅い
---fast version---
#!/bin/bash
COUNT=0
while ((COUNT < 1000)); do
# while [ $COUNT -lt 1000 ]; do
# 何かの処理
COUNT=$(( COUNT + 1 )) # COUNT をインクリメント
done
---slow version---
#!/bin/bash
COUNT=0
while [ $COUNT -lt 1000 ]; do
# 何かの処理
COUNT=`expr $COUNT + 1` # COUNT をインクリメント
done
2014年7月18日金曜日
crash dump の準備
crash dumpの準備
・SysRq有効設定
# echo 1 > /proc/sys/kernel/sysrq
# /etc/sysctl.conf kernel.sysrq = 1
# sysctl -p(設定有効化)
# sysctl -a(確認)
・Disk空き容量確認 /var/crash
Sysq-key
– Alt-SysRq-c ← 'C'rach Dump
– Alt-SysRq-s ← 'S'ync
– Alt-SysRq-u ← '書き込み不可'で再mount
– Alt-SysRq-b ← re'B'oot
Sysrq-trigger
– # sync;sync;sync
– # echo 1 > /proc/sys/kernel/sysrq
– # echo c > /proc/sysrq-trigger
・SysRq有効設定
# echo 1 > /proc/sys/kernel/sysrq
# /etc/sysctl.conf kernel.sysrq = 1
# sysctl -p(設定有効化)
# sysctl -a(確認)
・Disk空き容量確認 /var/crash
Sysq-key
– Alt-SysRq-c ← 'C'rach Dump
– Alt-SysRq-s ← 'S'ync
– Alt-SysRq-u ← '書き込み不可'で再mount
– Alt-SysRq-b ← re'B'oot
Sysrq-trigger
– # sync;sync;sync
– # echo 1 > /proc/sys/kernel/sysrq
– # echo c > /proc/sysrq-trigger
Linux crash dump に必要なもの
– debug版vmlinux(debug版kernel pkg)
• dump時のkernelと同一versionのdebug版のkernelのfileが必要
例) kernel-PAE-debuginfo-2.6.18-8.10AX.i686.rpm
kernel-debuginfo-2.6.18-8.10AX.x86_64.rpm
– System.map(通常のkernel pkgに含まれる)
• dump時のkernelが使用していたfile
– vmcore(dump本体:Memory Image) :/var/crash/日付/vmcore
• dump時のkernelと同一versionのdebug版のkernelのfileが必要
例) kernel-PAE-debuginfo-2.6.18-8.10AX.i686.rpm
kernel-debuginfo-2.6.18-8.10AX.x86_64.rpm
– System.map(通常のkernel pkgに含まれる)
• dump時のkernelが使用していたfile
– vmcore(dump本体:Memory Image) :/var/crash/日付/vmcore
2014年5月14日水曜日
2014年4月22日火曜日
2014年3月28日金曜日
date command ミリ秒 ms
date command ミリ秒 ms
$ echo $(date +%c) $(printf '%03d' $(expr `date +%N` / 1000000))
処理に時間を掛けたくない場合は, simpleにする.
date +"%Y%m%d %H:%M:%S.%N"
$ echo $(date +%c) $(printf '%03d' $(expr `date +%N` / 1000000))
処理に時間を掛けたくない場合は, simpleにする.
date +"%Y%m%d %H:%M:%S.%N"
登録:
投稿 (Atom)