linux

  本周学习了linux系统下,一些简单的命令及几个基本得到软件的安装应用:

linux:
vi编辑器:
黑屏界面:命令
系统:
windows
1、特点:
1)开源免费
没有售后
Windows系统不开源且收费
2)性能比较强劲,并且运行稳定
Linux系统一般作为服务器存在
3)更加适合初学者入门编程语言
4)可以压缩成很小的系统,便于植入到各种硬件设备中
5)文件系统和Windows不太一样
windows下: c:/Windows/…
linux下: /home
/ :根目录
/home:家目录(普通用户)
/home/terry
/home/tom
~ :
cd ~:当前用户家目录
$/# cd /home
tar xvf /opt/xxx.tar
/root:超级管理员/用户的家目录
/etc:用户配置文件的存放位置
/sys:系统配置文件
/var:用来存放静态文件

2、准备工作
Linux:
双系统
虚拟机
云服务器:
unbuntu 16.04: 类Linux系统、公网IP、root->重置密码
3、使用
1.登录
1)使用命令行登录
打开cmd(Windows+r)
ssh 用户名@公网IP
ssh root@ip
2)putty/xshell
2.用户操作(移动、创建、复制、删除、修改、压缩。。。)
root:超级管理员
0.其他命令:
$ clear 清屏
$ ls 列出当前根目录下文件夹下的所有子文件
$ ls /home 列出根目录下home文件夹下的所有子文件
$ ls -l 使用长列表的形式列出当前文件夹下的所有子文件
eg: $ ls -l css/
$ ls -a 列出当前目录下的所有文件,包括隐藏文件
eg: -rw-r–r-- 1 test terry 436 Aug 10 20:28 all.zip
-rw-r–r--:用户权限
1: 链接数
test:当前用户
terry:当前用户所属哪个组
436 :文件大小
Aug 10 20:28:创建日期
all.zip:文件名
退出用户登录:Ctrl+d / exit
预览:more (more /etc/group)
more a.txt >> b.txt: 把a.txt的内容预览时复制到b.txt。
tail:预览文件的后10行 (tail /etc/group)
head:预览文件前10行 (head /etc/group)
推出预览:q
cd:进入文件目录下
cd ./
cd …/
cd /home
cd /css
cd ~/:切换到当前用户家目录下
pwd:显示当前文件路径
man:查看命令详情
1、添加用户
$ adduser 用户名称
创建过程:
1、创建一个用户
root可查看:
/etc/group:存放分组信息
/etc/passwd:存放用户信息
/etc/shadow:存放用户密码
2、创建一个组,组的名称和用户一致
3、将用户放在组中
4、在home下创建用户文件夹 /home/terry
5、在用户文件夹下设置配置文件 /etc/skel
6、输入密码
2、删除用户
$ userdel -r 用户名
3、切换用户
su - 用户名称
su -:直接切换到超级用户管理员
4、查看用户基本信息
$ id
5、修改用户
$ usermod -g ( $ usermod -g 1003 terry:将Terry用户的组id修改为1003)
3、目录操作
1、新建多个目录
$ mkdir 文件夹名称
(mkdir linux javascript html css)
2、新建多级目录
$ mkdir -p css/day01
-p:创建级联目录
3、新建文件/修改最近访问时间
$ touch a.txt(创建一个空文件,当前文件不存在则创建,如果当前已经存在,则修改文件的最近访问时间)
可同时创建多个文件:$ touch a.txt b.txt c.txt
$ touch dir/a.txt(dir文件夹必须存在)
$ echo ‘hello’ >> a.txt:将当前文件hello输入到a.txt中
$ stat a.txt :查看当前文件的默认信息
4、拷贝文件
拷贝文件:$ cp a.txt b.txt
拷贝文件夹: $ cp -r dir1 dir2
5、移动文件
$ mv a.txt dir(文件夹)
$ mv *.txt dir
$ mv dir1 dir2
(如果dir2已存在,当前文件夹增加;若果dir2不存在相当于重命名)
6、删除文件
$ rm a.txt
删除普通文件
$ rm -r dir
删除目录文件夹
$ rm -ir dir
逐个询问当前操作是否删除子目录
$ rm -Ir dir
询问一次是否删除子目录
7、压缩文件:
.gz:只能对单文件进行压缩
$ gzip a.txt :压缩
$ gunzip a.txt.gz :解压缩
.bz2:只能对单文件进行压缩
$ bzip2 a.txt :压缩
$ bunzip2 a.txt.bz2 :解压缩
.zip:可以进行整理压缩(归档压缩)
$ zip all.zip *.txt:压缩
$ unzip all.zip:解压缩
$ unzip all.zip -d dir:声明压缩文件夹(将压缩文件放在dir文件夹中)
tar xvf
x: 解压/拆档
v:打印过程
f:指定名称
4、软件安装
1)apt(在root用户下安装)
$ apt install xxxx
$ apt install zip
$ apt install git
2)解压安装
1.本地下载
1、下载
2、上传到linux上
3、解压
2.在linux下下载
1、复制下载链接
2、$ wget 链接地址
3、解压
node.js
jdk
5、权限管理
d rwx rwx r-x:
d:文件类型
第一个rwx:当前用户的权限:u
第二个rwx:同组成员权限 :g
r-x:其他成员权限 😮
文件类型:
d:文件夹
l:链接文件
b:设备文件
p:管道文件
-:普通文件
给谁?
u:当前用户的权限
g:group:组成员的权限
o:other:其他成员权限
a:all:所有成员
赋予哪些权限?
w:write:写
r:read:读
x:execute:执行
index.js
terry:node index.js
修改:
1、通过表达式来修改
$ chmod g-w node.txt:改变同组人可写权限,不可写 -> ls -l
$ chmod o+w node.txt:给其他成员添加可写权限
2、通过二进制方式修改
–x 001 1 不可读不可写可执行
-w- 010 2
-wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7

    $ chmod 644 node.txt:将txt文档修改为:
                         当前用户可读可写;同组人和其他人都只读
    $ chmod -R 644 node.txt
        -R:级联修改

