1 显示目录中文件列表
ls
2 切换工作目录
cd /home/usr
3 显示当前工作目录
pwd
4 创建文件
touch hello.txt
5 创建目录
mkdir -p usr/study
注:该命令-p能够实现自动创建路径中不存在的目录,若省略该选项,则新创建目录的上级目录必须是已经存在的
6 查看文件
less hello.txt
7 搜索文件
find 搜索路径 [选项]搜索关键字例: find /bin -name"bas*"
注:在/bin目录下搜索文件名以bas开始的文件
8 重命名文件
mv hello.txt new.txt
注:将源文件hello.txt重命名为new.txt
9 移动文件
mv new.txt Desktop
注:将文件new.txt移动到Desktop目录中
10 移动并重命名文件
mv Desktop/new.txt Music/hello.txt
注:将Desktop目录下的new.txt文件移动到Music目录下并重命名为hello.txt
11 删除文件
rm -rf test
注:-r 选项表示递归删除指定目录,包括目录本身及其内部所有的文件和子目录;-f 选项表示强制执行删除操作。
12 添加用户
useradd 选项 用户名
13 为用户设置密码
passwd user
14 删除用户
userdel -rf user
注:
选项-r 用于在删除用户的同时删除与其相关的所有文件
选项 -f 用于强制删除用户
15 查看文件权限
ll /etc
drwxr-xr-x 3 root root 4096 Oct 12 07:48 abrt
注:分析 drwxr-xr-x
第1个字符代表文件类型,d表示目录,-表示普通文件。
第2~10位字符,每3位一组,依次代表 文件所有者组,文件所属组,其他人对文件的权限组。
每组的最高权限为 rwx (即 可读、可写、可执行)
最低权限为 — (完全没有权限)
16 更改文件权限
详细见Nginx书P33页
17 彩色匹配 (标准输入方式)
grep --color 'hei'
注:匹配内容为hei的部分,红色显示
18 管道输入方式
ls | grep --color 'Do'
注:ls 命令用于列出当前目录下的文件列表,加上管道符号 | 以后,将输出结果传递给grep。grep 的参数Do匹配出了输入内容中含有Do的内容。
19 文件方式
grep --color 'hei' /etc/passwd
注:从/etc/passwd 文件中匹配出了包含hei字符串的内容
20 curl 查看HTTP信息
curl -I http://www.baidu.com
curl -X POST http://XXX/hbproject/v1.2/onenetwork/agency/projectList
-H "Content-type: application/json"
-d '{"orgName": "XXX","sign": "XXXXXXX"}'
注:选项 -I 用于只显示响应消息头,如果省略该参数则显示实体内容。
21 解压缩zip压缩文件到指定目录
unzip -o -d /home/sunny myfile.zip
注:把myfile.zip文件解压到 /home/sunny/
-o:不提示的情况下覆盖文件;
-d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下;
22 查看Java进程
ps -ef|grep java
注:
-e:显示所有进程;
-f:完整输出显示进程之间的父子关系;
grep:全面搜索正则表达式并把行打印出来”
23 杀死进程
kill -9 pid
注:
-9:必杀
-15:默认值,不是必杀,可能被阻塞
24 复制并覆盖文件
cp -rf myfile.zip /data/file
注:
-r:递归处理,将指定目录下的所有文件与子目录一并处理
-f:强行复制文件或目录,不论目标文件或目录是否已存在
25 查看日志文件
tail -200f catalina.out |grep 'hq.cmcc'
注:
查看200行最新日志,并且过滤关键字"hq.cmcc"
26 模糊搜索文件
find / -iname *find_name*
注:
-i:不区分大小写
-name:根据文件名称搜索
27 设为可执行文件
chmod +x ./test.sh
28 切换用户
su 用户名
29 修改文件的所属群组
chgrp 用户名 目录名/文件名 -R
注:-R : 表示递归目录下所有文件
30 修改文件的拥有者
chwon 用户名 目录名/文件名 -R
注:-R : 表示递归目录下所有文件
31 查看磁盘使用情况
// 显示总体磁盘使用情况
df -h
// 查看某个目录磁盘使用情况
du -sh
注:-h : 以K M G为单位显示,提高可读性(最常用的一个)
-s:不显示子文件夹磁盘使用情况
32 安装JDK
// 第一步:搜索JDK
yum -y list java*
// 第二步:安装JDK
yum install -y java-1.8.0-openjdk.x86_64
// 第三步:查看JDK
java -version
注:用yum安装JDK,默认的安装路径是 /usr
32 清理内存
echo 1 > /proc/sys/vm/drop_caches
33 查看本机公网ip
curl cip.cc
34 以树状图列出目录的内容
tree /home/java
35 显示CPU信息
lscpu
36 Git取消合并
git merge --abort
37 Git清空暂存区(解决push不上去问题)
1.先把已经commit的多个文件,从暂存区取消出来;
git reset --soft HEAD^
2.把上一步的文件取消修改;
git reset --hard HEAD^
3.在本地没有任何暂存和提交的情况下,拉取远程最新的代码
git pull
38 Git 解决 tag冲突
git pull --tags -f
39 Git 查看分支来源(从哪个分支拉出来的)
git reflog show <branch name>
40 查看关键字上下文100行日志
grep '关键字' -C 100 hb-project-server.log
41 查看某时间段日志
grep '2022-06-15 17:4[5-6]' hb-project-server.log
42 查看代码提交行数
git log --author='wangxiaojian' --pretty=tformat: --numstat | awk ' {add += $1; subs += $2; loc += $1 - $2 } END { printf "添加了%s,删除了%s,合计%s\n", add, subs, loc }' -