Linux的基本使用

Posted 栋zzzz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux的基本使用相关的知识,希望对你有一定的参考价值。

🐧🐧🐧Linux作为一个开源的操作系统,其在服务器上,PC上,嵌入式设备上都是很好的操作系统,而大部分的公司也都在使用Linux操作系统,那么就让我们来一起学习一下Linux系统的基本使用!🐧🐧🐧

目录


🍌 一.Linux的常用指令

Linux虽然也有图形化界面,但在服务器/嵌入式设备往往都是通过命令行的方式来进行操作的,因此Linux的常用命令对于Linux来说就非常重要了!

🍓1.ls

ls命令是列出当前目录中所包含的文件和目录,就类似于在windows上双击某个目录,看里面有什么东西一样

ls 


蓝色的表示目录,黑色的表示普通文件!

这里的/是Linux的根目录,相当于windows的"此电脑",而且Linux的命令很多都支持"选项",就是在命令后面跟上-以及一些特殊的字母或者单词,来开启不同的功能,例如在这里就可以给ls后面加上-l,这就表示使用列表的方式来列出目录的内容,也可以简写为ll

ls -l


就类似于这样的效果:

🍓 2.pwd

pwd命令表示说明当前在哪个目录里面

pwd


这就表示当前在目录所在的绝对路径

🍓 3.cd

cd命令表示进入切换目录(change directory),使用cd后面跟上指定的路径(相对路径和绝对路径都可以)

cd .. : 返回上级目录
cd ~:进入用户家目
cd -:返回最近访问目录


这就表示切换到了aaa目录里面

🍓 4.touch

这个命令表示创建一个空的文件

touch test.txt


创建好之后再查看当前文件就会发现有这个空文件了

🍓 5.cat

cat命令可以显示文件内容

cat test.txt


通过cat就可以查看此文件里面的内容了

🍓 6.echo

echo命令可以打印内容到控制台,也可以用于写文件

echo "hello" > test.txt


将hello重定向到test2.txt文件里面

🍓 7.mkdir

mkdir可以进行创建目录的操作

mkdir bbb


创建之后此目录里面就会有一个bbb目录了

🍓 8.rm

rm可以进行文件的删除操作

rm test.txt


删除完成之后就会发现test2.txt文件已经消失了,另外rm也是可以进行删除目录的操作,只需要加上-r选项就可以了,-r表示递归,将目录里面的所有内容都进行删除

而发现每次删除都会有提示是否删除的字样,如果不想要这个提示,可以加上-f选项就不会有这个提示了

这样也就直接删除了.不过这样的删除是非常危险的,因为一不小心删除错了,就很难办了,而且Linux上是没有回收站的,一旦删除了就无法恢复了!!!

🍓 9.cp

cp命令就是对文件进行复制的操作

cp test1.txt test2.txt


这里的tree是查看当前目录的树结构,而cp之后就会发现aaa目录下多了一个test.txt文件,另外cp还可以拷贝目录,不过需要加上-r选项

因此目录也是可以进行复制的!

🍓 10.mv

mv命令就是对文件进行移动的操作

mv test1.txt test2.txt


移动就可以将demo.txt文件直接移动到aaa目录下了,另外mv还可以给文件重命名

就可以将bbb改成ccc了,本质上就是在修改文件的名字/路径,是非常轻量的,而如果文件比较大的话,cp操作是会花费一些时间的!

🍓 11.man

man命令是查看其他命令的帮助手册,因为在Linux上的命令是非常多的,因此需要一个这样的手册来随时提供参考,直接使用man加上命令就可以查看了

man ls


当然也是可以直接使用百度搜索来进行搜索也是可以的!

🍓 12.less

less命令可以进行读取文件内容的操作,而和cat不同的是,less可以进行按页查看的(内置了翻页查看),也就是懒加载,而cat是一次性会把所有的内容都显示出来,如果对于一些内容量比较大的文件,使用less显然比使用cat好一些

less test.txt


相当于是一页的效果,同样是按q进行退出查看的效果

🍓 13.vim

vim是Linux是上一个非常重要的操作,vim既能读取文件内容,也能编辑文件,就是一个文本编辑器,而这个编辑器并不是那么好操作的,下面就来看一下vim的基本使用:

vim test.txt

