这里我将列出使用Linuxvps过程中的常用命令,面向的对象是懂一点命令行的朋友,如果你没有任何命令行基础,建议找本Linux的基础教程来看看。

基本常识:

在讲具体的命令之前,先介绍一下Linux命令行的一些常识:

一条命令一般的格式是这样的:命令名称 [参数] [路径],[]代表可以省略,省略路径表示适用当前路径。

路径有相对路径和绝对路径两种,绝对路径是以根目录(“/”)为起点的,如/home/shine代表根目录下面home目录中的shine子目录,相对路径指的是以当前路径起点的路径,如当前路径为/home,shine/doc代表的绝对路径是/home/shine/doc,“.”代表当前目录,“..”代表上一级目录,例如前一个例子中使用./shine/doc效果是一样的。“~”代表的是当前用户的主目录,如果当前是以shine这个用户登录的,则~/doc也可以达到上面的效果。

如果你不知道一个命令怎么用,可以使用man这个命令来查阅,但一般我们只是记不清命令的具体参数,只要在命令名后加--help就可以了,如ls --help。

命令运行过程中如果想退出却不知道怎么做,一般应该可以尝试Ctrl+C、Ctrl+D、exit、logout、quit。

cd 改变路径,例如cd /可以把路径切换到根目录下,用户登录后的默认路径为自己的用户目录,使用过程中也可以通过cd或者cd ~回到用户目录。
ls 显示指定目录下的文件和目录,ls -a可以显示包括隐藏文件在内的所有内容,ls -l为列表显示。
su 切换到root身份登录
logout 注销
mkdir 新建目录,默认指定的路径中有不存在的父目录会出错,使用-p参数即可。
rm 删除文件,默认不能删除目录,使用-r参数可以递归删除目录及其内容。
mv 移动文件
cp 复制文件,默认不能复制目录,使用-参数可以复制目录及目录内的所有项目。
cat 显示文件内容
echo 回显输入的内容,可以用来显示一些环境变量的值,如echo $PATH
ln 建立链接,有软链接和硬链接之分,一般用-s建立软链接。
tar 打包程序,配上一些参数可以实现压缩/解压功能,一般我们在使用VPS中解压用得比较多,使用参数-xvf解压*.tar文件,使用-xzvf解压*.tar.gz,使用-xjvf解压*.tar.bz2,如果需要解压*.zip或者*.rar文件,需要安装相应的压缩软件,用unzip和 unrar命令解压。
df -h 查看硬盘使用情况
du -sh 查看该目录或文件的大小
top 查看进程状态,这里有一篇介绍。
free 参看内存状态
chmod 改变文件权限
chown 改变文件的所有者和所有组
yum CentOS/Fedora中的软件包管理器,在Ubuntu/Debian中使用的是apt软件包管理器。
nano/vi 文本编辑器,vi的基本入门可以看这里,不再详述。
其他常用命令还有sort、find、make、adduser、passwd、pwd、who、whoami、grep、less、export等等。

设置777 批量

chmod -R 777 目录名

设置www 批量

chmod -R www 目录名
chmod www -R 目录名

修改/home/wwwroot/里所有文件的拥有者为www,所属群组也为www

chown -R www:www *

进入该目录

cd /home/wwwroot
chown -R www:www * 

-R递归处理所有文件和文件夹,第一个www为文件拥有者名称,第二个www为所属群组。#“*”号表示所有文件和文件夹

如果你装了军哥的LNMP,VPS里面域名很多,只要备份/usr/local/nginx/conf/vhost目录里面的配置文件,
重装系统后再上传。如果想删除绑定,只要删除这个文件。再重新载入一下配置就可以了:

/root/lnmp reload

目录操作:

rm -rf mydir /*删除mydir目录,不需要确认,直接删除*/
mkdir dirname /*创建名为dirname的目录*/
cd mydir /*进入mydir目录*/
cd - /*返回进入此目录之前所在的目录*/
cd .. /*返回上一级目录,中间有空格*/
cd ~ /*回当前用户家目录*/
mv tools tool /*把tools目录改名为tool */
ln -s tool bac /*给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了*/
cp -a tool /home/vpser/www /*把tool目录,复制到www目录下 */
ls /* 列出当前目录下的内容 */

文件操作:

