大家还在为记不住Linux命令而发愁吗?我也一样,之前我是记录在了本地的文本文件中,但是感觉不安全,查起来也很麻烦,所以专门做了一个这种汇总常用Linux命令的博客,如果大家也有我这里面没有记录的常用命令,也可以在评论说一下,我会不定期更新内容,不仅为了方便自己,也是为了方便大家。
常用指令
查看文件列表,横版排列:
ls
查看文件列表,竖版排列(本人常用):
ll
上传本地文件(若不能使用,请百度自行安装插件):
rz
拉取文件至本地路径(若不能使用,请百度自行安装插件):
sz 文件名
删除指定文件:
rm 文件名
新建文件:
touch 文件名
新建文件夹:
mkdir 文件夹名
级联新建文件夹:
mkdir -p 文件夹名
重启linux系统:
reboot
关闭linux系统:
shutdown now
查看文件内容:
vim 文件名
给指定文件添加执行权限:
chmod +x 文件名
重命名文件名:
mv 原文件名称 新文件名称
移动文件:
mv 源文件路径 新路径
删除空文件夹:
rmdir 文件夹名
删除非空文件夹:
rm -rf 文件夹名
文件编辑情况下,点击Esc 后输入以下内容,不保存并退出文件:
:q!
文件编辑情况下,点击Esc 后输入以下内容,保存修改并退出文件:
:wq!
查看当前防火墙状态:
systemctl status firewalld
关闭当前防火墙:
systemctl stop firewalld
开机防火墙不启动:
systemctl disable firewalld
修改防火墙开放的接口8081:
iptables -I INPUT -p tcp --dport 8081 -j ACCEPT
查看防火墙开放的端口:
iptables -L INPUT -n --line-numbers
为指定用户组的用户赋权指定文件(第一个参数:用户名称,第二个参数:文件路径):
chown -R mysql.mysql /usr/local/mysql/data
查看是否有指定进程(java、mysql等都可查询):
ps -ef|grep mysqld
杀死指定进程:
kill -9 进程号
重启环境变量(注意点后面有空格):
. /etc/profile
后台运行某个jar文件(末尾&意为后台执行):
nohup java -jar 执行文件名 2>&1 > 日志文件路径 &
将错误输出重定向到标准输出,然后输出至目标日志文件
展示linux系统是多少位系统(注意大小写):
getconf LONG_BIT
判断linux是ubuntu还是CentOs系统:
查看etc目录下,有redhat-release文件就是CentOS,有lsb-release文件就是ubuntu系统。
查看centOS系统的版本号:
cat redhat-release
展示linux系统内核版本:
more /proc/version
自动启动某个服务步骤:
1.打开/etc/rc.local文件
2.添加内容:service sshd start //启动sshd服务
vim时展示行号(以下指令在阅读模式下直接输入):
:set nu
vim阅读模式时翻页:
向下翻页:ctrl+F
向上翻页:ctrl+B
查看Linux内存使用情况:
cat /proc/meminfo
Linux根据PID进程号查看启动路径(以下PID指进程号):
cd /proc/PID
Linux根据端口号查看PID进程号,也可查看对应端口(以下PORT指端口号):
netstat -nlp | grep :PORT
Linux根据pid查看与其他服务器的连接情况(以下PID指服务PID):
netstat -anpt | grep 服务器地址 | grep PID wc -l
注意:
wc -l 的意思是记录数量
根据网址下载:
wget 网址
Linux配置文件:
vim /etc/profile
Linux应用配置文件:
source /etc/profile
Linux安装后执行文件默认的存放地址:
cd /etc/init.d
Linux安装lsof执行关键字(以lsof为例):
yum install lsof
nginx重启:
./nginx -s reload
查看当前所在的完整路径:
pwd
在指定文件中查看指定内容:
less 文件路径 | grep 查询内容
在指定文件中查看除指定内容之外的内容:
less 文件路径 | grep -v 查询内容
查询指定内容指定行数的【上下文】内容( C 固定大写):
方法一:
grep "查询内容" -C 行数 文件路径 | cat
方法二:
cat 文件路径 | grep -C行数 "查询内容"
查询指定内容指定行数的【下文】内容( A 固定大写):
方法一:
grep "查询内容" -A行数 文件路径 | cat
方法二:
cat 文件路径 | grep -A行数 "查询内容"
查询指定内容在文件中出现的次数:
grep -o "查询内容" 文件路径 | wc -l
查看执行文件执行时所有参数的值以及要执行的目标文件路径:
sh -x 执行文件名 start
命令发送json格式请求体的post请求:
方法一:
curl -H "Content-Type:application/json" -X POST -d '{"key1":"value1","key2":"value2"}' http://localhost:3000/data
方法二:
curl -H "Content-Type:application/json" -X POST -d "@test.json" http://localhost:8543/v1/merge/data_merge_by_tenantId
上面指令【方法二】-d的@后面是目标json文件的路径
获取指定PID下的端口:
ss -lnp | grep PID
在vim前提下全局替换指定字符串:
:%s/原字符串/替换字符串/g
查询指定路径下指定文件名的路径列表:
find 查询路径 -name '文件名'
例:find /opt -name 'nginx'
查询指定路径下符合正则表达式文件名的路径列表:
find 查询路径 -name '模糊文件名'
例:find /log -name '*.log'
使用管理员权限执行抓包操作:
sudo tcpdump -i any port 端口 or 另一个端口 -vvv -w 文件名
例:sudo tcpdump -i any port 8400 -w reg.pacp
发送post请求:
curl -H 请求头信息 -H 请求头信息 -X POST -d 请求体 访问地址
例: curl -H "Content-Type: application/json;charset=UTF-8" -H "token:eyJpdiI6IjB3aThZdEQ0ak5nVmUyOFVvNWQ4cmc9PSIsInZhbHVlIjoiTmpuQUZEM1UrUmhKRzloclFwSHlTVHVmN3RpQUg1XC94Mlo1OHJrMFB3bGc9IiwibWFjIjoiYmE1YTUxZDQyY2E0ZjFlOTNjYWUwZTkzYmM2NjNlOWM5ZTRkOTY4ZTRkMjNlNzM1OTU2YWE0NDA5OTA5MzBmZiJ9" -X POST -d '{"repo_code_list":["jvs_face_detection_cv500","jvs_firearms_detection_cv500"]}' https://aicraft-res.deepcam.cn/openapi/v1/file/list
解压.gz后缀的压缩文件
gzip -d 压缩文件名
解压文件夹下的内容
gunzip -r 文件夹/
解压.tar.gz后缀的文件(若不能使用,请百度自行安装插件):
tar -xzvf 压缩文件名
tar -xzvf 压缩文件名 -C 解压后目标文件夹
直接查看压缩文件的内容
zcat 压缩文件名
解压zip后缀的内容到指定目录
unzip 压缩包 -d 解压后目标文件夹
压缩为zip压缩包
zip -r 压缩包 压缩文件1 压缩文件2
例:zip -r a123.zip a 3.txt
把/home目录下面的a文件夹和3.txt压缩成为a123.zip
查看Linux服务器内核
uname -r
关闭tcp连接
// 安装tcpkill工具
yum -y install epel-release
yum -y install dsniff
// 使用tcpkill
tcpkill -9 -i any host 192.168.10.30
tcpkill -9 -i any port 8000
文件传输至其他服务器的指定目录
scp -r 文件夹路径 用户名@目标服务器ip:目标地址
例如:scp -r ./test root@cdh3:/usr/local