Linux系统开发之路 - 下

 5、Ubuntu安装好之后,就可以进行开发环境的搭建。(坚持看完有彩蛋,(>--..--<).jpg)。

  1)首先安装Nodejs和Npm。

   打开浏览器输入nodejs.org,进入页面会提示下载,如下图,选择LTS(Long Term Support,长期支持版)版本,点击下载;

        

 

  2)下载完成后,打开文件管理,在Download目录下将会看到下载的压缩包,如下图(另一个压缩包是Linux的输入法,推荐使用搜狗);

       

  直接邮件选择解压到当前目录即可,如下图,

       

  解压完,进入bin目录,将会看到node、npm、npx三个文件如下,

       

  这时,右键打开命令行工具,

  

  在新开的Terminal窗口输入,node -v将会看到当前nodejs包的版本号,输入npm -v也可以看到对应的版本号;注意,此时还并未完成nodejs和npm的配置,即并未完成安装过程,因为当前Terminal仅在该文件夹起作用,如果Terminal不是在该文件夹打开的,即会报错。

  进行到上一步,说明解压的node包没有问题,接下来要做的,就是让node指令全局生效,即相当于Windows下配置环境变量的概念,Linux里面也需要配置才能使用,Linux里面称建立软连接,具体操作如下:

  a)Terminal下输入:ln -s ~Downloads/node-v10.15.3-linux-x64/bin/node /user/local/bin,回车即完成node软连接的建立;

  b)Terminal下输入:ln -s ~Downloads/node-v10.15.3-linux-x64/bin/npm /user/local/bin,回车即完成npm软连接的建立;

  c)Terminal下输入:ln -s ~Downloads/node-v10.15.3-linux-x64/bin/npx /user/local/bin,回车即完成npx软连接的建立;

   完成以上3步,即完成nodejs环境的安装,打开新的Terminal(注意启动位置与之前的不一致,以测试安装是否有效),输入node -v如果安装成功,则会提示node的版本号,一次测试npm和npx,查看是否有效。

 

6、以上安装若有问题的同学,可看此步骤,使用Ubuntu自带的apt包管理工具进行安装(>-..-<),只需打开Terminal,输入sudo apt-get install nodejs,在提示下输入用户密码(注意,密码输入为隐式输入),在提示下输入y,等待下载完成即可使用,是不是比上面的手动配置要简单很多(手动滑稽.jpg)。

 

参考:

  《Linux系统分类》 -  https://www.cnblogs.com/wzqstudy/p/10193798.html

转载于:https://www.cnblogs.com/Westin-Chen/p/10548986.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/425229.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第8篇]交互式的定义如何帮助计算和IP类问题是什么

这是系列中的第8篇&#xff0c;我们主要讨论计算中交互作用的用处和IP类问题是什么. 什么是证明 经典的证明 交互式证明系统 [1] http://dl.acm.org/citation.cfm?id63434 [2] http://www.amazon.co.uk/Introduction-Theory-Computation-Michael-Sipser/dp/0619217642 [3] h…

线段树之扫描线思路

运用线段树扫描线方式可以解决经典的求矩形面积交问题以HDU_1542 Atlantis 题为例 线段树和扫描线是这么结合的线段树统计的是有效区间段的长度 也就是扫描线 当前扫描到的区间段是哪一个 什么意思 比如当前在哪一个段扫描 那么线段树中的t[1]中的len就是多长 线段树一般…

74 param动作

定义一个logind的jsp <% page language"java" import"java.util.*" contentType"text/html; charsetutf-8"%><!DOCTYPE html> <html> <head> <meta charset"ISO-8859-1"> <title>Insert title h…

Unknown column 'user_uid' in 'field list' sql错误解决过程

在idea中运行一直有错&#xff0c;找了好多个地方都找不到&#xff0c;以为是我的字段名字写错了&#xff0c;然而都是对的。 把错误的这个字段删了再打一遍就好了&#xff0c; 转载于:https://www.cnblogs.com/zxrxzw/p/10630164.html

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第9篇]香农对熵和信息的定义是什么?

这是计算机理论的最后一篇.我们讨论信息理论的基础概念,什么是香农定义的熵和信息. 熵 熵与确定性成反比 信息 密码学实例 [1] Thomas M. Cover and Joy A. Thomas. Elements of Information Theory ​ 2nd Edition. Wiley-Interscience, 2 edition, July 2006. [2] S. Vaj…

数据结构:(5)算法分析基础