6、vi编辑器
1、打开vi编辑器方式:
1、vi
打开编辑器,需要在底行模式下输入文件名称
:w a.txt
2、vi a.txt
如果a.txt存在则使用vi打开a.txt文档;
如果a.txt不存在则新建一个a.txt文件再打开.
3、vi +number b.txt
使用vi编辑器打开文档b.txt的同时,把光标定位在number行
2、三种模式/状态:
(1)
1)命令行状态: 文本内容操作
切换:*命令行->插入:i:在当前光标位置进行插入
I:在当前光标所在行的首字符位置进行插入
o:在当前光标的下一行进行插入
O:在当前光标的上一行进行插入
a:在当前光标之后的位置进行插入
A:在当前光标所在行的最后一个字符位置进行插入
s:删除当前光标字符,在当前位置进行插入
S:删除光标所在行,进行插入

             *命令行->底行:: 或 / 底行模式命令
       命令:
            dd:删除当前行
            ndd:从当前行开始删除n行
            yy:复制当前行
            p:粘贴当前行
            u:回退操作
    2)插入/编辑状态:  编辑文本
       切换:*插入->命令行:esc
    3)底行模式: 整个编辑器进行配置    
       切换: *底行->命令行:esc
       命令: 
            u:退出
            :wq: 保存文档并退出
                eg:没有文件名::wq a.txt 
            :w:保存
                eg:  :w a.txt(另存为a.txt)
            :q :退出
            :q!: 强制退出  
            :wq!:强制保存并退出
            :set number/nu:
                给当前文件设置行号
            :set nonumber
                取消行号
            /字符串:查找字符
                    按“n”代表查找下一个
            :1,4co10:
                将第一行到第四行复制到第十行的位置
                $表示末尾   
                    :1,4co$
            :1,4m$:将1到4行移动到文件末尾
            :1,$s:从第一行到最后一行开始搜索
                :1,$s/web2003/888888/g(全局搜索)
                :1,$s/web2003/888888/gi
                    g:全局搜索
                    i:不区分大小写
  (2)vi配置
        1)自行配置(家目录下创建)
            ~/.vimrc
            vi .vimrc
            :
            set nu:设置行号
            set autoindent:自动缩进
            set tabstop:设置tab键缩进字符个数
        2)spf13-vim
            别人开发的插件
            github
            1、条件
                git1.7+
                vim 7.3+
            2、执行
                $ curl http://......
3、sudo
    信任列表:sudoers
                root ALL
    $ more /etc/shadow
    sudo more /etc/shadow:在管理员允许下,临时调用管理员权限
    vi /etc sudoers:用来设置可以临时调用sudo权限的用户
