【Linux常用命令】实时更新

目录

一、目录操作

根据进程号查看目录

二、文件操作

三、文件内容操作

四、发布jar包

停止jar包运行

运行jar包

运行jar包带外部配置文件

创建start.sh启动jar包 

五、运行nginx

六、redis操作 

登录redis客户端

 报错:(error) NOAUTH Authentication required.

常用Redis命令

 七、压缩和解压缩

tar

unzip

八、常用命令

安装telnet

防火墙FirewallD

安装jdk8

安装tomcat


一、目录操作

pwd          查看当前工作目录
history      查看历史指令
clear        清除屏幕
cd /         根目录
cd ~         当前用户目录
cd -         上一次访问的目录
cd ..        返回上一级目录

根据进程号查看目录

pwdx 进程id

查看目录内信息

ll        查看当前目录下内容
ls        查看当前目录下内容

创建目录

mkdir aaa          在当前目录下创建名为'aaa'的目录(相对路径)
mkdir ./bbb        在当前目录下创建名为'bbb'的目录(相对路径)
mkdir /ccc         在根目录下创建名为'ccc'的目录(绝对路径)
mkdir -p /opt/java 在根目录下创建目录opt及子目录java
mkdir -m 700 /opt  在根目录下创建指定权限的目录opt

修改目录(重命名)

mv aaa aaa001        将创建好的名为'aaa'的目录重命名为'aaa001'

剪切目录

mv  /aaa /bbb			    将根目录下的aaa目录,移动到bbb目录下,在bbb,麚也叫aaa目录;
mv	bbbb usr/bbb			将当前目录下的bbbb目录,移动到usr目录下,并且修改名称为bbb;
mv	bbb usr/aaa			    将当前目录下的bbbb目录,移动到usr目录下,并且修改名称为aaa;

复制目录

cp -r /aaa /bbb			将/目录下的aaa目录复制到/bbb目录下,在/bbb目录下的名称为aaa
cp -r /aaa /bbb/aaa		将/目录下的aa目录复制到/bbb目录下,且修改名为aaa;

搜索

find / -name 'b'		查询根目录下(包括子目录),名以b的目录和文件;
find / -name 'b*'		查询根目录下(包括子目录),名以b开头的目录和文件; 

删除

rm -r /bbb			普通删除。会询问你是否删除每一个文件

rm -rf /bbb			强制删除/目录下的bbb目录。如果bbb目录中还有子目录,也会被强制删除,不会提示;

二、文件操作

创建文件

touch test.txt        在当前目录创建名为'test'的txt文件

重命名文件

mv test.txt test001.txt        重命名test.txt为test.txt

复制文件

cp aaa.txt aaa001.txt        复制aaa.txt并命名为aaa001.txt

删除文件

