linux系统管理员应该有的一个习惯就是随时备份文件,通常cp -rf a a.xxx, 但是为备份文件起个名字得花时间想以下,最好是能够自动的创建文件名。

#备份文件用,放入 ~/.bashrc中
#支持文件和目录
#By notsobad
# usage: bak test_file
bak(){ to="`echo $1 | sed 's#/*$##g'`.`date  +%Y%m%d%H%M`"; [ -e "$to" ] && rm -rf $to; cp -rf "$1" $to; }

使用:

529 ~/t>. ~/.bashrc
530 ~/t>ls
file  test
531 ~/t>bak file
532 ~/t>ls
file  file.200912231137  test
533 ~/t>bak test
534 ~/t>ls
file  file.200912231137  test  test.200912231137
535 ~/t>bak ~/t/test
test/              test.200912231137/ 
535 ~/t>bak ~/t/test
test/              test.200912231137/ 
535 ~/t>bak ~/t/test//
536 ~/t>ls
file  file.200912231137  test  test.200912231137