当前位置: 首页 > news >正文

有哪些做农产品的网站有哪些视频营销的策略与方法

有哪些做农产品的网站有哪些,视频营销的策略与方法,北京专业网站制作服务,手机网站怎么做seo在 Ubuntu 基本操作 里面基本就分为两部分: 安装 VMware 运行 Ubuntu熟悉 Ubuntu 的各种操作、命令 如果你对 Ubuntu 比较熟悉的话,安装完 VMware 运行 Ubuntu 之后就可以来学习下一章节了。 1. 安装 VMware 运行 Ubuntu 我们首先来看看怎么去安装 V…

在 Ubuntu 基本操作 里面基本就分为两部分:

  1. 安装 VMware 运行 Ubuntu
  2. 熟悉 Ubuntu 的各种操作、命令

如果你对 Ubuntu 比较熟悉的话,安装完 VMware 运行 Ubuntu 之后就可以来学习下一章节了。

1. 安装 VMware 运行 Ubuntu

我们首先来看看怎么去安装 VMware 来运行 Ubuntu,为什么要做这些事情,我们先讲清楚原因。

一般来说我们都是在 windows 电脑上面来操作,然后你可以通过网络去访问一个服务器(linux 服务器),做 linux 开发的时候,为什么一定要用 linux 服务器,在 linux 服务器里面,你可以去编译 u-boot,可以去编译内核,可以去编译应用程序或者各种驱动程序,那么为什么这些操作必须放在 linux 服务器里面呢,为什么不能够在 windows 里面操作呢,就比如说在 linux 里面有一些链接文件,那对于 windows 来说,它根本就不支持 linux 里面的链接文件的文件格式,也不支持 Linux 里面的设备节点,所以很多的时候这种工作必须在 Linux 里面来做。

那么我们作为一个学习者,我们并没有 Linux 服务器,那怎么办?我们可以在 windows 里面来安装一个虚拟机 VMware,这个是虚拟机,它可以模拟出一台电脑,在这台模拟出来的电脑上面安装 Ubuntu,Ubuntu 是一个 Linux 系统,跟 windows 是并列的关系,我们在这台虚拟的电脑上面来运行 Ubuntu,以后在这个 Ubuntu 里面来编译 u-boot 内核、应用程序和驱动程序。

所以我们第一步干嘛呢,安装 VMware;第二步,使用 VMware 来打开 Ubuntu。

1.1 安装 VMware

首先从 VMware 官网(www.vmware.com)下载 Workstation Player 安装包,或者使用我们提供的安装包。(在 <开发板配套资料> 01_100ask_stm32mp157_pro_2022.08\02_开发工具\【Windows】VMwareWorkstation 安装包安装包中,VMWare 安装软件是:VMware-workstation-full-16.2.3-19376536.exe,一路点击安装)

VMWare 安装完成后,有两个软件,它们都可以使用,建议使用第 2 个:
① Vmware Workstation Pro:这是收费的,可以试用 30 天。
② Vmware Workstation 16 Player:这是免费的。
注意:本文是在 Windows 10 上安装 VMware。

1.2 安装 Ubuntu

在 <开发板配套资料> 中,有 Ubuntu 映像文件。(01_100ask_stm32mp157_pro_2022.08\02_开发工具\100ask-vmware_ubuntu18.04)在某个磁盘分区里解压文件,这个分区最好有 200G 的空闲空间。

1.3 使用 VMware 运行 Ubuntu

  1. 启动 Vmware Workstation 16 player,这个 player 是不需要注册号的,是可以免费使用。
  2. 点击打开虚拟机,打开 D:\ubuntu18.04\ubuntu18.04_x64.vmx
  3. 点击获取所有权,点击启动按钮就可以打开虚拟机了,我已复制该虚拟机。

这个软件模拟出来一台电脑,这个电脑上面去运行这个 Ubuntu,用户名密码是 123456,在里面你就可以像操作 windows 一样来操作 Ubuntu 了。

你不想再使用这个 Ubuntu 了之后,你可以点击关闭按钮关机,你也可以点击停止按钮挂起,确定。挂起之后,以后你再次打开这个虚拟机的时候,选中它,点击播放虚拟机,它就会恢复之前被挂起的状态。