rm -r a.java		删除当前目录下的a.java文件(每次回询问是否删除y:同意)
rm -rf a.java		强制删除当前目录下的a.java文件
rm -rf ./a*			强制删除当前目录下以a开头的所有文件;
rm -rf ./*			强制删除当前目录下所有文件(慎用);

下载文件

sz ***.txt

清空文件内容

cat /dev/null > catalina.2022-12-09.log

三、文件内容操作

修改文件内容

vim a.java   	进入一般模式
i(按键)   		进入插入模式(编辑模式)
ESC(按键)  		退出
:wq 			保存退出(shift+:调起输入框)
:q!			不保存退出(shift+:调起输入框)(内容更改)
:q				不保存退出(shift+:调起输入框)(没有内容更改)

文件内容查看

cat a.java		查看a.java文件的最后一页内容;
more a.java		从第一页开始查看a.java文件内容,按回车键一行一行进行查看,
                    按空格键一页一页进行查看,q退出;
less a.java		从第一页开始查看a.java文件内容,按回车键一行一行的看,
                    按空格键一页一页的看,支持使用PageDown和PageUp翻页,q退出;

总结下more 和 less的区别:

less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示
less不必读整个文件,加载速度会比more更快
less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容.
由于more不能后退.

实时查看文件内容(日志)

tail -100f kafka.out        实时查看kafka.out文件的后100行内容

文件内部搜索指定的内容

grep under 123.txt			在123.txt文件中搜索under字符串,大小写敏感,显示行;
grep -n under 123.txt		在123.txt文件中搜索under字符串,大小写敏感,显示行及行号;
grep -v under 123.txt		在123.txt文件中搜索under字符串,大小写敏感,显示没搜索到的行;
grep -i under 123.txt		在123.txt文件中搜索under字符串,大小写敏感,显示行;
grep -ni under 123.txt		在123.txt文件中搜索under字符串,大小写敏感,显示行及行号;

终止当前操作

ctrl+z
ctrl+c

Ctrl+Z就扮演了类似的角色,将任务中断,但是任务并没有结束,在进程中只是维持挂起的状态,用户可以使用fg/bg操作前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行。
Ctrl+C也扮演类似的角色,强制中断程序的执行


四、发布jar包

停止jar包运行

进程查看

ps -ef|grep java

杀死jar包进程

kill -9 pid

运行jar包

要运行java的项目需要先将项目打包成war包或者jar包,打包成war包需要将war包部署到tomcat服务器上才能运行。而打包成jar包可以直接使用java命令执行。
在linux系统中运行jar包主要有以下几种方式。
一、java -jar XXX.jar
这是最基本的jar包执行方式,但是当我们用ctrl+c中断或者关闭窗口时,程序也会中断执行。
二、java -jar XXX.jar &
&代表在后台运行,使用ctrl+c不会中断程序的运行,但是关闭窗口会中断程序的运行。
三、nohup java -jar XXX.jar &
使用这种方式运行的程序日志会输出到当前目录下的nohup.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。
三、nohup java -jar XXX.jar >temp.out &
>temp.out的意思是将日志输出重定向到temp.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。
四、nohup java -jar XXX.jar >temp.out >/dev/null 2>&1
>不输出任何日志,不产生nohup.out。

五、nohup java -server -Xms1g -Xmx1g -jar XXX.jar  >/dev/null 2>&1 &

>不输出任何日志,不产生nohup.out,设置参数

nohup java -jar XXX.jar >temp.out >/dev/null 2>&1

nohup java -server -Xms1g -Xmx1g -jar XXX.jar  >/dev/null 2>&1 &

运行jar包带外部配置文件

  • 指向配置文件路径

 首先在服务器上上传配置文件,然后加上【-Dspring.config.location】指向配置文件路径

nohup java -jar -Dspring.config.location=/home/soft/java/config/application-dev.properties xxx.jar >/dev/null 2>&1 &
  •  多个配置文件选择

在jar包平级目录下创建名为【config】的目录,在【config】目录下创建三个配置文件,如下图所示:

 然后在jar包平级目录输入jar包运行命令

nohup java -jar -Dspring.profiles.active=pro xxx.jar > /dev/null 2>&1 &
  • 运行指定jdk地址
nohup ../jdk/bin/java -jar -Dspring.profiles.active=pro xxx.jar > /dev/null 2>&1 &

创建start.sh启动jar包 

  • 首先创建名为start.sh的文件
touch start.sh
  • 然后写入内容
vim start.sh

这时候的文件是白色的,也就是说是不可执行的,

可输入ls -l xxx.xxx (xxx.xxx是文件名)查看的是xxx文件之中的文件权限,其中:

r 表示文件可以被读(read)

w 表示文件可以被写(write)

x 表示文件可以被执行(如果它是程序的话)

我的如下图所示:

可以看到没有执行权限,输入以下命令

sudo chmod +x /home/soft/bj-xndc-sync-client/start.sh

 执行完文件如下图所示

变成了绿色可执行状态。

最后执行./start.sh即可启动jar包。 


五、运行nginx

查看进程

ps -ef|grep nginx

杀死进程

kill -9 pid

启动nginx

/usr/local/nginx/sbin/nginx

六、redis操作 

登录redis客户端

  • 首先找到redis安装目录

  •  然后在当前目录下输入【src/redis-cli】登录客户端
src/redis-cli

 报错:(error) NOAUTH Authentication required.

输入查看所有key:【keys *】命令时报了以下错误

原因是Redis 开启鉴权了,客户端在连接 Redis 时需要输入密码命令:【auth 密码】,如

auth 123456

 问题解决。

常用Redis命令

查看所有key:keys *

set发送信息:set username '1'

get接受信息: get username

切换到dateBase1: select 1

切换到dateBase6: select 6

 七、压缩和解压缩

tar

压缩(-c)

tar -cvf start.tar a.java b.java		//将当前目录下a.java、b.java打包
tar -cvf start.tar ./*					//将当前目录下的所欲文件打包压缩成haha.tar文件

tar -zcvf start.tar.gz a.java b.java	//将当前目录下a.java、b.java打包
tar -zcvf start.tar.gz ./*				//将当前目录下的所欲文件打包压缩成haha.tar.gz文件

解压缩(-x)

tar -xvf start.tar						//解压start.tar压缩包,到当前文件夹下;
tar -xvf start.tar -C usr/local 		//(C为大写,中间无空格)
										//解压start.tar压缩包,到/usr/local目录下;

tar -zxvf start.tar.gz					//解压start.tar.gz压缩包,到当前文件夹下;
tar -zxvf start.tar.gz -C usr/local 	//(C为大写,中间无空格)
										//解压start.tar.gz压缩包,到/usr/local目录下;

 解压缩tar.xz文件

tar xf node-v12.18.1-linux-x64.tar.xz

unzip

压缩(zip)

zip lib.zip tomcat.jar							//将单个文件压缩(lib.zip)
zip -r lib.zip lib/								//将目录进行压缩(lib.zip)
zip -r lib.zip tomcat-embed.jar xml-aps.jar		//将多个文件压缩为zip文件(lib.zip)	

解压缩(unzip)

unzip file1.zip  								//解压一个zip格式压缩包
unzip -d /usr/app/com.lydms.english.zip			//将`english.zip`包,解压到指定目录下`/usr/app/`

八、常用命令

安装telnet

使用telnet命令的时候报错:-bash: telnet: command not found,表示服务器未安装telnet。

  • 首先检测telnet-server的rpm包是否安装

命令为

rpm -qa telnet-server

如下图

 若无输入内容则表示未安装telnet-server的rpm包。

  • 安装telnet-server的rpm包

命令为

yum install telnet-server

执行安装命令,如下图所示

 在后面的询问中输入:y  确认

看到complete表示安装成功,再次输入【rpm -qa telnet-server】如下图:

  •  检测telnet的rpm包是否安装

命令为

rpm -qa telnet

 同理无输入内容则表示未安装telnet的rpm包。

  • 安装telnet的rpm包

命令为

yum install telnet

执行安装命令,如下图所示

 在后面的询问中输入:y  确认

 看到complete表示安装成功,再次输入【rpm -qa telnet】如下图:

  • 最后重新启动xinetd守护进程  

由于telnet服务也是由xinetd守护,所以安装完telnet-server,要启动telnet服务就必须重新启动xinetd,命令为

service xinetd restart

如果报【Failed to restart xinetd.service: Unit not found.】,则表示xinetd也未安装:

执行安装命令

rpm -q xinetd &>/dev/null || yum -y install xinetd &>/dev/null

 再次重新启动xinetd守护进程

  • 测试telnet命令

比如查看TCP的3306端口是否开启正常,命令为【netstat -tnl |grep 3306】,如下图

至此,telnet安装完成。


防火墙FirewallD

# 开启服务
systemctl start firewalld.service

# 设置开机启动
systemctl enable firewalld.service

# 查看FirewallD防火墙状态
systemctl status firewalld

防火墙常用命令

firewall-cmd --state ##查看防火墙状态,是否是running

systemctl status firewalld.service ##查看防火墙状态

systemctl start firewalld.service ##启动防火墙

systemctl stop firewalld.service ##临时关闭防火墙

systemctl enable firewalld.service ##设置开机启动防火墙

systemctl disable firewalld.service ##设置禁止开机启动防火墙

firewall-cmd --permanent --query-port=80/tcp ##查看80端口有没开放

firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令

firewall-cmd --get-zones ##列出支持的zone

firewall-cmd --get-services ##列出预定义的服务

firewall-cmd --query-service ftp ##查看ftp服务是否放行,返回yes或者no

firewall-cmd --add-service=ftp ##临时开放ftp服务

firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务

firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务

firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口

firewall-cmd --zone=public --remove-port=80/tcp --permanent ##移除80端口

iptables -L -n ##查看规则,这个命令是和iptables的相同的

man firewall-cmd ##查看帮助

参数含义:

--zone #作用域

--permanent #永久生效,没有此参数重启后失效


安装jdk8

  • 查看并删除系统自带的jdk
# 查看
rpm -qa | grep java

# 删除
rpm -e --nodeps +包名

 若无输入内容则表示没有自带的jdk。

  • 首先下载linux环境下的jdk1.8

Java Downloads | Oracle

下载完成后上传到指定服务器目录,比如/usr/local/java

  • 解压jdk1.8
tar -zxvf jdk-8u351-linux-x64.tar.gz
  • 配置jdk环境变量

etc/profile文件的改变会涉及到系统的环境,也就是有关Linux环境变量的东西

所以,我们要将jdk配置到/etc/profile,才可以在任何一个目录访问jdk

vim /etc/profile

在profile文件尾部添加如下内容

export JAVA_HOME=/usr/local/java/jdk1.8.0_351
 
export JRE_HOME=${JAVA_HOME}/jre
 
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
 
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
 
export PATH=$PATH:${JAVA_PATH}

如下图

保存文件后通过命令source /etc/profile让profile文件立即生效 

source /etc/profile
  • 测试是否安装成功
# 查看java版本
java -version

javac

如下图:

 至此jdk安装成功。


安装tomcat

  • 安装tomcat前要先安装jdk,然后去tomcat官网找到想要安装的包版本

Apache Tomcat

找到tar.gz复制连接地址,如下图

  •  在指定存放tomcat的文件夹下下载tomcat
wget https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.84/bin/apache-tomcat-8.5.84.tar.gz

下载完成后解压tomcat

tar -zxf apache-tomcat-8.5.84.tar.gz
  • 解压完成后修改系统配置文件,增加Tomcat变量
# 进入系统配置文件
vim /etc/profile

在profile文件尾部添加如下内容

CATALINA_HOME=/usr/local/tomcat/apache-tomcat-8.5.84

保存文件后通过命令source /etc/profile让profile文件立即生效。

最后进入tomcat的bin目录下,如下图

  •  Tomcat启动关闭命令

[root@localhost bin]# ./startup.sh

# 启动
./startup.sh

# 停止
./shutdown.sh
  • 查看Tomcat进程

[root@localhost bin]# ps -ef|grep tomcat


  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值