统计当前目录下所有.h文件的个数:find . -name "*.h" | wc -l
统计当前目录下所有.h文件的总代码行数:find . -name "*.h" | xargs wc -l
统计当前目录的文件总大小:du -hc(-h:以最简的形式显示)
传输大文件时:rz -be
解压tar.gz文件:tar zxvf x.tar.gz
解压tar.bz2文件:tar jxvf x.tar.bz2
将数据库中的数据load到文件: select * into outfile '/home/local/mysql/test.xls' from dp_shop_category;
将utf8编码的文件转化为gb2312: iconv -f utf8 -t gb2312 -o test2.xls test.xls
vi中文乱码: 编辑vi ~/.vimrc:添加:Set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936 fencs=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
在windows上编辑的文件在linux上有^M,删除^M:在命令模式下::%s/ ctrl+v,ctrl+m//g
在vi中将一段代码拷贝到另一处::1,5 copy 7
在vi中同时打开两个文件(窗口):vi -o file1 file2,Ctrl + W后按上下箭头就可以在上下窗口文件间切换
生成core文件:1.查看是否打开开关:ulimit -c,若是0,开关没有打开。 2.打开生成core文件的开关:ulimit -c filesize(core大小 < filesize kB),core文件大小不限,使用命令:ulimit -c unlimited
查看c++程序运行的内存、cpu和时间,使用top -b | grep a.out
使用sort命令排序:sort -t$'\t' -k1nr : 以'\t'分割每列,将第一列按照数字降序排列
在vi中编辑较大工程时,可以借助于ctags和taglist:
下载Ctags:http://ctags.sourceforge.net/
下载Taglist:http://vim.sourceforge.net/scripts/script.php?script_id=273
安装Ctags:./configure & make & sudo make install
安装Taglist:
关联Ctags和Taglist:在~/.vimrc中加入 : let Tlist_Ctags_Cmd='/usr/local/bin/ctags'
配置Taglist,在~/.vimrc中加入:
filetype plugin on
let Tlist_Ctags_Cmd = '/usr/local/bin/ctags' “设置ctags命令目录
let Tlist_Show_One_File = 1 "不同时显示多个文件的tag,只显示当前文件的
let Tlist_Exit_OnlyWindow = 1 "如果taglist窗口是最后一个窗口,则退出vim
let Tlist_Use_Right_Window = 1 “让taglist窗口在右侧显示
ctags使用:
Ø 在要运行vim的目录,ctags –R
Ø 将光标放在某个tag处, Ctrl-] 跳转到当前光标所在的标签;
Ø 将光标放在某个tag处,Ctrl-O 返回到跳转前的位置;
taglist使用:
用“:TlistToggle”来打开和关闭taglist窗口:左(变量、函数列表),右(代码)
使用ctrl+w进行切换
脚本编程:
去除空格:
:%s/ /g
将所有的*替换为.*
:1,$s/*/.*/g
awk使用shell变量:
awk -v line="$var"
shell调试:
sh -x
awk字符串连接"":
a[$1]"\n"$1
awk将字符串转化为数字:+0
awk分隔符:FS,输出分隔符:OFS
shell可以while循环嵌套