如果你对 Linux 系统还不熟悉,对 Ubuntu 操作还不熟悉,那么你就需要去看第二篇里面的后续内容,可以看文档,也可以看视频。如果你已经熟悉了 Linux 的操作,那么下一章节里面 <配置 VMware 使用双网卡> 这个一定要看,下一章节里面我们一开始还需要去配置 VMware 里面的网络。

2. Ubuntu 的基本操作

从现在开始我们来介绍一下 Ubuntu 的简单操作。我们首先介绍一下怎么去操作桌面,然后再去介绍一下使用各种命令。

2.1 Ubuntu 下打开终端

我们之前已经使用 VMware 打开了 Ubuntu。我们以后会使用到各种 Linux 命令,那么在哪里输入命令呢?

  1. 使用右键打开终端。你可以在桌面上点击右键 open terminal,打开终端,这时候你就可以在里面输入各种命令了,这所谓的终端跟 windows 里面的命令行是类似的,在 windows 里面我们同样可以打开所谓的命令行(快捷键 Ctrl + R),你同样可以在里面执行各种 dos 命令,比如 dir,你看在 windows 里面,你要列出这些目录的话,是 dir 命令,在 linux 里面是 ls 命令,有点差别。
  2. 用搜索框打开终端。我们现在回到 Ubuntu,你可以使用右键来打开终端,你也可以点击左下角,找到终端 terminal。
  3. 快捷键打开终端。我们还可以使用快捷键“Ctrl+Alt+T” 来打开终端。

以后我们将会在终端里面输入各种命令,但是这节我们先来体验一下桌面。

2.2 Ubuntu 系统初体验

其实 Ubuntu 发展到现在,它的桌面操作跟 windows 是非常的类似。但是

2.2.1 Ubuntu 和 Windows 的最大差别:目录

对于 Windows 我们可以打开此电脑,Windows 中每个盘符都对应某个分区,在这个分区里面你可以存放目录与文件,如图所示:
在这里插入图片描述
那这些盘符对于哪些分区呢,你可以打开创建并格式化硬盘分区工具,就可以看到左下方有磁盘,磁盘 0 里面前面是分区表,C 盘就对应这个磁盘里面的第一个分区,D 盘对应第二个分区,E 盘对应第三个分区;另外一个磁盘呢,你看这里有 J、K、I、L,从这里你可以看到每一个盘符都对应磁盘里面的某一个分区,Windows 这种表现方法非常的直观。但是对于 Ubuntu 呢,它就不大一样了,在 Ubuntu 里面我们可以打开文件浏览器,打开其他位置,computer,从这里你可以看到它里面有各种目录。

对于 Windows,你在此电脑里面看到的是各种盘符,但是在 Ubuntu 里面,刚才我们看到了在 computer 里面,你看到的是各种目录,你看不到任何的盘符。

好,回到 Windows,在 Windows 里面我们去访问某个文件的时候,你可以使用绝对路径。比如

C:\abc\def\hello.txt

从这个绝对路径我一下就可以知道:它位于 C 盘,它位于某一个分区里面。但是对于 Ubuntu 呢,在 Ubuntu 里面它没有盘符的概念,就比如说你想去访问某个文件的时候,比如

/abc/def/hello.txt

第一个斜杠表示它位于根目录,位于根目录下面的 abc 子目录,在 abc 子目录下面又有 def 子目录,在 df 下面有 hello.txt,从这个路径你看不出它位于哪一个分区。在 Ubuntu 中,以树状的结构表示文件夹与文件。

注意:
Windows 的绝对路径中,目录使用 “” 分隔。
Linux 的绝对路径中,目录使用 “/” 分隔。

以前在 Windows 有 C 盘、D 盘 和 E 盘,这是并列的关系;但是在 Ubuntu 里面,它是一个树状的关系。就比如说,地面上有一个树,它可以分叉,在叉里面又可以继续分叉,这就是所谓的根,这个根用斜杠来表示。我们来比划一下,在根下面有 abc 目录,还可以有其他目录,有 home 目录,有 bin 目录,有 boot 目录等等等等;在 abc 目录下面又可以有什么呢,有 def 目录,或者说还有其他目录,在 def 目录下面又有什么呢,有 hello.txt,那么我怎么找到这个 hello.txt,它就是根目录下面的 abc 子目录,abc 目录下面又有 def 目录,再下面有 hello 这个文件,这就是树状结构的意思。再比如说这 home 目录下面可能又有其他子目录,有 book 一个用户名,有其他用户名 xxx,在 book 下面又有某一个文件,那么你就可以这么访问:根目录下面找到 home 目录,找到 book 目录,在 book 目录下面你可能有一个 1.txt。

