Linux高级

目录

一:Linux命令

1.文件目录操作命令

1.1 ls

1.2 cd

1.3 more

1.4 cat

1.5 tail

1.6 mkdir

1.7 rmdir

2.拷贝移动命令

2.1 cp

2.2 mv

3.打包压缩命令

tar

4.文本编辑命令

4.1 vi

4.2 vim

1)在命令模式下进入编辑模式的按键

2)命令模式下常用的编辑命令

3)在命令模式下进入底行模式的按键

5.查找命令

grep

二:在Linux上安装Jdk

三:在Linux上安装Tomcat


一:Linux命令

1.文件目录操作命令

1.1 ls

作用: 显示指定目录下的内容 list
语法: ls [-al] [dir]
说明: 
    -a 显示所有文件及目录 (. 开头的隐藏文件也会列出)-all
    -l 除文件名称外,同时将文件型态(d表示目录,-表示文件, l表示软件连的文件)、权限、拥有者、文件大小等信息详细列出
    
注意: 
    由于我们使用ls命令时经常需要加入-l选项,所以Linux为ls -l命令提供了一种简写方式,即ll
    
常见用法: 
    ls -al     查看当前目录的所有文件及目录详细信息
    ls -al /etc   查看/etc目录下所有文件及目录详细信息
    ll      查看当前目录文件及目录的详细信息 

1.2 cd

作用: 用于切换当前工作目录,即进入指定目录
语法: cd [dirName]
    
特殊说明: 
    ~    表示用户的home目录
        如果当前用户是root,则切换到root用户下,普通用户则切换到home目录下
    .     表示目前所在的目录
    ..     表示目前目录位置的上级目录
    
举例: 
    cd     ..        切换到当前目录的上级目录
    cd     ~        切换到用户的home目录
    cd     /usr/local    切换到/usr/local目录

1.3 more

 作用: 以分页的形式显示文件内容
语法: more fileName
特点:独占一个命令终端窗口,并且适合读取大的文件内容,且按照百分比加载展示;
使用场景:读取一些大文件,且从头开始读取的场景
操作说明:
    回车键     向下滚动一行
    空格键     向下滚动一屏
    b         返回上一屏
    q或者Ctrl+C    退出more
    
举例:
    more /etc/profile        以分页方式显示/etc目录下的profile文件内容

1.4 cat

作用: 用于显示文件内容
特点:一次性全量查看文件内容
使用场景:一般用在小文件读取的场景(大文件不适用)
语法: cat [-n] fileName

说明:
    -n: 由1开始对所有输出的行数编号(显示行号-number)

举例:
    cat /etc/profile        查看/etc目录下的profile文件内容
    cat -n /etc/profile

1.5 tail

 作用: 查看文件末尾的内容
语法: tail [-f] fileName
使用场景:可以实时查看文件末尾行的动态变化,方便实时追踪
说明:
    -f : 实时的动态读取文件末尾内容并显示,通常用于日志文件的内容输出
    
举例: 
tail /etc/profile        显示/etc目录下的profile文件末尾10行的内容
tail -20 /etc/profile    显示/etc目录下的profile文件末尾20行的内容
tail -f /itcast/my.log    动态读取/itcast目录下的my.log文件末尾内容并显示
                一旦使用-f后,命令会独占一个终端窗口;
                使用ctrl+c退出

1.6 mkdir

作用: 创建目录
语法: mkdir [-p] dirName

说明: 
    -p: 确保目录名称存在,不存在的就创建一个。通过此选项,可以实现多层目录同时创建

举例: 
    mkdir itcast  在当前目录下,建立一个名为itcast的子目录
    mkdir -p itcast/test   在工作目录下的itcast目录中建立一个名为test的子目录,若itcast目录不存在,则建立一个

 

1.7 rmdir

作用: 删除空目录 (remove directory)
语法: rmdir [-p] dirName

说明:
    -p: 当子目录被删除后使父目录为空目录的话,则一并删除
        反之,如果父目录不为空,则不删除

举例:
    rmdir itcast   删除名为itcast的空目录
    rmdir -p itcast/test   删除itcast目录中名为test的子目录,若test目录删除后itcast目录变为空目录,则也被删除
    rmdir itcast*   删除名称以itcast开始的空目录

2.拷贝移动命令

2.1 cp

