1、显示当前工作目录
pwd
2、查看目录下的所有内容
ls
ls -l 以列方式查看
ls -a 显示所有内容(包括隐藏内容)
ls var 显示var目录下的内容
3、切换目录
cd +路径
清屏 clear
4、修改登录密码
password
修改root账户的密码
password 用户名 修改指定账户的密码
5、创建文件夹
mkdir 文件夹名称
mkdir 文件夹名称1 文件夹名称2
在当前目录下创建多个文件夹
mkdir 创建多级目录 mkdir -p hello/a
6、删除文件夹
rmdir 文件夹名称
rmdir 文件夹名称 文件夹名称
rmdir 只能删除空文件夹
rm -rf 文件夹
7、创建一个空白文件
touch 文件名
touch 文件名 文件名 同时创建多个
8、删除文件
unlink 文件名 一次只能删除一个
9、删除文件或文件夹 (慎用此命令)
rm a.txt 先提示 删除
rm -f a.txt b.txt 不提示 删除
rm -r hello
rm -rf 文件夹 文件
rm -rf *.* 删除当前目录下所有文件
rm -rf * 清空当前目录
10、复制文件
cp a.txt hello/a.txt
cp c.txt hello/ccc.txt 复制并重命名
注意:cp只能复制文件
11、移动文件
mv a.txt hh 将 a.txt移动到 hh 下
mv haha hello/ttt 移动文件夹并重命名
mv 原名 新名 重命名
12、修改权限
用户种类 a(所有用户) u(文件拥有者 ) o( 其它)
读(r 4) 写(w 2) 执行(1)
chmod -R 777 hello 将最大权限赋给hello 包括子文件夹/文件
13、找文件
find 路径 -name 文件名
find /etc -name httpd.conf
14、搜索大文件
find / -type f -size +200M -print0 |xargs -0 ls -l
15、vim编辑器
①打开文件 vi 文件名称
②vi 的两种状态
插入 i
命令(只可接受vi命令) esc
③保存
回到终端 :w 回车
退出并回到终端 :q 回车
强制退出不保存 :q! 回车
保存退出 :wq 回车
查找内容 :/查找的内容
查找下一个 n
显示行号 :set nu 回车
④vim批量替换
:%s/旧数据/新数据/g
⑤单行替换
:s/str1/str2/g
16、 打包
tar cvf xx.tar 文件 文件夹 ...
17、 解包
tar xvf xx.tar
18、 gzip压缩(.gz)
gzip 文件名 gzip hello.tar
19、 gunzip 解压
gunzip xx.gz
20、 压缩 zip
21、 解压
unzip xx.zip
22、查看 linux 盘符信息
fdisk -l
23 挂载U盘 (u盘的格式必须为fat格式)
mount u盘的路径 要挂载的路径
24、卸载U盘
unmount
25、查看文件编码
file 文件名
26、查看文件内容
cat 文件名
27、查看文件内容
more 文件名
28、查看文件内容
less 文件名
29、查看系统进程
ps -A
30、杀死进程
kill 进程号
批量杀死进程
ps -ef|grep art |awk '{print $2}'|xargs kill -9
31、查看系统的所有服务信息
service --status -all
32、 查看时间 日历
查看时间 data
查看当前日历 cal
33、 定时关机
shutdown -h 17:00
shutdown -h now
34、关机
halt
35、切换到root用户
su
36、修改文件的拥有者
chown
chown -R nobody:nobody
37、修改文件的权限
(u:拥有者 g:同组用户 o:其他 r=4 w=2 x=1)
chmod 777 file_name
修改某个文件夹下的所有权限
chmod -R 777 dir
38、文件切割
split -l 500 final_update.sql new_update 将final_update.sql文件按照行号切分,生成小文件
39、scp命令
将服务器的文件拷贝到本地
scp sk@ip: /服务器地址 /本地地址
将本地文件copy到测试服务器
scp /home/daisy/full.tar.gz sk@ip:/home/sk/
在测试机上执行命令 (将阿里云的sql文件备份到测试机的home/sk/目录下)
scp -P 端口号 sk@ip:/home/sunkun/test.txt /home/sk/
40、定时任务(分 时 日 月 周)
# */10 * * * * /usr/local/php7/bin/php /var/www/sk.com/system/SendMail.cron.php
41、将线上文件同步到灰度机器
rsync -avzP --port=端口 file_name 要同步的机器ip::www
42、linux抓包工具
tcpdump -i eth0 host xxxx port xx -S -XX -nn
43、采用sed命令
参数: -i 直接修改文件内容 s使用替换模式替换相应模式
sed -i 's/"order report params customer_id not exist {/{/g' order0628_01.txt
删除指定行
sed -i 'Nd' filename sed -i 'M, Nd' filename
44、awk
只要某一个时间段的日志, 第三列为日志文件的时间
awk '{if($3>"\"2019-11-07T22:34:56+08:00\"," && $3<"\"2019-11-07T22:34:58+08:00\",") print $0}'
有一个nginx的文件, 第一列代表请求的域名, 第二列代表时长, 求域名为百度的平均访问时长
文本内容
www.baidu.com 12
www.sohu.com 34
www.taobao.com 24
www.baidu.com 30
shell命令:
grep 'baidu' a.txt|awk '{print $NF}'|awk '{sum+=$0;} END {if (sum==0) print 0 ; else print sum/NR}'