/abc/def/hello.txt
/home/book/1.txt

从这些绝对路径的表示方法里面,你看不到任何分区的信息。那么我怎么才能知道我这个文件处于哪个分区呢?那么你就可以打开 Disks 工具,从这里我们就可以看出来,我这 Ubuntu 里面只有一个磁盘,这个磁盘里面的第一个分区:

/dev/sda1
  • dev:设备
  • sd:表示磁盘
  • a:表示第一个磁盘
  • 1:表示这个磁盘里面的第一个分区

sda 这个磁盘的第一个分区,它挂载在根目录下面。

在这里插入图片描述

看到这里,我们又听到了一个新的概念叫挂载。就比如说对于 Windows,你可以认为 C 盘挂载了那个磁盘里面的第一个分区,D 盘挂载了那个磁盘里面第二个分区;对于 Ubuntu 呢,你看,对于这个磁盘里面的第一个分区,它作为根文件系统挂载就挂载在了根下面,以后你去访问这个根的时候,访问的就是这个分区,就比如说你在这个根下面创建了一个 hello.c,这个文件就会放在这个磁盘的第一个分区里。那同样道理,如果你想去访问根目录下面的 home,访问这个 book,你访问这个目录的时候,访问的也是这个磁盘的第一个分区。

我们再来看看这个磁盘的第二个分区挂载在哪里,你点击这个磁盘里面的第二个分区,你发现,这个磁盘 dev/sda 的第二个分区挂载在 boot 目录下面,也就是说我以后去访问根目录下面的 boot 目录,我去访问里面的文件的时候,这些文件位于这个磁盘的第二个分区,为什么呢?因为这个第二个分区挂载在 boot 目录下面。

从这里你可以看到它没有像 Windows 那么直接那么直观,在 Windows 里面我就知道了,我访问 C 盘访问的是第一个分区,我访问 D 盘访问的是第二个分区;但在 Linux 这里呢你得先确认一下第二个分区挂载在哪里,然后你才可以知道,我去访问这个挂载目录的时候,我访问的就是这个分区里面的文件。

我们再来看看,第三个分区这个不用管,这是交换分区,它并没有挂载在某一个目录下面。这里第四个分区挂载在 home 目录下面。我们现在又可以推翻前面说的话了,你刚才不是说我访问 home 目录的时候,也是去访问第一个分区吗,那现在不是了,我现在看完了整个分区的挂载信息之后才发现,第四个分区挂载在 home 目录下面,那么我以后去访问根目录下面的 home 目录的时候,我就访问里面的 book 目录,或者访问这个目录下面的直接有某一个文件的话,

/home/book
/home/1.txt

这些目录,这些文件它都是放在这个分区里面,因为这个分区挂载在 home 目录下面,你访问 home 目录下面的所有的文件夹,所有文件的时候都是去访问这个分区。

我们引入了这种分区挂载在某个目录的这么一个概念,那么自然就会引发另外一个问题,就比如说,我现在第一个分区 /dev/sda 表示某个磁盘,这个设备的第一个分区挂载在了 home 目录下面,我现在假设 /dev/sda 这个分区里面它本来就有 home 目录,home 目录下面我本来就有一个 1.txt,如果我没有去挂载其他分区的话,以后我去访问这个文件的时候,我访问的就是 /dev/sda 这个分区里面的文件,这是第一步。

那第二步呢,我又把 /dev/sda4 这个磁盘的第四个分区我挂载在 home 目录下面,一旦挂载成功之后,我以后访问这个 home 目录,我访问的就是 /dev/sda4 这个分区,那意味着这些之前的这些文件就不可见了。之前 sda1 的 home 目录不可见了,因为我把你的 home 目录挂载了另外一个分区,我以后访问这个 home 目录的时候,我访问的是这个第四个分区,不再访问你之前的第一个分区了。

实际上就我个人的习惯来说,我认为 Windows 里面的表现方法更加直观,更加方便。