4、linux下其他重要命令
    find:查找
        find ./ -name "*.txt";    查找当前目录下所有txt文件
    grep:过滤
        grep 1003 a.txt:过滤a.txt文件汇总的1003字符,显示当前行
    sleep:睡眠/阻塞
        sleep 1000s:睡1000s(ctrl+c取消睡眠)
        sleep 1000s &:在后台阻塞/睡眠
    ps -ef:显示所有进程
            进程id: 4002
        ps -ef | grep sleep:在所有进程中过滤出sleep进程
    kill -9 pid:杀死进程(eg:$ kill -9 4002)

    重启阿里云:
        1、页面
        2、linux命令
            $ reboot

7、安装软件
更新源: $ apt update
1、apache2:自己电脑
(1)安装
$ apt install apache2
(2)测试状态
$ service apache2 status:测试状态
$ service apache2 start:打开
$ service apache2 stop:停止
$ service apache2 restart:重启
2、node js(解压方式)
js (脚本语言,需要解析执行,js解析器)
:核心js+dom(文档对象模型)+bom(浏览器对象模型)
js 运行环境
1、repl环境:
r:read 读取
e: evel 执行
p: print打印
l: loop 循环
2、命令执行文件
index.js
node index.js
1、复制下载链接
2、在linux下下载压缩包
wget 地址
3、移动压缩包到/opt
mv no tab键
4、解压
$ cd /opt
$ tar xvf 压缩包名称
x:解压
v:打印过程
f:指定名称
文件夹:node-18.0.3-linux-x64
5、修改文件名称
mv 源文件夹
node index.js
家目录:
6、修改配置文件
$ vi /etc/profile
文档末尾追加:
export NODE_HOME=/opt/node
export PATH= P A T H : / u s r / s b i n : PATH:/usr/sbin: PATH:/usr/sbin:NODE_HOME/bin
7、配置文件生效
source /etc/profile
8、测试
$ node --version
$ node
3、jdk:(java)jre(java运行环境)
1、安装
$ apt install openjdk-8-jre-headless
$ apt install openjdk-8-jdk-headless
2、测试
$ java -version
4、mysql:数据库
1、安装mtsql服务
$ apt install mysql-server
出现紫色密码框:重置root用户的密码
2、测试
1、进入mysql
mysql -uroot -proot
2、使用数据库
$ use mysql;
$ select host,user from user;
3、修改数据库表
> update User set Host=’%’ where User=‘root’
> update User set Host=’%’ where User=‘briup’
4、修改配置文件
/etc/mysql//etc/mysql/mysql.conf.d/mysqld.cnf
将第43行代码的bind-address的属性值修改为0.0.0.0,保存退出
5、重启mysql服务
service mysql restart
6、打开防火墙
在阿里云页面的服务器安全设置中,添加规则:
1、mysql规则,默认占据端口3306
2、自定义规则,占据端口8888(后台代码已经默认写好)
5、navicat
1、
2、新建数据库
在当前连接上,鼠标右键=》新建数据库
数据库名称:cms,字符集:utf8,排序规则:随意
3、运行sql文件
在数据库名称上鼠标右键-》运行sql文件
4、在用户新建一个用户
用户名、密码:briup
主机:%
在服务器权限和对象权限:cms后全勾选
5、测试前后台是否相通
项目部署:
前台项目:
。。/index.html…
静态项目部署目录:
/var/www/html
访问:
http://公网IP:80/5i5j/index.html
后台项目:
cms.jar
项目存放地址:
/home/…
运行Java代码:
$ cs /home
$ java -jar jar包名称
访问后台接口:
http://公网ip:8888/swagger-ui.html


js (脚本语言,需要解析执行,js解析器)
:核心js+dom(文档对象模型)+bom(浏览器对象模型)
1、js 运行环境
1、repl环境:
r:read 读取
e: evel 执行
p: print打印
l: loop 循环
2、命令执行文件
index.js
node index.js
2、javascript:
js:全称:javascript
java:服务器端语言
js和java没有关系。
1、由来:
网景公司:
开发浏览器
统一标准:javascript:
ECMAScript:核心js
dom:document object model
文档对象模型
html
js:html
bom:browser object model;
浏览器对象模型
2、特点:
1、脚本语言:本身具有逻辑能力和行为能力;需要解析执行
2、解释型语言:
需要js的解析器
默认:浏览器内置js解析器
node:js解析器(运行环境)
3、弱类型语言:js:
var a=10;//number
a=“hello”;//string 可以随意更改
强类性语言:java:
int a=10;
a=“hello”;//报错
4、从上到下依次执行.
代码顺序:
say();
function say(){}
解析顺序:
function say(){}优先解析
say();
执行顺序:
function say(){}
say();
5、大小写敏感

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值