1 辅助
1.1 man
格式化以及列出命令的(在线)操作手册。
man man
man ls
man cd
1.2 Tab键
自动补全
1.3 *
通配符,匹配一个或一个以上任意字符
ls *.txt
ls a*.txt
cp *.txt /path/to/des/
自行了解 “?”和”[]”
1.4 clear
清屏(其实只是往上翻了)
2 目录文件
2.1 pwd
显示当前或者工作路径。
pwd
2.2 ls
列出目录下的内容
按 Ctrl+C 复制代码
按 Ctrl+C 复制代码
2.3 find
在文件系统中查找文件
find命令很复杂,甚至可以称得上一门脚本语言,这里只介绍几种常用的命令。
find /path/to -name “test*” 按照命名规则查找
find /path/to -type f 按照文件类型查找
find /path/to -name '目录名'-type d 查找目录
find /path/to -ctime -1 查找一天以内的文件和目录
find /path/to -cmin +1440 查找1440分钟以前的文件和目录
以上四种查找较为常见,可以组合使用。
另外,可以在查找后使用 -exec 执行后续操作
2.4 cd 改变当前所在路径
cd [dir]
cd 当前用户主目录
cd /home/qq 绝对路径
cd . 本路径
cd .. 上一级目录
cd ~ 进入到自己的家目录
cd / 根目录
cd - 返回进入此目录之前所在的目录
2.5 mkdir
创建目录
mkdir testpwd
mkdir /home/qq/test1
mkdir -p /home/qq/test1/test11/test111 #若目录不存在,则创建
2.6 cp
拷贝
#文件到文件
cp file1 file2 拷贝并重命名
cp /path1/file1 /path2/file2 拷贝并重命名
#文件到目录
cp file1 ../test1/ 拷贝
cp /home/qq/test1/file1 ./ 拷贝
#目录到目录
cp -r test1 test2 递归拷贝
2.7 rm
删除文件或者目录
rm file1
rm -f file1 #不提示删除
rm -rf dir #不提示删除某个文件夹,一定先执行pwd确定自己的位置,慎用
3 文件查看编辑
3.1 cat
显示文件内容
cat file
cat -n file #显示行号
避免对大文件使用cat
3.2 head
显示文件头部
head test.log #默认显示10行
head -n 10 test.log #查询日志文件中的头10行日志;
head -n -10 test.log #查询日志文件除了最后10行的其他所有日志;
3.3 tail
显示文件尾部
tail -f test.log 实时显示文件尾部(很重要的命令)
tail -n 10 test.log 查询日志尾部最后10行的日志;
tail -n +10 test.log 查询10行之后的所有日志;
#从第3000行开始,显示1000行。即显示3000~3999行
cat filename | tail -n +3000 | head -n 1000
#显示1000行到3000行
cat filename| head -n 3000 | tail -n +1000
注解:
tail -n 1000:显示最后1000行
tail -n +1000:从1000行开始显示,显示1000行以后的
head -n 1000:显示前面1000行
3.4 vi
编辑器,查看或者编辑一个文本
vi a.txt
i 进入编辑状态
esc 退出编辑状态
:wq! 保存退出
:q! 退出不保存i
非编辑状态下q
dd 删除
yy 拷贝
p 粘贴
/uu 查找包含uu的行
n 查找下一行
shift+n 查找上一行
ctrl+f (forward)下一页
ctrl+b (back)上一页
3.5 echo
echo 123 #回显
echo aaa>>a.txt #追加
echo aaa>a.txt #覆盖
3.6 sort
文本排序命令
sort -n file 以数字方式排序
sort -r file 倒序
sort -u file 剔重
sort -rn file #ASCII码方式倒序
3.7 grep
打印匹配的行,grep经常和管道配合使用
grep “正则表达式” file
(注意,用好grep的前提是熟悉linux下的正则)
grep 3 a.txt #a.txt文件中包含3的行都打印出来
grep -n 3 a.txt #包含3的行号和行给打出来
grep -v 3 a.txt #不包含3的行显示出来
grep 89$ a.txt #结尾为89的行显示出来
grep ^98 a.txt #开头为98的行显示出来
grep -n aa * #当前目录下所有包含aa的行显示出来,打印出行号
4 示例
1 Linux下的任务管理器-top命令
2 linux下查看系统系统进程中是否有tomcat在运行的命令是
ps -aux | grep tomcat
注解:
ps Process Status
-aux 显示所有包含其他使用者的行程
管道符“|”,这个符号可以将一个命令的标准输出管道为另外一个命令的标准输入
3 linux下查看系统系统硬盘空间
$df -lh
显示所有硬盘的使用状况
4 将当前目录中所有后缀为.log的日志行数统计追加到当前目录的codelines.txt文件中并复制到/server/cache/目录下
find -name "*.log" |xargs cat | grep ERROR |wc -l>codelines.txt
cp codelines.txt /server/cache/