我们现在来看看对于 Ubuntu 它的文件系统是怎么组织的呢?

  1. 对于 Windows 你可以打开 C 盘,它都有一些约定俗成的规则,你看里面有 program 目录,就表示说里面存放有 Windows 的应用程序,有用户目录表示里面存放的是各个用户的单独的数据,还有 Windows 目录里面存放的应该就是系统的驱动啊等等等等。
  2. 同样道理,对于 Ubuntu,对于 Linux 它也有一套规则。这套规则叫做循 FHS 标准(Filesystem Hierarchy Standard,文件系统层次标准)。它定义了文件系统中目录、文件分类存放的原则、定义了系统运行所需的最小文件、目录的集合,并列举了不遵循这些原则的例外情况及其原因。FHS 并不是一个强制的标准,但是大多的 Linux、Unix 发行版本遵循 FHS。

我们简单来看看在一个 Ubuntu 里面它有哪些文件。打开 Files->other Locations->computer,你可以看到这些目录它们有什么含义呢,我们来看一看。

首先,我们可以执行各种程序,这些程序放在哪里,放在 bin 目录下面,放在 sbin 目录下面。这些 bin 目录下面放的那些应用程序(命令)是所有用户都可以使用的;这个 sbin 呢,这个 s 就是系统的意思,在 sbin 目录下面放的是基本的系统命令,只有系统管理员才可以使用。总之,这两个目录里面存放的都是命令,或者说就是各种 app 了,只不过它们的权限不一样。那么对于其他无关紧要的应用程序呢,我们可以放在 usr 目录下的 bin 目录或者 usr 目录下面的 sbin 目录,注意了这个 usr 它并不是用户的意思,它是 Unix 软件资源,里面存放的是一些资源,这些资源并不是系统启动必须的资源,就比如说你甚至还可以在里面放游戏,放头文件,头文件根本不是系统启动必须的,游戏呢也根本就不是系统启动必须的。现在我们看到了,usr/bin 目录或者 usr/sbin 目录放的是非必需的 APP。

再来看看其他目录,这些应用程序它都用到库呀,那库放在哪里,根目录下面的 lib 目录可以存放库,usr 目录下面的 lib 目录也可以存放库。

咱们再从头往下看看,boot 目录下面一般来说放一些启动文件,就比如说内核呀等等等等;device 里面存放的是各种设备文件,这是 Linux 独有的,就比如说我们之前讲到了 dev/sda 表示第一个磁盘,dev/sda1 表示这个磁盘的第一个分区,这些文件就存放在 dev 目录下面,它们叫做设备文件,用来表示某些硬件的;还有 etc,是配置文件;home 是家目录,家目录下面有各种子目录,就比如说这个 book 子目录对应着 book 用户,跟 Windows 里面的这个用户目录是类似的,你看在 Windows 里面这个用户目录下面有各种用户,每一个文件夹对应一个用户,对于 Ubuntu,对 Linux 也是类似的,home 目录下面每一个文件夹对应一个用户。

其他的无关紧要,这里还有 proc、sys,这是一些默认的文件夹,在这些文件夹里面,你可以去挂载一些虚拟的文件系统,什么叫做虚拟的文件系统呢?我们在根目录下面挂载了这个磁盘的第一个分区,在 home 目录下面挂载了这个磁盘的第四个分区,它们对应真实的存储设备,但是对于这些 proc、sys 目录,它们挂载的是某一些虚拟的文件系统,对于这些虚拟的文件系统,它并没有真实的存储设备,你可以去访问这些目录,观察到内核的一些信息。就比如说这个 proc 目录,它存放的什么呢,存放的是 process 各个进程的一些信息,这进程的信息是内核帮你提供的,它并不保存在磁盘上,我们可以去看看,打开 proc 目录,你可以看到各种数字,各种数字就对应着某一个进程,你可以进去看看,里面有它所打开的文件,我们看不了,我们是 book 用户,没有权限访问这些目录,我们现在简单的知道这些 proc 或者 sys 目录,它对应的是虚拟的文件系统,比如说 proc 目录下面你可以看到各个进程,在 sys 目录下面你可以看到其他更多的信息,就比如说设备的信息、驱动得信息等等,以后我们再介绍。

再一路往下看,你之前说这个 usr 目录它是 Unix 软件资源,它存放的是可分享的不可变动的数据,那么可以变动的数据在哪里呢。所谓可以变动的数据就是程序运行的过程中生成了各种临时文件,就比如我们在 Windows 里面会有各种缓存,在我的用户目录下面会看到各种缓存的数据,就比如说我打开了这个文件之后,它可能会有一些临时文件,这些临时文件都是可以删除的,这些可以删除的临时文件就是可变动的文件,对 Ubuntu 来说它也有类似的文件,只不过它们都放在 var 目录下面,var,可变的意思,它可以放一些临时的可变的文件,就比如说缓存、log 等等这些文件。

