以下为linux常用命令,均是在日常中积累,非常有参考价值
常用快捷键
ctrl+L 或者clean:清屏
ctrl+C:强制终止当前的命令
ctrl+D:退出当前终端
Tab自动补全
vi 进入编辑模式
:wq 保存并退出
:q! 放弃修改退出
------------------------------------------------------------------------------------
日常开发总结:(重点勿删)
创建目录:mkdir awp
删除目录:rmdir awp
复制目录:cp -rp awp.tar.gz awp20220408.tar.gz
重命名:mv awp.tar.gz awp20220408.tar.gz
删除目录及目录下所有文件:rm -rf awp/
解压war包:unzip -o awp.war -d awp
解压zip包:unzip -o awp.zip
压缩zip包:zip -r awp.zip awp
解压tar.gz包:tar -zxvf awp.tar.gz
压缩tar.gz包:tar -zcvf awp.tar.gz awp
查看进程:
ps -ef|grep java #查看java进程
ps -ef|grep tomcat #查看tomcat所有进程情况
ps -ef|grep tomcat | grep 18091 #查看tomcat端口号18091进程情况,显示进程号
linux下终止进程(PID进程号19979)
kill -9 19979
案例:
weblogic 19466 1 0 Mar29 ? 00:29:29 java -Dloader.path=libs -jar gateway-0.0.1.jar
weblogic 2246 21032 0 00:51 ps/0 00:00:00 grep java
说明:194666这个是项目gateway的进程号故kill -9 164666而2246 21032是自己的进程
查看日志:
tail -f catalina.out #查看tomcat日志
tail -f xxx.log #查看某个日志
保存当前日志到本地
sz 文件名
案例:sz catalina.out
关闭tomcat: ./shutdown.sh #bin目录下
重启tomcat:./startup.sh #bin目录下
案例关闭重启awp项目:
sh stopNAWP.sh #关闭awp
sh startNAWP.sh #重启awp
linux下启动环境整个步骤:
1.进入tomcat的bin目录下
cd /opt/tomcat/tomcat_mall_18091/bin
2.查看tomcat端口号18091进程,显示进程号
ps -ef | grep tomcat | grep 18091
3.终止进程21676
kill -9 21676
4. 关闭tomcat服务器
./shutdown.sh #当前目录在bin目录下
5.启动tomcat服务器
./startup.sh #当前目录在bin目录下
6.查看启动日志
tail -f ../logs/catalia.out #当前目录在bin目录下
------------------------------------------------------------------------------------
Linux基本语法:
显示目录文件
ls -l 详细信息显示--常用 简写ll
ls -h 查看目录文件
ls -a 显示所有文件,包括隐藏文件
ls -d 查看目录属性
查找文件
find / -name filename.txt ** 根据名称查找/目录下的filename.txt文件。
find / -iname filename.txt 根据名称查找/目录下的filename.txt文件,忽略文件大小写
find . -name "*.xml" 递归查找所有的xml文件
find . -name "*.xml"|xargs grep "hello world" 递归查找所有文件内容中包含hello world的xml文件
find ./ -size 0 | xargs rm -f & 删除文件大小为零的文件
ls -l | grep '.jar' 查找当前目录中的所有jar文件
grep -H 'spring' *.xml 查找所以有的包含spring的xml文件
grep 'test' d* 显示所有以d开头的文件中包含test的行。
grep 'test' aa bb cc 显示在aa,bb,cc文件中匹配test的行。
grep '[a-z]\{5\}' aa 显示所有包含每个字符串至少有5个连续小写字符的字符串的行
当前工作目录
pwd
创建多级目录
mkdir -p file
mkdir -p mall/log mall/run
删除多个空目录
rmdir /tmp/file
切换目录
cd /tmp/hello/test 切换到指定目录
cd /root 切换到超级用户目录
cd ../ 切换到上一级目录
复制多个文件或者目录
cp source dest 复制文件
cp -r sourceFolder targetFolder 递归复制整个文件夹
cp -rp sourceFolder targetFolder 递归复制整个文件夹并保留文件属性
scp sourecFile romoteUserName@remoteIp:remoteAddr远程拷贝
cp -rp awp.tar.gz awp20220408.tar.gz #复制awp.tar.gz为awp20220408.tar.gz
递归删除目录或文件
rm -rf deleteFile
rm -rf awp/ #递归删除awp目录及子目录和文件
移动文件
mv /temp/movefile /targetFolder
重命名
mv oldNameFile newNameFile
mv awp.tar.gz awp20220408.tar.gz #将awp.tar.gz重命名为awp20220408.tar.gz
创建文件
touch file
touch awp.txt #创建文件awp.txt文件
显示文件内容
cat -n /etc/services 显示第几行文件内容
查看文件
tail -f /etc/services #动态显示文件末尾内容
tail -n 10 example.txt #查看文件尾10行
tail -f exmaple.log 这个命令会自动显示新增内容,屏幕只显示10行内容的(可设置)
查看文件头10行
head -n 10 example.txt
解压缩.war的压缩文件
jar -xvf mamager.war #解压到当前目录(不会自动创建manager目录)
(想要解压到指定目录,则先创建目录然后进入该目录最后再解压,故该命令慎用)
jar -xvf /mobile/*.war #解压mobile目录下所有*.war包
unzip -o manager.war -d manager #解压到manager目录下
(-o 解压时覆盖已经存在的文件并且不要求用户确认,-d创建目录)
解压缩.zip的压缩文件
zip -r awp.zip awp #将当前awp目录压缩为zwp.zip包
(-r 递归压缩)
unzip -o awp.zip #解压到当前目录(会自动创建awp目录)
unzip -0 awp.zip -d manager #解压到指定manager目录下
解压缩.tar.gz的压缩文件
tar -zcvf awp.tar.gz awp #将当前awp目录压缩为awp.tar.gz包
-c 打包(create)
-v 显示详细信息
-f 指定压缩文件
-z 打包同时压缩
tar -zxvf awp.tar.gz #解压到当前目录
tar -zxvf awp.tar.gz -C awp20220408/ #解压到指定awp20220408目录下
-x 解包
-v 显示详细信息
-f 指定解压文件
-z 解压缩
列出压缩文件列表
tar -tzf test.tar.gz
切换用户
su -username
修改文件权限
chmod 777 file.java //file.java的权限-rwxrwxrwx,r表示读、w表示写、x表示可执行
使用超级管理员身份执行命令
sudo rm a.txt使用管理员身份删除文件
查看一个程序是否运行
ps –ef|grep tomcat查看所有有关tomcat的进程
终止线程
kill -9 19979 终止线程号位19979的进程
查看端口占用情况
netstat -tunpl|grep 8080查看端口8080的使用情况
查看端口占用情况(是为了排除tomcat80端口号是否被占用)
netstat -ntpl|grep 8080 #查看8080端口号
netstat -ntpl #查看所有端口号
查看是否开启3306端口号
netstat -an|grep 3306
查看端口属于哪个程序
lsof -i :8080
查看进程:
ps aux查看所有进程
ps aux|grep java #查看java进程
ps -ef|grep java #查看Java进程
ps -ef | grep tomcat #查看tomcat进程
打印信息
echo $JAVA_HOME 打印java home环境变量的值
linux下取进程占用cpu最高的前10个进程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
linux下取进程占用内存(MEM)最高的前10个进程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
文件下载
wget http://file.tgz linux从网络上下载文件
文件浏览
curl http://file.tgz
将内容写入某个文件中
echo "www.baidu.com" >> /tmp/test/test.txt
df -h #查看磁盘占用情况
说明:
(Filesystem:表示该文件系统位于哪个分区,因此该列显示的是设备名称;
Used:表示用掉的磁盘空间大小;
Available:表示剩余的磁盘空间大小;
Use%:磁盘空间使用率;
Mounted on:文件系统的挂载点,也就是磁盘挂载的目录位置)
df -h logs #查看logs下磁盘使用情况
echo '' > /opt/tomcat/logs/catalina.out #清理tomcat日志
du -ah #统计目录大小
free -m #查看内存与缓存使用情况
sudo -i 由跳板机状态跳转到linux命令状态
使得设置的环境变量立马生效
source /etc/profile
查看防火墙对外开放了哪些端口
iptables -L -n
查看某个端口号是否开启(如80端口号)
netstat -anp|grep 8080
centos6.0防火墙操作
查看防火墙状态:service iptables status
开启防火墙(重启后永久生效):chkconfig iptables on
关闭防火墙(重启后永久生效):chkconfig iptables off
开启防火墙(即时生效,重启后失效):service iptables start
关闭防火墙(即时生效,重启后失效):service iptables stop
重启防火墙:service iptables restartd
查看开启的端口号
service iptables status
开启某个端口号(如80端口号,命令方式)
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
保存开启的端口号
service iptables save
重新启动防火墙
service iptables restart
开启某个范围的端口号(如18881~65534,命令方式)
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 18881:65534 -j ACCEPT
保存开启的端口号(永久保存,否则重启后失效)
/etc/rc.d/init.d/iptables save
重新启动防火墙
/etc/init.d/iptables restart
通过修改配置文件开启端口号(如80端口号)
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
重新启动防火墙
service iptables restart
参数说明:
–A 参数就看成是添加一条规则
–p 指定是什么协议,我们常用的tcp 协议,当然也有udp,例如53端口的DNS
–dport 就是目标端口,当数据从外部进入服务器为目标端口
–j 就是指定是 ACCEPT -接收 或者 DROP 不接收
首先安装firewall插件
yum install firewalld firewalld-config
centos7.0防火墙操作
查看版本:firewall-cmd --version
查看帮助:firewall-cmd --help
查看区域信息:firewall-cmd --get-active-zones
查看指定接口所属区域信息:firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态:firewall-cmd --panic-off
查看是否拒绝:firewall-cmd --query-panic
查看防火墙状态:firewall-cmd --state
开启防火墙:systemctl start firewalld
关闭防火墙:systemctl stop firewalld
设置开机启动:systemctl enable firewalld
停止并禁用开机启动:sytemctl disable firewalld
重启防火墙:firewall-cmd --reload
查看指定区域所有开启的端口号
firewall-cmd --zone=public --list-ports
在指定区域开启端口(如80端口号,命令方式)
firewall-cmd --zone=public --add-port=80/tcp --permanent
重新启动防火墙
firewall-cmd --reload
参数说明:
–zone 作用域
–add-port=8080/tcp 添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
在指定区域开启某个范围的端口号(如18881~65534,命令方式)
firewall-cmd --zone=public --add-port=18881:65534/tcp --permanent
重新启动防火墙
firewall-cmd --reload