刚进入vim处于一个命令行模式,这是为了让编辑效率提升,当前只有一些特殊含义的快捷键才能进行操作(引入模式的概念主要就是为了引入海量的快捷键,如果没有模式,此时快捷键就需要搭配alt/ctrl等来搭配使用,这就不方便了,因此在vim里面通过模式就能让一些简单的英文字母变成快捷键,从而方便人们的使用),而想要在vim里面写东西,就需要使用i来进入插入模式:

此时再进行各种编辑就可以了,而如果想要退出的话,需要先按esc退出到命令行模式,然后直接按:wq就可以保存退出了,w表示(write)写保存,q表示(quit)退出,!表示强制执行,另外ctrl+s不是保存的操作而是冻结当前屏幕的操作,而如果一不小心冻结了界面,需要按ctrl+q才能解除冻结状态

另外还有一个vimtutor,这是vim自带的官方"交互式"教程:

vimtutor

通过这个教程也可以进行一些关于vim的基本命令操作了!

🍓 14.grep

grep命令可以用于查找文件中是否包含指定字符串

grep "hello" test.txt

🍓 15.ps

ps命令可以用于查看当前系统上运行的进程,ps aux显示当前的所有进程

ps aux   # 显示系统上所有的进程
ps aux | grep "进程名"
ps aux | grep "进程id"


ps aux | grep “进程名”/"进程id"就可以来查看具体的进程了

🍓 16.netstat

netstat命令可以查看系统上的网络状态,netstat -anp表示查看网络状态,而一般会搭配grep来使用:netstat -anp | grep “进程名”/"端口号"来查看具体进程的网络状态

netstat -anp
netstat -anp | grep "进程名"
netstat -anp | grep "端口号"

🍓 17.yum

yum命令就像一个应用商店一样,可以在里面搜索并进行下载一些东西,yum list就可以查看所有的应用,但是应用会很多,可能会卡死,这个不建议操作,yum list | grep + 关键字 就可以进行相关的搜索了,然后再使用yum install + 所需要的应用,就可以直接进行安装了

yum list | grep [软件包关键字]
yum install [软件包名字]
yum remove [软件包名字]

补充一下:在Linux终端里面,ctrl+c表示取消当前操作,而不是复制功能,复制可以使用ctrl+insert,而粘贴是shift+insert键,另外可以使用选中相关内容进行复制以及粘贴,ctrl+l可以清屏


🍌 二.Linux的相关权限

权限对于程序员来说只需要简单的了解就可以了,而一般是"运维"会来关注权限,像一般的用户权限是不会有那么多的,在Linux里面只有root用户,也就是超级用户是不受权限限制的,而创建的普通用户是会受到权限限制的,这也是出于安全的考虑,像rm这样的操作是非常危险的,因此对于普通的用户这种操作是会受到限制的,而Linux的权限主要是围绕文件和目录展开的,这里就来简单介绍一下:

前面的一串字符串表示的就是相关的权限,d表示当前的文件是目录,-就表示当前的文件是普通文件,剩下九个字符涉及到三个权限和三组人,三个权限分别是r(可读)w(可写)x(可执行),-(没有相关的权限),第一组表示当前用户,也就是你自己,第二组表示用户所属组,也就是你的家人以及一些和有关系的人,而剩下的一组就表示剩下的其他人,而如果一组的权限是rwx就表示可读可写可执行,那么如何对用户权限进行修改呢?在Linux中提供了命令chmod来对权限进行修改,可以通过给u(当前用户),g(所属组),o(其他人)三组人员进行+或者-相关权限来进行权限的修改,另外也可以不指定人员直接+所需要的权限字,就可以让所有人都拥有这个权限例如chmod +w 文件名.就可以让所有人都拥有写权限

chmod g+w test.txt


另外可以可以根据三位8进制数字进行修改:r(4)w(2)x(1):

 chmod 664 test.txt


🍌 三.搭建Java部署环境

作为一个Java程序员,最核心的目的就是能够在Linux系统上搭建Java的运行环境,并且能够将Java Web程序部署上去,这也是最重要的一点!而环境搭建就需要在Linux上安装一些必要的程序:

🍓 1.JDK

在Linux上安装JDK的方法有很多,这里就介绍一个简单的安装办法:基于yum来进行安装,通过yum list | grep jdk 就可以查询到所有的jdk安装(|叫做管道,功能是把前一个命令的输出,作为后一个命令的输入)