我们现在对 Ubuntu 的整个文件系统,对这些目录稍微简单的介绍了一下。总之,Ubuntu 发展到现在跟 Windows 是非常的类似。

2.2.2 Linux 文件属性

2.3 2.3 Linux 常用命令

2.3.1 Linux 命令行介绍

我们先来演示一个最简单的命令。在 Ubuntu 中打开终端,执行:

ls -a

我要提几个问题:

  1. 你输入 ls -a 的时候,回车,谁来解析你的输入?
1. Linux Shell 简介

Ubuntu 系统中或者 Linux 系统中有一个程序叫做 Shell,由这个程序来接收你的输入。根据你的输入,找到一个应用程序,就比如说这个应用程序是 bin 目录里面的应用程序,它根据你的输入找到 bin 目录里面的 ls 这个程序,然后去执行这个程序,它执行这个程序的时候,它会传入 -a 这个参数。根据这个演示过程,我们引入两个问题:

  1. 谁来接收你的输入?谁来解析你的输入?这是 Shell 来做的。
  2. 需要解析你的输入之后,它去哪里找到应用程序?

在回答这两个问题之前,我们先来看看:

2. Linux 命令的提示符

在 Ubuntu 中打开终端后,即可看到类似下图的提示符:
在这里插入图片描述
~:表示路径,就比如说你可以进入根目录,你看这个路径就变成了根目录。~ 表示家目录,当前用户的家目录,然后进入 ~,那就变成了家目录。这家目录什么意思呢,你看 home 目录下面有某些文件夹,这些文件夹每个文件夹都会对应一个用户。
在这里插入图片描述
我们可以在这个界面里面输入各种命令,这些命令的格式是怎样的呢?

3. Linux 命令的格式

一般来说,Linux 命令由三部分组成:
① command 命令;就比如说我们 ls 命令
② options 选项;这些选项一般来说使用一个减号开头
③ parameter 参数;
在这里插入图片描述

说明:
① [ ]中括号表示 该部分可选,可有可无,需要根据命令的实际需要而添加;
② 命令、选项、参数都以空格分隔,不管几个空格都算一个空格;
③ 命令输入完毕后,按回车“Enter”键启动;

就比如说我们可以来执行 ls -l 然后某一个目录(/,根目录):

ls -l /

你看,命令,可选的一些选项,还有参数,回车,它就可以列出根目录下面那些文件的详细信息。

  • ls 表示列出那些信息。
  • -l 表示详细的信息。

你列出哪一个目录的详细信息呢?你可以指定命令、选项、参数之间用空格来隔开。

再来看看这行文字,它为什么用一个中括号来表示呀,中括号的意思就是这些项目它是可选的,你可以填也可以不填,那如果用尖括号的话,就是表示说你必须填好。我们来找一个命令来演示一下:

fdisk

在这里插入图片描述
你看它说什么呢:错误的用法。为什么是错误的用法,因为你想去格式化某个磁盘,你就必须指定某个磁盘。来看看:

fdisk --help

命令,可选的参数,它会告诉你怎么去用。
在这里插入图片描述
fdisk 加上各种选项,然后你必须指定某个磁盘,这个尖括号就表示说这个参数这个项目不可以省略;中括号就表示说这些项目是可以省略的,就比如说我可以来执行:

sudo fdisk /dev/sda

因为权限不够,我们加上 sudo,密码是 123456,它就可以成功的打开这个磁盘,在里面你可以输入各种命令来操作这个磁盘。

密码输入过程是不可见的。你看着什么都没有输进去其实已经打进去了。

现在我们大概知道了命令的格式是怎样的。现在回到我们之前说的那几个问题,我们以后可以执行各种命令,再次演示下我们最简单的命令:ls -l 在我们输入过程中,我们从键盘给电脑发送字符,谁来接收这个字符,谁把它显示出来,我们输入了 ls,它就接收到了 ls,并且把 ls 显示出来了,我们回车之后,他会去找到 ls 这个应用程序来执行它,并且执行这个程序的时候,把 -l 这个参数传递给他,你看不同的参数,有不一样的行为,那么是谁在背后做这些事情,谁在背后从键盘接收数据,并且把这些数据给显示出来,当你回车的时候,谁来帮你找到应用程序并且执行它,并且把这些执行结果给显示出来,这个背后的程序就是 Shell,我们这节讲的就是 Shell。

