Hot For Coding
zsh command not found rvm-prompt

zsh确实是一个非常好用的命令终端,特别是提供的多皮肤样式更容易装逼

但最近zsh老是提示

zsh: command not found: rvm-prompt

这个错误大意是说找不到rvm-prompt,解决这个问题也非常简单,安装rvm-prompt让它找到不就好吗?

curl -sSL https://get.rvm.io | bash

如果你是Mac操作系统的话,记得加sudo

sudo curl -sSL https://get.rvm.io | bash

如果成功安装,那么再此打开命令终端,应该不会再提示zsh: command not found: rvm-prompt之类的了

...

READ ALL

JavaScript中switch匹配容易混淆的一个细节

switch语句与if语句的关系最为密切,也是其它编程语言中普遍使用的一种流程控制语句,但switch的匹配是全等模式,如果不注意这个细节则写程序时往往会出错。

var n = '5';
switch(n){
  case 5:
    console.log('执行case分支');
    break;
  default:
    console.log('执行default分支');
}

// Output: 执行default分支

可能很多人会误以为以上程序会走case分支,结果却走了default分支。难道它们两个不相等吗?我们使用if语句看看。

...

READ ALL

JavaScript巧用length属性增删数组

在JavaScript中可以利用length计算数组元素个数,但length并不是只读的,通过改变length的值可以实现数组的增删功能。

var arr = ['Nicholas Lee', 'www.qttc.net', 'Web技术'];
console.log(arr.length); // Output: 3

声明了一个数组arr,分别给了三个元素。分别是

arr[0] = Nicholas Lee
arr[1] = www.qttc.net
arr[2] = WEB技术

数组arr的length元素值是三个,我们把length的值改成2。

...

READ ALL

JavaScript复制对象误区

如果不了解JavaScript数据类型,那么也许你会以为对象的复制是相互独立的,其实它们都是一个指针,而这个指针指向存储在堆中的一个对象。复制结束后,两个变量实际上将引用同一个对象。因此改变其中一个变量会影响另外一个变量。

普通变量复制,相互独立

也就是变量只是引用,并不是真正的地址

// 声明一个变量str1
var str1 = 'Nicholas Lee';
 
// 将变量str1赋值给str2
var str2 = str1;
 
// 再改变str1的值
str1 = 'www.qttc.net'
 
// 打印str1与str2的结果
console.log('str1:' + str1 + ', str2:' + str2); // Output: str1: www.qttc.net, str2: Nicholas Lee

...

READ ALL

VPS的操作系统选择

在买VPS时,除了价格,机房,性能,带宽以外就是操作系统的选择了,如何选择适合的操作系统呢?这是许多购买VPS的站长面临的一个重要问题,以下我们就谈谈如何选择合适的操作系统。

虽然操作系统多种多样,但归根结底还是以Win平台与Linux平台为两大类别。

Win平台

full

Win平台在国内的VPS提供商里,几乎是每一家都提供的操作系统。由于微软操作系统的普及,使得许多站长在操作Win服务器操作系统的时候也容易上手,配置也快。在Win平台里最有优势的就是使用IIS+asp或者asp.net加SQLServer,全一套都是微软开发的,也只能在Win平台上运行。但这个平台的费用不低,特别是数据库价格更是让许多个人站长望而止步。但目前使用asp.net搭建Web平台的并不多了,除了某些公司的系统以外,特别是个人想使用asp.net的博客系统几乎找不到。

...

READ ALL

JavaScript函数arguments数组获得实际传参数个数

JavaScript与PHP在函数传参方面有点不同,PHP形参与实参个数要匹配,而JavaScript就灵活多了,可以随意传参,实参比形参少或多都不会报错。

实参比形参多不会报错

function say (a) {
  console.log(a); 
}
 
say('琼台博客', 'WEB技术博客'); // Output: 琼台博客

我们再来看看形参比实参多的结果

function say (a, b) {
  console.log('a 的值是 '+a+', b 的值是 '+b); 
}
 
say('琼台博客'); // Output: a 的值是 琼台博客, b 的值是 undefined

...

READ ALL

晒晒我曾经用过的杀毒软件

几乎所有玩电脑的都要接触杀毒软件,在以前的网络环境中杀毒软件是必装的软件之一。U盘autorun.exe文件,熊猫烧香,IE主页被锁广告页等等更是历历在目。每次重装系统后第一件事就是把杀毒软件给装上,感觉给电脑装了杀毒软件就像是加了一层盔甲入侵无门。后来才感觉那时太天真了,病毒从来就不走正门的。

诺顿杀毒

full

诺顿(Norton)是Symantec(赛门铁克)公司出品,国外杀毒软件。当时是我买了联想电脑后自带的,诺顿在业内口碑不错。当时好像是免费试用三个月,三个月后需要再续费才能使用,我那时比较穷所以三个月后就给卸了。现在诺顿貌似一直做的不错,还推出了网络安全特警。

...

READ ALL

Linux系统邮件查看及清空

在操作Linux命令时,时常出现以下这样一句话

You have mail in /var/spool/mail/root

这个是提示有最新的邮件,你可以使用mail命令阅读

-bash-4.1# mail 
Heirloom Mail version 12.4 7/29/08.  Type ? for help.
"/var/spool/mail/root": 383 messages 381 unread
    1 user@localhost.local  Tue Apr 10 20:09 183/7743  "[abrt] full crash report"
    2 user@localhost.local  Tue Apr 10 20:15 183/7730  "[abrt] full crash report"
    3 user@localhost.local  Tue Apr 10 20:20 183/7730  "[abrt] full crash report"
    4 user@localhost.local  Tue Apr 10 20:22 183/7730  "[abrt] full crash report"

...

READ ALL

JavaScript里弹出</script>标记出错解决方法

在JavaScript里弹出</script>会让JavaScript误以为这是一个结束标签,而出现异常。

如以下代码

<script>
alert('</script>');
</script>

我们在<script>块内使用alert弹出</script>字符串,结果被误以为是结束标签,vim还变了颜色。运行结果

full

由于把字符串里的当成了结束标签,所以就出现异常,显然这不是我们想要的结果。我们只需要把代码稍加处理一下即可实现。

<script>
alert('</scr' + 'ipt>');
</script>

...

READ ALL

设置Linux计划任务crontab容易出错的地方

Linux的计划任务可以说是最常用也实用的系统程序了,Linux的计划任务设置也很简单,但稍有不注意就会出错。

如:使用ntpdate命令每天凌晨自动对时,可能会这么写

00 00 * * * ntpdate asia.pool.ntp.org;

但这么写是出错的,你可能百思不得其解,在命令状态下执行看下结果

-bash-4.1# ntpdate asia.pool.ntp.org
25 Jul 14:00:21 ntpdate[5815]: step time server 212.26.18.43 offset 19.175301 sec

...

READ ALL

1 2 3 4