这里我将列出使用Linux过程中的常用命令,面向的对象是懂一点命令行的朋友,如果你没有任何命令行基础,建议找本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目录*/
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目录下 */
三、文件操作:
rm go.tar /* 删除go.tar文件 */
find mt.cgi /* 查找文件名为mt.cgi的文件 */
df –h /* 查看磁盘剩余空间,好像没这个必要,除非你太那个了 */
解压缩:
tar xvf wordpress.tar /* 解压tar格式的文件 */
tar -tvf myfile.tar /* 查看tar文件中包含的文件 */
tar cf toole.tar tool /* 把tool目录打包为toole.tar文件 */
tar cfz vpser.tar.gz tool /* 把tool目录打包且压缩为vpser.tar.gz文件,因为.tar文件几乎是没有压缩过的,MT的.tar.gz文件解压成.tar文件后差不多是10MB */
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格式的文件还是有点麻烦的 */
下载:
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命令输出字段的含义:
USER,进程所有者的用户名。
PID,进程号,可以唯一标识该进程。
%CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。
%MEM,进程使用内存的百分比。
VSZ,进程使用的虚拟内存大小,以K为单位。
RSS,进程占用的物理内存的总数量,以K为单位。
TTY,进程相关的终端名。
STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。
START,进程开始运行时间。
TIME,进程使用的总CPU时间。
COMMAND,被执行的命令行。
ps -aux | grep nginx /*在所有进程中,查找nginx的进程*/
kill 1234 /*1234为进程ID,即ps -aux 中的PID*/
killall nginx /*killall 通过程序的名字,直接杀死所有进程,nginx为进程名*/
五、Vim操作:
移动类的:
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下的基本使用已经掌握,只要多加练习,多遇到问题,解决问题,能力就会不断的提升。
发表评论