Shell 就是一个应用程序,我们可以通过键盘、串口给它发送命令,回车后它接收到这些命令之后,就会去执行这些命令。就比如说我们以 ls -l 命令为例:
① 接收键盘数据并回显。
比如:我们使用键盘给 Shell 程序发送字母 l,它收到后会在屏幕上显示出来。
② 解析输入的字符串,寻找程序,执行程序。
当我们使用键盘给 Shell 程序发送回车是,它就知道字符输入结束了。

  1. shell 会解析字符串,这些字符串用空格分为好几部分:
    • 第一部分就是程序名、命令名(应用程序)
    • 其他部分是参数
  2. shell 会根据第一部分去寻找该程序,去哪里找?去 PATH 环境变量所指示的位置找。
    (你当然也可以指定绝对路径、相对路径,shell 就会直接去这些路径找到程序。)
  3. 找到程序后,会启动该程序,并传入参数。

这环境变量是什么意思?我们来执行一条命令:

echo $PATH

在这里插入图片描述
你看这 PATH 里面它的值是这些,里面是各个字符串,各个字符串之间用冒号隔开,我们的 shell 程序就是去这些目录逐个寻找,看看有没有 ls,找到之后就去执行它。在 shell 中执行程序时,你也可以使用绝对路径、相对路径来指定程序的位置,这个时候 shell 就会去这些路径中寻找应用程序,它就不会去 PATH 环境变量所指示的位置来寻找。

你可以执行:

env

看到各种变量,用 env 显示出来的这些变量就是环境变量,= 前面是环境变量,= 后面是这个变量的值。我们可以用 echo 来显示出某一个环境变量:

echo

那么怎么设置 PATH 环境变量呢?
我们先不去介绍,先来演示一下一个应用程序,我事先已经写了一个 hello 应用程序。

#include <stdio.h>/* 执行命令: ./hello weidongshan * argc = 2* argv[0] = ./hello* argv[1] = weidongshan*/int main(int argc, char **argv)
{if (argc >= 2)printf("Hello, %s!\n", argv[1]);elseprintf("Hello, world!\n");return 0;
}

你看如果你输入的参数超过两个的话,它就会打印 "Hello, %s!\n", argv[1],如果只输入 hello 而不带其他参数的话,它就会打印 "Hello, world!\n"

http://www.hkea.cn/news/2544/

相关文章:

  • 网站建设的三要素营销推广
  • 怎么上传自己做的网站宿州百度seo排名软件
  • 怎么做网站优化 s网络优化app
  • 平凉哪家做企业网站链接买卖平台
  • 为什么要用国外服务器做网站网络营销推广优化
  • 阜南做网站公司郑州网站推广公司排名
  • 网站后台代码如何做网站怎么优化排名
  • 泉州建站模板系统小红书关键词搜索量查询
  • 高端医院网站建设网络媒体
  • wordpress 二级域名附件如何做网站优化
  • 网站域名在哪里申请品牌营销策划十大要点
  • 网站制作方案包括哪些内容正规的推文平台
  • 做域名不做网站可以吗深圳知名seo公司
  • 招聘网站建设人员条件品牌营销策划包括哪些内容
  • 网站域名证书怎么获取友情链接名词解释
  • 太原网站建设价格什么优化
  • 网站制作公司昆明swot分析
  • 个人养老金制度将推网站推广优化网址
  • 寺庙建设网站的意义2024年度关键词
  • 北京网站开发优选ls20227全国唯一一个没有疫情的城市
  • 那个网站做淘宝推广比较好免费二级域名生成网站
  • 网站空间租用费用网站的开发流程
  • 网站建设方面的文章网站快速有排名
  • wish网站应该怎么做淘宝优化标题都是用什么软件
  • 马来西亚做网站开封网站推广公司
  • 网站设计网站制作营销策划方案怎么写?
  • 口碑好网站建设定制百度浏览器app
  • centos6.6做网站网络营销推广手段
  • 厦门专业网站推广建站怎么让百度快速收录网站
  • 网站点击率多少正常企业网站推广方案的策划