算法时间复杂度分析 算法空间复杂度分析

蠢货别忘(一)common lisp funcall

自定义 cons&#xff0c;car&#xff0c;cdr Scheme 示例&#xff1a; (define (my_cons x y) (lambda (z) (z x y))) (define (my_car m) (m (lambda (p q) p))) (define (my_cdr m) (m (lambda (p q) p))) Common Lisp&#xff1a; (defun my_cons (x y) (lambda (z) (funcal…

[Leetcode][第35题][JAVA][搜索插入位置][二分法]

【问题描述】[中等] 【解答思路】 二分法 时间复杂度&#xff1a;O(LogN) 空间复杂度&#xff1a;O(1) public class Solution {public int searchInsert(int[] nums, int target) {int len nums.length;if (len 0) {return 0;}// 特判if (nums[len - 1] < target) {re…

数据结构:(6)其他情况的算法分析

最好&#xff0c;最坏,平均复杂度分析 递归算法的时间复杂度分析

树状数组的区间修改+查询

首先看树状数组是用来求前缀和比较方便的一种数据结构 sum[i] Sigma a[i] Sum(bit[x]&#xff09; 而区间修改也不难实现 就是引入一个差分数组del del[i]表示对i~n的修改 这样的话也就是最del[i]求前缀和 就能得到i~n的所有修改了 因为i前的每一个元素的修改都是对后面…

scrapy爬虫系列之五--CrawlSpider的使用

功能点&#xff1a;CrawlSpider的基本使用 爬取网站&#xff1a;保监会 主要代码&#xff1a; cf.py # -*- coding: utf-8 -*- import scrapy from scrapy.linkextractors import LinkExtractor from scrapy.spiders import CrawlSpider, Rule import reclass CfSpider(CrawlSp…

洛谷P4718 【模板】Pollard-Rho算法

虽然很久以前就听说过PR算法&#xff0c;但前几天第一次打。 首先miller rabin判断素数&#xff0c;不在复杂度瓶颈。 pollard rho倍增环长&#xff0c;复杂度是\(O(n^{\frac{1}{4}} log n)\)的。 然而这样复杂度较高&#xff0c;比较难过加强后的数据。 可以考虑每次倍增时把乘…

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第10篇]RSA和强RSA问题有什么区别

这个密码学52件事数学知识的第一篇,也是整个系列的第10篇.这篇介绍了RSA问题和Strong-RSA问题,指出了这两种问题的不同之处. 密码学严重依赖于这样的假设,某些数学问题难以在有限的时间内解决.让我们看公钥(非对称)密码学,这也是这篇文章中我们使用的一个假设----**单向函数(O…

Palindrome subsequence HDU - 4632 区间dp|记忆化搜索

// 区间dpimport java.util.Scanner;/**** author CN*/ public class main {static int mod 10007;static String l;static int[][] dp new int[1010][1010];public static void main(String[] args){// TODO code application logic hereint t;Scanner sc new Scanner(Syst…

课外阅读(通讯技术的发展史)

课外阅读&#xff08;通讯技术的发展史&#xff09; 人们常把有线固定通信和无线移动通信作为信息基础结构&#xff08;NII/GII&#xff09;的两大组成部分。近年来它们都以明显的快速步伐向前推进&#xff0c;而且进入新世纪后将更加快速发展&#xff0c;为兴旺的信息时代作出…

python学习第19天

pass 转载于:https://www.cnblogs.com/heimajia/p/10636469.html

第十三期:你所了解的javascript?

在介绍JavaScript之前&#xff0c;首先让我们来简单了解一下脚本语言。大家知道&#xff0c;HTML通常用于格式化和链接文本&#xff0c;各种编程语言通常用于向机器发出一系列复杂的指令&#xff0c;而脚本语言是介于HTML和C、Java等编程语言之间的语言。脚本语言是一种简单的语…

[密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第12篇]椭圆曲线上的群理论是什么

这是系列中的第12篇,我们继续数学背景的部分,通过介绍椭圆曲线的群理论… 椭圆曲线群定律是一种在一组椭圆曲线有理点中定义的二元操作来形成一个群的方法.现在,让我们看看到底什么意思,和这个东西怎么用 椭圆曲线和它的有理点 在椭圆曲线中加入群理论 这就是全部了吗 这和密…

python学习第22天

封装 properpty classmathod staticmathod 转载于:https://www.cnblogs.com/heimajia/p/10636515.html