root 当前登录用户
linux中管理员用户 root
localhost主机名
~ 当前所在位置
root /root
普通用户 /home/hank
/ 根目录
# 管理员用户的提示符
$ 普通用户提示符
-a 简化
--all 完整
命令补全
cd; cd ~:回到家目录
cd -:回到刚刚的目录
cd /:跟目录
显示当前所在的目录:pwd [-p:连结档?]
建新目录:mkdir -p test1/test2:帮助建立多层目录 p:会自动建立上层目录
删空目录:rmdir -p test1/test2: p:上层目录为空,会一并删除
只能删除空目录,很少用,一般用rm
ls
-a 显示隐藏文件
-l 显示详细信息
-l 详细信息 简写 ll
权限10位
1:文件类型
- 文件
d 目录
l 软连接
所有组 所属组 其他人
-h 人类能看懂的大小
可以加参数
-a 显示所有的,包含隐藏文件
-d 查看目录本身,而不是目录的内容 directory
-i 显示inode
cp
-r 复制目录
路径有文件名,则为改名复制
复制到当前目录 cp target .
最佳实践:cp -a
rm
-r 删除目录
-f 强制 force
最佳实践:rm -rf name
删了不能回复
mv
剪切
目录和文件 都不需要 -r
源文件和目标文件在同一目录,是改名功能。
touch a.js
创建空文件
basename:文件名
dirname:目录名
cat:-b,列出行号 -n:空白行也有行号
vim:模式:命令,插入,编辑;用ESC/i/:切换
命令模式下::q 退出; :q! 强制退出; :wq 保存退出; :set number 显示行号
清空文件夹的内容 rm -rf *(在该文件夹下)
linux下修改文件名 mv name1 name2
linux下解压rar rar x panda.rar
linux下安装方式有yum和apt-get,yum是过时的,现在用apt-get比较方便
linux上传和下载 rz:上传;sz:下载。
查看端口占用情况:http://www.cnblogs.com/benio/archive/2010/09/15/1826728.html
man:info比man更详细,他除了有每一个选项的解释之外还有例子、但是平时用的最多的是man,比较实用,Info有时候有点太繁琐了; --help更简单
获取命令的帮助 退出:q 例子:man ls 查看有多少同名的手册:man -f ls 查看特定的手册:man 1 ls,1 是手册的名字
mac fn+<- 行头;fn+->行尾
tab
未输入状态下,两次tab,列出所有可用命令 已输入部分命令名或文件名,按 Tab 进行自动补全
cd
绝对路径和相对路径:假设当前家目录有etc 文件夹(绝对路径应为 /home/username/etc),如果直接 cd etc 则进入此文件夹,但若是 cd /etc/ 则是进入系统 etc .当前目录;..上级目录
ls
a:隐藏文件 l:详细信息 h:可读大小
.开头的都是隐藏文件
mkdir:mkdir -p folder/subfolder ### -p 参数为当父目录存在时忽略,若不存在则建立,用此参数可建立多级文件夹
rm
rm -i filename ### 删除 filename 前提示,若多个文件则每次提示 rm -rf folder/subfolder/ ### 递归删除 subfolder 下所有文件及文件夹,包括 subfolder 自身 rm -d folder ### 删除空文件夹 i:增加提示信息
cp
cp folder/* dest ### 将 folder 下所有文件(不含子文件夹中的文件)复制到 dest cp -r folder dest ### 将 folder 下所有文件(包含子文件夹中的所有文件)复制到 dest
mv
mv /usr/lib/* /001 是将 /usr/lib/下所有的东西移到/001/中。 mv /usr/lib/ /001 是将lib和其内部的所有东西移到/001/中。 此后,/usr里不再有lib; /001里有lib/及其原有的东西。 mv source folder ### 将 source 移动到 folder 下,完成后则为 folder/source mv -i source folder ### 在移动时,若文件已存在则提示 **是否覆盖** mv source dest ### 在 dest 不为目录的前提下,重命名 source 为 dest
cat
n:显示行号
more
more 与 cat 相似,都可以查看文件内容,所不同的是,当一个文档太长时, cat 只能展示最后布满屏幕的内容,前面的内容是不可见的。这时候可用 more 逐行显示内容。 more +100 /etc/locale.gen ### 从 100 行开始显示
less:less
支持上下滚动查看内容,而 more
只支持逐行显示
nano
是一个简单实用的文本编辑器, vim更好用些。
grep:返回匹配的项目
grep as my.cnf:返回my.cnf中包含as的行
chown:改变文件的所有者
chmod
永远更改一个文件的权限,主要有 读取 、 写入 、 执行 ,三种权限,其中 所有者 、 用户组 、 其他 各占三个 chmod +x filename ### 为 user ,group ,others 添加执行权限 chmod -x filename ### 取消 user , group ,others 的执行权限 chmod +w filename ### 为 user 添加写入权限 chmod ugo=rwx filename ### 设置 user ,group ,others 具有 读取、写入、执行权限 chmod ug=rw filename ### 设置 user ,group 添加 读取、写入权限 chmod ugo=--- filename ### 取消所有权限
#
### '$' 和 '#' 的区别在于 '$' 普通用户即可执行 ### 而 '#' 为 root 用户才可执行,或普通用户使用 'sudo'
find:用于查找文件,但更为强大,支持正则,并且可将查找结果传递到其他命令
$ find . -name PATTERN ### 从当前目录查找符合 PATTERN 的文件 $ find /home -name PATTERN -exec ls -l {} ; # 从 /home 文件查找所有符合 PATTERN 的文件,并交由 ls 输出详细信息
ubuntu apt-get 是包管理器
vim 到一个路径
:quit :q
创建与删除
创建文件用touch 例如:touch 1.txt 删除文件用rm 例如:rm -f 1.txt 创建目录用mkdir 例如:mkdir daiyuanqi 删除空目录用rmdir 例如:rmdir daiyuanqi (有东西的目录不能删) 删除装有东西的目录就用rm -rf 例如rm -rf XXX
还可以换成国内的软件源
tar:用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的
zip,rar在windows和linux都可以用,但是在linux下用的比较少;
打包:将很多文件合成一个总的文件;
压缩:将总的文件压缩。因为linux很多压缩方法 只能压缩一个文件
打包,压缩,打包和压缩
打包:tar -cf all.tar *.jpg 压缩gzip:gzip -d all.gz 解压gunzip: gunzip all.gz 压缩bzip2: bzip2 -d all.bz2 解压bunzip2: bunzip2 all.bz2 打包压缩:tar -czf all.tar.gz *.jpg 也可以all.tgz 打包压缩:tar -czf all.tar.bz2 *.jpg
root 权限: su
切换回hdpc: su hdpc
ln -s /var/node/bin/node /usr/local/bin/node
ln -s /var/node/bin/npm /usr/local/bin/npm
echo $PATH 查看单个环境变量
env 查看所有的环境变量
=======在linux上安装nodejs===========
centos
包管理工具 yum
yum install node 没法安装想要的版本
yum remove node 卸载
ubuntu
包管理工具 apt-get
apt-get install node node命令不好使,nodejs命令可以用
源码(node-v0.12.0.tar.gz),需要自己手动编译
1、yum -y install make gcc gcc-c++ 有可能需要
2、wget -c http://nodejs.org/dist/v0.12.0/node-v0.12.0.tar.gz 或者从网上下载
3、tar -zxvf node-v0.8.14.tar.gz
4、mv node-v0.8.14.tar.gz node 重命名
5、cd node
6、./configure
7、make && make install
在服务器上访问网站
curl http://localhost:3000
编译后的文件(node-v0.12.0-linux-x64.tar.gz)
1、tar -zxvf node-v0.8.14.tar.gz
2、mv node-v0.8.14.tar.gz node 重命名
3、ln -s /usr/local/nodejs/bin/node /usr/local/bin 第一个为nodejs安装的路径
4、ln -s /usr/local/nodejs/bin/npm /usr/local/bin 注意路径 rm -rf "name"
5、设置环境变量
vi /etc/profile 最下面添加
export NODE_HOME=/usr/local/node/0.10.24
export PATH=$NODE_HOME/bin:$PATH
:wq
source /etc/profile 使配置生效