查找文件并打开
vim $(find -name file.txt)
find -name file.txt -exec vim {} \;
查找特定进程并杀掉
ps aux | grep app | grep -v grep | awk '{print $2}' | xargs kill -9
锁屏快捷键
ctrl + alt + L
选择当前目录下除data之外的文件, 并删除
find . -maxdepth 1 -regex "./[^(data)].*" -exec rm -rf {}/;
找到所有相关进程并杀掉
ps aux|grep "xterm"|grep -v "grep"|awk '{print $2}'|xargs kill -9
用进程名杀进程
pkill xterm
缩进工具intent
indent -linux main.c
查找并删除
find / -name '.svn' | xargs rm
find -name *.svn -exec rm {} /;
批量修改后缀名:
如把cpp改为cc
$ rename 's//.cpp//.cc/' *
在指定文件中查找字符串
find . -name *.c | xargs grep string
查看目录大小
du -sh ./dir
同时输出到文件和标准输出
echo "hello world" | tee log.txt
cscope显示文件路径
$ cscope -p10 #10表示最多10级目录
grep查找字符串aaa或bbb
$grep -E "aaa|bbb"
要统计结果行数加-c
将所有.h和.c文件中的tab转为空格
find . -name "*.h" -o -name "*.c" -exec sed -i 's/\t/ /g' {} \;
删除特殊字符文件名的文件
$ls -il #找到inode
find ./ -inum xxxx -exec rm {} \;
tar命令
压缩打包
$ tar -cvf test.tar test #打包
$ tar -zcvf test.tar.gz test #打包+gzip
$ tar -jcvf test.tar.bz2 test #打包+bzip2
解压
$tar -xvf test.tar
$tar -zxvf test.tar.gz
$tar -jxvf test.tar.bz2
添加用户
如添加用户,例:
$ sudo adduser jzj #建议不要用useradd
$ sudo chown jzj:jzj jzj
以其它用户身份登录
如换到用户jzj,例:
$ su - jzj
切换为root用户
$ sudo -s -h
文件作为参数
$ program "`ls`"
将错误输出和标准输出同时定向到屏幕和文件
./xxx.sh 2>&1 | tee outpu.txt
查找过程中忽略指定目录
find . -path /home/zjin/tmp -prune -o -name "to_search.txt" -print
sed删除windows换行符
sed -i 's/^M//g' data.txt # ^M 输入方法是CTRL+v,放开v,然后按m
另外可以用dos2unix命令
|