1、ftp
ftp ip 登陆ftp服务器
2、awk
awk '{print $1}' test.txt 打印文档第一列内容
awk 'BEGIN{print "a","b"} {print $1}' test.txt 打印第一列内容之前先打印a b
awk 'END{print "a","b"} {print $1}' test.txt 打印第一列内容之后再打印a b
3、rpm
rpm -qa | grep name
rpm -e name 删除
rpm --nodeps -e name 同依赖包一起删除
4、查看目录占用空间
du -h --max-depth=1
du -sh 路径 查看该目录占用空间(不展示每一个文件大小)
du -ah 路径 查看该目录占用空间(展示每一个文件大小)
du -ch 路径 查看该目录下所有文件的大小并且计算总和
5、vim
set nu 查看行号
set nonu 取消行号
/app 查找app
23G 跳转到23行
u 撤销
DD 删除整行
gg 跳转首行
set ff=unix 设置文件为unix
set fileencoding=utf-8 转换文件编码
set number 显示行数
6、grep
grep -a 'app' file.txt 以文本方式搜索app
grep -c 'app' file.txt 计算app出现的行总数
grep -E "word1|word2|word3" file.txt 满足任一关键字匹配
grep word1 file.txt | grep word2 |grep word3 同时满足多个关键字匹配
grep -A 5 'app' file.txt 搜索app,打印关键行后五行
grep -C 5 'app' file.txt 搜索app,打印关键行前后各五行
grep -B 5 'app' file.txt 搜索app,打印关键行前五行
-i 忽略大小写
-n 输出行号
--color 颜色高亮关键字
7、split
split -l 300 large_file.txt new_file_prefix 按行数分割文件large_file.txt,重命名为new_file_prefix
split -b 10m large_file.log new_file_prefix 按字节大小分割文件
cat part_* > merge_file.txt 合并文件
-d 使用数字后缀
--verbose 显示分割进度
-a 追加后缀,最多追加两个
8、yum
yum search name 找到name的详细包名
yum install 包名 安装该文件
yum -y update 更新yum仓库
9、获取java堆日志
jmap -heap $PID
jcmd $PID GC.heap_dump /opt/heap.hprof 获取该进程的日志,存为heap.hprof文件
10、权限修改
r 读取权限,数字代号为“4”
w 写入权限,数字代号为“2”
x 执行或切换权限,数字代号为“1”
chown app:app -R 目录 修改目录权限所有者为app
chmod 修改文件权限
useradd groupname 将用户加入某组
11、解压/压缩
tar -zxvf package.tar.gz -C new_dir 解压到指定目录
unzip package_name.zip -d dir_name 解压到执行目录
tar -cvf a.tar a 将a压缩成a.tar
tar -czf a.tar.gz a 将a压缩成a.tar.gz
12、ps
ps -u root 显示root用户的进程
ps -ef | grep a 显示包含a的进程
ps -aux 显示在内存中的进程
13、mkdir
mkdir -p /home/user/{test,test1,test2} 创建多个目录
14、tcpdump抓包
tcpdump port 8021 -v -w test.cap
15、scp
scp -r app@IPA:目录A 目录B 从服务器A复制文件到服务器B
16、查看端口占用
netstat -anp |grep 端口号
lsof -i:端口号 查看指定端口使用情况
17、kill
kill -9 进程号 强制关闭进程
kill -1 进程号 重启进程
18、查看当前用户行为
w
19、查看文件
cat 从首行展示全部内容
more/less 从首行开始,可翻页
nl 从首行开始展示并打印行号
tail 从末尾开始
od 以二进制方式读取文件内容
tail -f -n 500 file.txt 持续打印文件末尾五百行
more -50 file.txt 显示50行每页
20、df
df -ah 查看所有目录空间使用情况,以m计算
21、系统基本信息
hostname --计算机名称
uname --操作系统名称
uname -a --查看操作系统所有信息
uptime --运行时间查询
users --显示当前所有用户标识
whoami --显示用户标识
who --显示更多信息
w --查看更详细的用户信息
21、top
top查看系统信息
T 根据时间排序显示进程
M 根据内存大小排序
P 根据cpu大小排序
m 切换显示内存信息
t 切换显示进程和cpu信息
22、删除目录下最早的10个文件
ls -tr | head -10 | xargs -i -n1 rm -rf {}
23、ls
ls -t --按时间排序(最新的在最前面)
ls -tr --按时间排序(最新的在最后)
24、xargs
-i --将xargs分割的每项参数(一般是一行一行来赋值)赋值给{}
-n --num 命令在执行的时候一次用的参数个数(-n1表示一次使用一个前一管道的结果作为入参)
-t --先打印命令,在执行
25、sed
sed -n '2p' test.txt --仅打印第二行数据
sed -n '2,9p' test.txt --仅打印2-9行数据
sed -n '/root/p' test.txt --仅打印包含root关键字的行
sed -i 's/root/app/g' test.txt --替换所有的root为app(s表示search,g表示global)
sed -n -e '$p' test.txt --打印最后一行
26、查看防火墙端口映射
firewall-cmd --zone=public --list-port
27、查看本机ip
ip addr show
28、删除文件空行
sed -i "/^$/d" filename
29、一些配置
/etc/hosts 设定用户自已的IP与名字的对应表
/etc/HOSTNAME 设定用户的节点名
/etc/resolv.conf 设置DNS
/etc/gateways 设定路由器
30、找到当前目录下大于100m的文件并删除
find ./ -size +100M | xargs rm -rf
31、scp传输文件
scp -r -C 目录A root@ip:目录B 压缩方式传输文件
scp -p 目录A root@ip:目录B 复制时保留文件时间、权限等数据