作用: 用于复制文件或目录(copy)
语法: cp [-r] source dest
    -r:表示对目录递归复制
    source:源文件/目录
    dest:目的地

说明: 
    -r: 如果复制的是目录需要使用此选项,此时将复制该目录下所有的子目录和文件

举例: 
    cp hello.txt itcast/            将hello.txt复制到itcast目录中
    cp hello.txt ./hi.txt           将hello.txt复制到当前目录,并改名为hi.txt
    cp -r itcast/ ./itheima/        将itcast目录和目录下所有文件复制到itheima目录下
    cp -r itcast/* ./itheima/          将itcast目录下所有文件复制到itheima目录下

2.2 mv

作用: 为文件或目录改名、或将文件或目录移动到其它位置(move)
语法: mv source dest

举例: 
    mv hello.txt hi.txt                 将hello.txt改名为hi.txt(移动hello.txt到当前位置,并重命名=重命名)
    mv hi.txt itheima/                  将文件hi.txt移动到itheima目录中
    mv hi.txt itheima/hello.txt           将hi.txt移动到itheima目录中,并改名为hello.txt
    mv itcast/ itheima/                 如果itheima目录不存在,将itcast目录改名为itheima
    mv itcast/ itheima/                 如果itheima目录存在,将itcast目录移动到itheima目录中

3.打包压缩命令

tar

作用: 对文件进行打包、解包、压缩、解压
语法: tar  [-zcxvf]  fileName  [files]
    约定:
        包文件后缀为.tar表示只是完成了打包,并没有压缩
        包文件后缀为.tar.gz表示打包的同时还进行了压缩

说明:
    -z: z代表的是gzip,通过gzip命令处理文件,gzip可以对文件压缩或者解压
    -c: c代表的是create,即创建新的包文件(打包)--》(如果c与z参数配合,则表示打包并压缩)
    -x: x代表的是extract,实现从包文件中还原文件(拆包)-->(如果x与z参数配合,则表示解压并拆包)
    -v: v代表的是verbose,显示命令的执行过程
    -f: f代表的是file,用于指定包文件的名称
    注意点:命令中x与c二选一,如果z配合c一块使用,表示打包并压缩
            如果z配合x一块使用,表示解压并拆包

 注意:指令f一定放到最后

4.文本编辑命令

4.1 vi

作用: vi命令是Linux系统提供的一个文本编辑工具,可以对文件内容进行编辑,类似于Windows中的记事本

语法: vi fileName

说明: 1). vim是从vi发展来的一个功能更加强大的文本编辑工具,编辑文件时可以对文本内容进行着色,方便我们对文件进行编辑处理,所以实际工作中vim更加常用。 2). 对于vim命令,如果在你的linux系统上没有安装,需要我们自己安装。可以使用下面的命令来完成安装:yum install vim

4.2 vim

作用: 对文件内容进行编辑,vim其实就是一个文本编辑器 语法: vim fileName 说明: 1). 在使用vim命令编辑文件时,如果指定的文件存在则直接打开此文件。如果指定的文件不存在则新建文件。 2). vim在进行文本编辑时共分为三种模式,分别是 命令模式(Command mode),编辑模式(Insert mode)和底行模式(Last line mode)。这三种模式之间可以相互切换。我们在使用vim时一定要注意我们当前所处的是哪种模式。  

 三种模式执行命令如下:

1)在命令模式下进入编辑模式的按键
命令描述
i在光标的前面插入字符
a在光标的后面添加入字符
o在光标下一行插入字符
2)命令模式下常用的编辑命令
命令描述
yy复制当前行
p粘贴
dd删除当前行
u撤销
/字符串搜索字符串的内容 n: 查找下一个 N:查找前一个
3)在命令模式下进入底行模式的按键
命令描述
:wqwrite quit 保存退出
:q!强制退出,不保存
:wq!强制保存退出,用于只读文件

5.查找命令

grep

使用字符串搜索文本,并把匹配的行和行号打印出来。

grep 参数 搜索的字符串 搜索的文件
说明:
    1.在文件外部就可以进行字符串的搜索行
    2.参数:
        i:忽略大小写
        n:行号
        v:不匹配
    3.搜索的内容所属的文件必须存在当前目录中

二:在Linux上安装Jdk

前言:其实在实际的开发中,安装软件并不是后端开发人员所掌握的,而是由运维人员去实现的,但作为一个后端开发人员,我么也要去了解一下其Linux安装软件的运作方式。

在Linux系统中,安装软件的方式主要有四种,这四种安装方式的特点如下:

安装方式特点
二进制发布包安装软件已经针对具体平台编译打包发布,只要解压,修改配置即可。例如tomcat
rpm(redhat package manager)安装软件已经按照redhat的包管理规范进行打包,使用rpm命令进行安装,==但是包之间有可能具有依赖关系,因此不能自行解决库依赖问题,比较麻烦。==
yum安装一种在线软件安装方式,本质上还是rpm安装,自动下载安装包并安装,安装过程中自动解决库依赖问题(安装过程需要联网)
源码编译安装软件以源码工程的形式发布,需要自己编译打包。类似.java文件需要编译成.class文件安装方式。第一个二进制发布包安装相当于直接拿到.class文件直接安装。

在linux操作系统下,我们常将软件安装在自定义的目录下,例如soft文件下 

操作步骤:
1、在/usr/local目录下创建自定义soft目录
2、使用FinalShell自带的上传工具将jdk的二进制发布包上传到Linux
3、切换到soft目录下
4、解压安装包,命令为tar -zxvf jdk-8u171-linux-x64.tar.gz(有关的jdk8的安装包可以关注博主私信)
5、配置环境变量,使用vim命令修改/etc/profile文件,在文件末尾加入如下配置 按字母G跳转到文件尾部
    # 注意:/usr/local/soft/jdk1.8.0_171 路径不固定,是你的jdk路径位置,复制下面的路径到配置文件/etc/profile
    JAVA_HOME=/usr/local/soft/jdk1.8.0_171
    CLASSPATH=.:$JAVA_HOME/lib
    PATH=$JAVA_HOME/bin:$PATH
    export JAVA_HOME CLASSPATH PATH
6、重新加载profile文件,使更改的配置立即生效,命令为source /etc/profile
7、检查安装是否成功,命令为java -version ,若出现了java的版本号,即安装成功!

三:在Linux上安装Tomcat

1、使用FinalShell自带的上传工具将jdk的二进制发布包上传到Linux
2、切换到soft目录下
3、解压安装包,命令为tar -zxvf apache-tomcat-8.5.27.tar.gz(有关的tomcat的安装包可以关注博主私信)

4.启动tomcat,进入相应目录(tomcat的bin目录),在Linux操作系统下,启动tomcat为:startup.sh 

5.查看linux的所有进程命令为:ps -aux | grep tomcat 

(**注意:"|" 为linux的管道符)若出现 tommcat.start 即表示启动成功,如下图

安装好tomcat后,我们可以在windows访问tomcat会出现访问失败,这是因为linux系统本身的防火墙原因,解决方法有两个,第一为:关闭防火墙(不安全) 第二为:暴露端口号

以下为操作防火墙的命令

操作指令备注
查看防火墙状态==systemctl status firewalld== / firewall-cmd --state
关闭防火墙systemctl stop firewalld
永久关闭防火墙(禁用开机自启)systemctl disable firewalld==下次启动,才生效==
暂时开启防火墙systemctl start firewalld
永久开启防火墙(启用开机自启)systemctl enable firewalld==下次启动,才生效==
重启防火墙systemctl restart firewalld
开放指定端口firewall-cmd --zone=public --add-port=8080/tcp --permanent==需要重新加载生效==
关闭指定端口firewall-cmd --zone=public --remove-port=8080/tcp --permanent==需要重新加载生效==
立即生效(重新加载)firewall-cmd --reload
查看开放端口firewall-cmd --zone=public --list-ports

注意:

A. systemctl是管理Linux中服务的命令,可以对服务进行启动、停止、重启、查看状态等操作

B. firewall-cmd是Linux中专门用于控制防火墙的命令

C. 为了保证系统安全,服务器的防火墙不建议关闭

因此采用关闭防火墙为:

 systemctl stop firewalld

采用暴露端口号为:

 ①. 先开启系统防火墙
systemctl start firewalld

②. 再开放8080端口号
firewall-cmd --zone=public --add-port=8080/tcp --permanent

③. 重新加载防火墙
firewall-cmd --reload

 关闭tomcat也有两种方法

一为:在tomcat的bin目录下有一个为shutdown.sh的命令,二是:使用ps -aux | grep tomcat 查看tomcat的进程号,在使用 kill -9 进程号 强制杀死进程

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值