linux 命令与Git和ADB命令的区别:

Linux、Git和ADB是三个不同的命令,它们用于不同的用途。以下是它们之间的简要区别:

  1. Linux命令:Linux命令是指用于在Linux操作系统中执行特定任务的命令。Linux命令可以用于文件和目录管理、软件安装和配置、系统监视等任务。Linux命令可以通过终端或终端模拟器使用。
  2. Git命令:Git是一种版本控制系统,用于管理软件开发项目的源代码。Git命令用于在本地计算机和Git服务器之间进行源代码的提交、拉取、合并和冲突解决等操作。Git是一种非常流行的开源工具,广泛用于软件开发中。
  3. ADB命令:ADB是Android Debug Bridge的缩写,是一种用于与Android设备进行通信的命令行工具。ADB命令可以用于安装应用程序、调试应用程序、备份和恢复数据等任务。ADB命令可以通过终端或终端模拟器使用。

安装虚拟机

选择驱动

  1. 使用物理默认驱动器
  2. 使用自定义的ISO映象文件
    在选择虚拟机驱动和ISO文件时,需要注意以下几点:
    1) 虚拟机驱动和ISO文件应该与虚拟机软件版本相匹配。
    2) 如果需要安装操作系统,则需要选择与操作系统版本和类型相匹配的ISO文件。
    3) 如果使用虚拟机进行网络连接,则需要选择合适的网络适配器驱动。
    4) 对于高性能虚拟机,建议选择支持硬件加速的虚拟机驱动。

添加连接

虚拟机连接是指在主机和虚拟机之间建立网络连接的过程。选择虚拟机连接的方法取决于许多因素,例如网络类型、操作系统和使用场景等。
1) 桥接连接(Bridged Connection):此连接方法将虚拟机连接到物理网络上,虚拟机可以直接与物理网络中的其他设备通信。这种连接方法适用于需要虚拟机与主机网络进行交互的场景
2) NAT连接(Network Address Translation):此连接方法将虚拟机连接到主机的网络上,并使用主机的IP地址作为虚拟机的地址。这种连接方法适用于在主机上运行多个虚拟机的场景,以及需要将虚拟机隔离在主机网络之外的场景。
3) Host-only连接:此连接方法将虚拟机连接到主机上的虚拟网络中,虚拟机可以与主机和其他虚拟机通信,但无法访问外部网络。这种连接方法适用于需要隔离虚拟机和主机网络的场景,以及需要创建私有网络的场景。
4) 内部连接(Internal Connection):此连接方法将虚拟机连接到一个私有网络中,只有虚拟机之间可以通信,无法访问外部网络。这种连接方法适用于需要在虚拟机之间创建私有网络的场景。

安装Xshell

点击压缩包绿化,如果有报错运行’/Xshell6\缺dll文件报错请装这里面的程序’路径下的连个补丁程序

连接虚拟机

  1. 目标虚拟机
    1
    2
    3
    4
    运维人员给出  
    IP:192.168.25.142
    账号 :root
    密码:123456
  2. 对应连接
    对应操纵:
    名字随机填写
    填写虚拟机主机IP:192.168.25.142
    信息接受保存
    填写用户名
    输入密码
  3. 注意:
    使用root管理员权限时,#号开头

包与apk管理

  1. pm -lf |grep 包名或apk名 :查看对应包名或apk名
  2. pm dump com.hunantv.operator |grep version :全局查看软件版本号
  3. dumpsys package com.hunantv.operator |grep version :查看软件版本号
  4. pm install -r 包名 :安装并屏蔽原有apk
  5. pm clear com.iflytek.xiri 清除apk缓存
  6. dumpsys activity |grep mResumedActivity :查看当前页面所属包名
  7. monkey -p com.iflytek.xiri 1 :拉起应apk

文件和目录管理

查找与新增文件

  1. touch text.txt :新增文件
  2. find /bin -name a*: 查找目录下a开头的文件/目录
  3. find /bin -name *a: 查找目录下a结尾的文件/目录

结束进程与tab补全

  1. ctrl+c: 结束进程
  2. ctrl+z:挂起进程
  3. tab: 补全名称

ls查看目录

  1. ls: 查看文件夹文件夹
  2. ls / :查看指定路径文件夹
  3. ls -a: 查看当前路径下全部文件(包含隐藏文件——隐藏文件在文1. 件名前有’.’文件引用符号)
  4. ls -l:查看当前路径下文件的详细信息
  5. ls:al: 查看全部文件详细信息