通过yum安装这个版本的即可,

yum install java-1.8.0-openjdk-devel.x86_64

这样就可以直接进行安装了

安装完成之后,使用javac命令可以看到如上的结果就表示安装成功了!!

🍓 2.Tomcat

查看yum里面的tomcat

发现yum里面的tomcat都是7.0系列的,而jdk版本是1.8而tomcat和jdk以及servlet的版本都需要匹配才行,因此这里就不采用yum来进行tomcat的安装了,所以就需要在tomcat的官网里面下载好相应的版本安装包,然后直接以拖拽的形式,拖进去linux服务就可以了,如果无法拖拽,就要先下载yum install lrzsz之后再进行拖拽,因为拖拽是依赖rz命令的

拖入之后就会有这样的安装包

然后将这个压缩包进行解压缩就可以了,如果无法进行解压缩的话,可以先yum install unzip就可以了


然后就可以进入到tomcat的目录中,找到bin目录,里面会有可以执行的文件

另外需要将这些文件改为可执行的文件,因此使用chmod +x *.sh 这样的命令就可以了

在windows环境下需要执行startup.bat文件,而在Linux里面就需要执行startup.sh文件了, 使用这样的命令:sh startup.sh,就看可以执行tomcat了!
那如何得知tomcat已经执行成功了呢?

  • 可以查看tomcat进程:ps aux|grep tomcat就可以查看到相关的tomcat进程了
  • 查看tomcat的端口号:netstat -anp | grep 8080,看8080端口号是不是被其他进程占用了,如果占用了,就需要对tomcat的端口号进行修改,来保证tomcat可以启动成功
    如果要修改端口号的话需要在conf目录下,找到server.xml文件,将里面的相关端口号进行修改即可(需要将8080和8085都改成没有被使用的端口号,才能真正启动成功)
  • 能否访问tomcat的欢迎界面:能够访问的话,就表示启动成功了(通过服务器的外网IP和tomcat的端口号)

🍓 3.mysql

安装MySQL建议参考CentOS 7 通过 yum 安装 MariaDB来进行安装!
具体安装步骤:

  • 安装 mariadb 服务
yum install -y mariadb-server
  • 安装 mariadb 命令行客户端
yum install -y mariadb
  • 安装 mariadb C library
yum install -y mariadb-libs
  • 安装 mariadb 开发包
yum install -y mariadb-devel

完成上述安装完成之后,需要修改更改配置,来保证数据库的字符编码是不会出现乱码的

  • 更改 /etc/my.cnf.d/client.cnf 文件
[client] 下加一行配置 default-character-set=utf8
  • 更改 /etc/my.cnf.d/mysql-clients.cnf 文件
[mysql] 下加一行配置 default-character-set=utf
  • 更改 /etc/my.cnf.d/server.cnf 配置
[mysqld] 下加配置
collation-server = utf8_general_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
sql-mode = TRADITIONAL

完成更改之后再启动服务

  • 启动服务
systemctl start mariadb
  • 设置服务开启自启动
systemctl enable mariadb
  • 查看服务状态
systemctl status mariadb

如果可以出现以下内容就表示启动成功了

然后就可以进行数据库的连接了

mysql -uroot


这样就表示数据库已经连接成功了,下面就可以开始数据库代码的编写了,这和MySQL的操作是没有任何区别的,另外这里数据库的密码想设置的话可以设置,但是很有可能会出错,因此我这里就不设置密码了!


🍌 四.部署项目

找到之前写好的项目,将此项目进行打包操作,记得修改包类型和包名:

    <packaging>war</packaging>
    <!-- 指定打出的 war 包名字 -->
    <build>
        <finalName>blogs</finalName>
    </build>


打包完成之后就会出现一个这样的包:

然后直接将这个包拖到tomcat的webapps目录里面就可以了,然后就部署成功了!

也就是我们前面写好的博客系统!

以上是关于Linux的基本使用的主要内容,如果未能解决你的问题,请参考以下文章

linux 文件时间

Linux 进程管理介绍

Linux 新手必知必会的 10 条 Linux 基本命令

Linux(十五)进程管理

linux长用基本命令

13优先使用基本类型