rm go.tar        /* 删除go.tar文件 */
find mt.cgi    /* 查找文件名为mt.cgi的文件 */
df -h              /* 查看磁盘剩余空间 */

文件权限:

chmod 755 /home/wwwroot/a.php  /* 给a.php赋予755权限,如果是目录需要加上 -R 参数 */
chown www:www /home/wwwroot/a.php /* 给a.php更改文件属主属组为www,如果是目录需要加上 -R 参数 */

解压缩:

tar xvf wordpress.tar       /* 解压tar格式的文件 */
tar tvf myfile.tar     /* 查看tar文件中包含的文件 */

tar cf toole.tar tool /* 把tool目录打包为toole.tar文件 */
tar zcf vpser.tar.gz tool /* 把tool目录打包且压缩为vpser.tar.gz文件,因为.tar文件几乎是没有压缩过的 */

tar jcvf  /var/bak/www.tar.bz2 /var/www/    /*创建.tar.bz2文件,压缩率高*/
tar xjf www.tar.bz2 /*解压tar.bz2格式*/

gzip -d ge.tar.gz        /* 解压.tar.gz文件为.tar文件 */
unzip phpbb.zip      /* 解压zip文件,windows下要压缩出一个.tar.gz格式的文件还是有点麻烦的 */

zip -r vpser.zip   vpser  /* 把vpser目录打包为vpser.zip压缩文件 */

下载:

wget http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
/*下载远程服务器上的文件到自己的服务器,连上传都省了,服务器不是100M就是1000M的带宽,下载一个2-3兆的MT还不是几十秒的事 */
wget -c http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
/* 继续下载上次未下载完的文件 */

进程管理:

ps -aux   /*ps 进程状态查询命令*/

ps命令输出字段的含义:

[list] [*]USER,进程所有者的用户名。
[*]PID,进程号,可以唯一标识该进程。
[*]%CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。
[*]%MEM,进程使用内存的百分比。
[*]VSZ,进程使用的虚拟内存大小,以K为单位。
[*]RSS,进程占用的物理内存的总数量,以K为单位。
[*]TTY,进程相关的终端名。
[*]STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。
[*]START,进程开始运行时间。
[*]TIME,进程使用的总CPU时间。
[*]COMMAND,被执行的命令行。
[/list]

ps -aux | grep nginx  /*在所有进程中,查找nginx的进程*/
kill 1234    /*1234为进程ID,即ps -aux 中的PID*/
killall nginx /*killall 通过程序的名字,直接杀死所有进程,nginx为进程名*/

资源占用查询:

du -sh /home/wwwroot/* /* 查看/home/wwwroot/下各个目录的占用大小 */
free -m /* 查看内存核swap使用情况 */
top /* 查看程序的cpu、内存使用情况 */
netstat -ntl /* 查看端口占用情况 */

用户管理:

adduser /*添加用户,如adduser vpser */
deluser /*删除用户,如deluser vpser */
passwd /*修改密码,按提示输入密码,密码不显示*/

移动类的:

h/j/k/l: 左/下/上/右 移一格
w : 向后词移动 (前面加数字移动多少个词)
b : 向前词移动 (前面加数字移动多少个词)
e : 向后移到词末
ge : 向前移到词末
$ <End> : 行末
0 <Home> : 行首
tx : 向右查找本行的x并移到那儿(大写时向左)
33G : 移到文件的第33行
gg : 文件首行
G : 文件尾行
33% : 文件的33%处
H/M/L : 屏幕的首/中/尾行
zt/zz/zb : 当前行移到屏幕的首/中/底部

跳转:

"  : 回到跳转来的地方
CTRL-O : 跳到一个 “较老” 的地方
CTRL-I <Tab> : 则跳到一个 “较新” 的地方

查找:

/ : 向下查找(后加关键字)
? : 向上查找(后加关键字)
n : 下一条符合的记录

编辑:

i : 转换到插入模式
x : 删除当前字符
. : 重复最后一次的修改操作(同PS里ctrl+f执行滤镜)
u : 撤销操作
CTRL-R : 重做
p : 将删除的字符插入到当前位置(put)

退出保存:

:q : 退出
:q! : 不保存退出
ZZ : 保存后退出
:e! : 放弃修改重新编辑

掌握这些基本命令,Linux下的基本使用已经掌握,只要多加练习,多遇到问题,解决问题,能力就会不断的提升。