cd切换目录

  1. cd: 切换目录
  2. cd / :切换到根目录
  3. cd / bin :绝对路径,在任意目录下寻找文件bin
  4. cd bin : 相对路径,在当前目录下寻找文件bin
  5. cd ~:快速切换到root目录
  6. cd ..:回到上一级目录

查看当前目录路径

pwd :查看路径

mkdir创建文件夹

  1. mkdir 文件名:在当前路径下创建文件夹
  2. mkdir /bin/test: 在指定路径下创建test目录

rm删除文件夹

  1. rm 文件名:删除当前目录下指定文件
  2. rm -f 文件名:删除当前目录下指定文件,没有二次确认
  3. rm -r 目录名:删除当前路径下的目录
  4. rm -rf 目录名:删除当前路径下的目录,没有二次确认
  5. rm -rf *:删除当前目录下所有文件和目录

复制文件或目录

  1. cp -rf 文件名:复制文件目录
  2. mv 拷贝移动文件

mv移动目录

  1. mv 老名称 新名称 : 修改目录名
  2. mv /usr/tool /opt : 将tool文件剪切到opt目录下
  3. mv -r/usr/tmp/tool /opt : 递归剪切目录中所有文件和文件夹

文件操作

vi /vim编辑文件

编辑模式:

  1. 复制与剪切
    1) yy复制光标当前行
    2) yny 复制从光标开始的n行内容
    3) p 将剪切板中的内容粘贴到光标下一行
    4) dd 剪切光标当前行的内容
    5) dnd 剪切光标从当前行开始的n行内容
  2. 进入插入模式
    1) i:进入插入模式,光标在第一行
    2) a: 进入插入模式, 光标在最后一行
    3) o:进入插入模式光标在最后一行,且另起一行
  3. 光标移动
    1) G :将光标移动到最后一行
    2) gg :将光标移动到第一行
    3) ^ :将光标移动到当前行的行首
    4) $ :将光标移动到当前行的行尾
  4. esc:进入底行模式

插入模式:

1) 此时可以修改文件内容
2) esc:进入底行模式

末行模式(命令模式):

1) :w 保存
2) :w 文件名:另存为
3) :q : 退出编辑
4) :q! : 强制退出(不保存退出)
5) : qw : 退出保存命令
6) : set numer : 设置行号
7) : set nonumer : 取消行号

cat查看文件与tail实时监测日志文件

  1. cat test.log :从第一行查看文件 —-捕获(catch)
  2. tac test.log : 从最后一行查看文件
  3. more test.log: 一页显示文件内容
    1) 空格——下一页
    2) 回车——下一行
    2) Q——退出
    3) B——上一页
  4. less test.log :一页显示文件内容,可查关键字
    一页页显示test.log内容,可查询关键字
    1) 空格键:下一页
    2) B键/向下箭头:下一行
    3) 向上箭头:上一页
    4) /关键字:向下搜索【关键字】
    5) ?关键字:向上搜索【关键字】
    3) Q键:退出阅读
  5. head test.log :阅读前10行
  6. head -n 200 test.log :阅读前前200行
  7. tail test.log :阅读前10行
  8. tail -n 200 test.log :阅读前前200行
  9. tail -f test.log:实时监测实时,动态打印
  10. tail -1000f test.log: 先监测最新的1000行内容,并实时监测实时,动态打印
  11. tail -nf 文件名 | grep -i error : 使用管道符筛选日志信息

echo命令

  1. echo 内容>文件名 :将内容写入到文件中
  2. echo 内容>>文件名 :将内容写入到文件中

系统管理命令

开机与用户选择

  1. reboot:重启
  2. shutdown -r:关机
  3. shutdown -h:睡眠
  4. su +用户名 : 切换用户

free 与top查看内存与资源

  1. free -h 功能:查看系统内存的使用情况
  2. top -H -p 进程号 更多top命令及相关字段说明功能:查看某个进程下的多个线程使用系统资源的信息
  3. du 文件或者目录
  4. df -h 功能:查看硬盘上的各个分区的使用情况

端口

  1. netstat 查看端口进程 —可以对网络通信的进程,查看端口号
  2. netstat -ano 功能:显示电脑上进行网络通信的进程的信息

进程

windows 查看进程的命令是 tasklist | findstr 进程名,而linux与区别与wondows有所不同

  1. ps -ef:查看进程
  2. ps -ef | grep nginx: 筛选进程
  3. kill 进程号: 终止进程
  4. kill -9 进程号: 强制终止进程
  5. kill -15 进程号: 非强制终止进程

IP

  1. ifconfig: 查看ip
  2. ifconfig eth0 新ip 功能:设置ip地址—-新设置的ip应在局域网的网段内
  3. dhclient ens33: 重置ens33网络
  4. ping 域名或者ip 功能:测试网络是否连通
  5. telnet 域名或者ip 端口号 功能:测试主机的某个端口是否可以访问 —该命令需要设置和安装,window系统在启用或关闭windows功能中启用Telent客户端

vmstat 硬件资源监控

vmstat -n 时间(秒) 功能:可以动态监控系统的硬件资源数据

chomd授权

  1. chomd 777 test.log 授予最高权限,可读,可写,可执行
  2. chmod -R u/g/o +/- r/w/x 文件或者目录
  3. chown –R 用户名:组用户名 修改一个文件或者目录的所属用户
  4. who 功能:当前跟系统进行会话的用户信息
  5. whoami 功能:显示当前操作的账号

用户管理命令

  1. Useradd -p “密文密码” 用户名 功能:创建新用户
  2. Userdel 用户名 功能:删除用户
  3. Usermod -p “密文密码” 用户名 功能:修改用户的信息
  4. Passwd 用户名 功能:给账号设置一个新的密码(明文密码)

防火墙及常用的iptables命令:

  • linux防火墙
  1. service iptables status 查看防火墙的状态
  2. service iptables status 查看iptables服务的状态
  3. service iptables start 开启iptables服务
  4. service iptables stop 停止iptables服务
  5. service iptables restart 重启iptables服务
  6. chkconfig iptables off 关闭iptables服务的开机自启动
  7. chkconfig iptables on 开启iptables服务的开机自启动
  • centos 7 防火墙:
  1. systemctl status firewalld.service 查看防火墙状态
  2. systemctl stop/start firewalld.service 关闭运行的防火墙
  3. systemctl disable firewalld.service 永久禁止防火墙服务
  1. iptables -L —line-numbers 查看防火墙规则
  2. iptables -F 清楚所有防火墙规则
  3. iptables -A INPUT -p tcp —dport 22 -j ACCEPT 添加规则(这个命令会在 INPUT 链的末尾添加一个新的规则,允许来自任何地方的 SSH(TCP 22)连接。)
  4. iptables -I INPUT 1 —dport 80 -j ACCEPT 插入规则(这个命令会在 INPUT 链的开头添加一个新的规则,允许来自任何地方的 HTTP(TCP 80)连接)
  5. iptables -D INPUT 3 删除规则(这个命令会删除 INPUT 链中的第3条规则)
  6. iptables -R INPUT 3 -s 192.168.0.1 -j DROP 替换规则(这个命令会将 INPUT 链中的第一条规则替换为新的规则,拒绝来自 192.168.0.1 的所有连接。
  7. iptables -I INPUT 3 -p tcp -m state —state NEw -m tcp —dport 9001 -j ACCEPT 令允许来自 IP 地址为 192.168.1.1 的 TCP 9001 连接
  8. iptables -A INPUT -p tcp—ctstate NEW,ESTABLISHED -J ACCEPT—dport 22 -m conntrack 允许来自任何来源的 SSH(TCP 22)连接。
  9. iptables -A INPUT -m statistic —mode random —probability 0.03 -j DROP 丢包命令
  10. iptables -I INPUT -p udp -d 225.0.0.8 -j DROP 丢弃所有目标地址为 225.0.0.8 且协议为 UDP 的入站数据包(组播场景)
  11. iptables -I INPUT -d 225.0.0.8 -j DROP 丢弃所有目标地址为 225.0.0.8 的入站数据包,不限协议(完全禁止发往该组播地址的所有流量。)
  12. ptables -I INPUT -s 225.0.0.8 -j DROP 丢弃所有源地址为 225.0.0.8 的入站数据包,不限协议。
  13. 限制与放通所有ip
1
2
3
4
5
6
7
8
9
模拟网络不通
iptables -P INPUT DROP
ip6tables -P INPUT DROP
ip4tables -A OUTPUT -j REJECT 
ip6tables -A OUTPUT -j REJECT 

放通网络
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

保护防火墙规则(这个命令会将当前的防火墙规则保存到持久化存储中,以便在系统重启后仍然有效)
service iptables save

man帮助文档

  1. man +命令:中文帮助文档; 按Q退出
  2. ifconfig —help:提供帮助

遇到问题

问题1:解决服务冲突
查找相关线程
ps -ef | gerp nginx
kill 相关线程,重新运行服务
问题2: 文件处插入linux
使用Xftp文件传输工具
直接拖拽到终端命令文件夹下

压缩解压命令:

  1. gzip 文件名 功能:按照gz格式压缩文件
  2. gzip -d 文件名 功能:解压gz格式压缩文件
  3. bzip2 文件名 功能:按照bz2格式压缩文件
  4. bzip2 -d 文件名 功能:解压bz2格式压缩文件
  5. tar -zcvf 功能:按照gz格式压缩文件或者目录
  6. tar -zxvf -C/usr/XX 功能:解压文件到指定文件夹
  7. tar -jcvf 功能:按照bz2格式压缩文件或者目录
  8. tar -jxvf 功能:解压
  9. unzip 功能:对zip格式的文档进行解压
  10. zip 功能:压缩为zip格式

访问链接

wget下载命令

  1. wget https://download.redis.io/releases/redis-6.2.6.tar.gz

(curl)命令[https://blog.csdn.net/wuhuagu_wuhuaguo/article/details/90764856#t1]

  1. curl -v #查看http与https请求过程
  2. 下载远程文件
    curl -o 本地路径/文件名 远程url
    curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
  3. -u 输入账号密码
    curl -u 用户名:密码 baidu.com/login

make编译文件

make

linux系统自带文件夹:

bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
用户文件一般存储在root目录下
/bin 该目录中放的常用的命令文件
/sbin 该目录中放的管理员可以使用的命令文件
/home 普通用户家目录的位置
/root 超级管理员的家目录
/etc 系统配置文件的位置

环境变量配置文件

/etc/profile export 变量名=值
source /etc/profile 功能:从新运行和加载脚本文件

防火墙配置文件

/etc/sysconfig/iptables

守护进程:

service 守护进程名 start
service 守护进程名 stop
service 守护进程名 restart
service network restart

  • censts7中的守护进程:
    systemctl start 守护进程名称 (启动守护进程)
    systemctl stop 守护进程名称 (停止守护进程)
    systemctl restart 守护进程名称 (重启守护进程)

项目历程

  1. 实训云平台部署:
  2. dev 开发 环境
  3. test 测试 环境
  4. 灰度 环境
  5. 上线

问题

  1. linux场景应用
    在linux系统搭建项目环境
    rpm -ivh —nodeps(不检查依赖关系) —force (强制安装)
    rmp -e —nodeps 卸载rpm包
    c语言的源代码包,安装步骤:
    1) make 代码包 — 将源代码编译成二进制软件
    2) make install — 安装
    vim 编辑环境变量配置文件
    source 从新加载环境变量配置文件
    cp mv 拷贝移动文件
  2. 你工作中常用linux
    a) Ls 装工具包信息查看
    b) Tar命令 解压操作
    c) Vim 打开文件,添加环境变量
    d) Free 查看系统资源
    e) 工作中查看日志 tail -nf vi/vim
    f) 工作中监控服务器硬件资源 —-测试环境,硬盘文件过多占满,导致文件保存失败
      top  –H        
      vmstat
      free -h
      df  -h
    
  3. 在Linux系统中搭建测试环境
    (以java项目,mysql数据库为例)
    每天下课回宿舍的路,没有什么故事。
    每天下课回宿舍的路,没有什么故事。
    1) 安装JDK,配置其环境变量
    2) 在Linux系统安装tomcat,配置其环境变量
    3) 安装mysql数据库,启动mysql服务
    4) 连上数据库服务器,执行项目sql脚本
    5) 将项目代码包(war或jar包)包部署到tomcat应对的部署目录
    6) 启动tomcat
  4. 浏览器访问某个站点是显示无法链接,如何诊断
    1) 先确认网络是否连通 ping 服务器ip
    2) 在确认web应用服务器端口是否提供服务—-telnet 命令
    3) 确认防火墙是否开通web应用服务器
  5. 在服务器上启动某个网络通信进程失败,如何查找原因?
    1) netstat 查看端口号是否被占用
    2) 也可以查看日志xn
  6. ip addr命令执行结果显示192.168.9.222/24, 那么网段为多少?
    1) 网段号+主机号,网段为192.168.9.0

开启指定端口的防火墙

查看当前防火墙状态,可以使用以下命令:

1
sudo ufw status

如果防火墙状态为“inactive”(非活动状态),表示防火墙已被关闭,不需进一步操作。如果防火墙状态为“active”(活动状态),则需要进行后续步骤以打开防火墙规则。

打开特定的端口以允许外部访问Web应用程序。例如,如果你使用的是HTTP(80端口)或HTTPS(443端口),可以运行以下命令来打开相应的端口:

HTTP(端口80):

1
sudo ufw allow 80

HTTPS(端口443):
1
sudo ufw allow 443

确保防火墙规则已更新,可以运行以下命令:

1
sudo ufw enable

现在,防火墙规则已更新并启用,允许外部访问Web应用服务器。

实训云部署