目录:
1.BasicInstructions/基本
2.wget/下载工具
3.Crontab/定时任务
4.tar/tar.gz/压缩文件
5.vi/编辑器
cd[目录名]转换路径
cd.. 返回上级目录
ls显示当前目录下所有文件
rm[-r]-f[][文件名]删除文件,加[-r]可以删除文件下所有子文件,如rm -rf [abc]删除abc文件夹及文件夹下的所有文件
tar -xzf [解压下载的压缩包]
unzip[文件名]解压文件
cp -rpf .A/* B 将A文件夹中的所有文件拷贝到其上级目录B中
wget(没用过,据说是最实用的一个,否则那200G估计每天不掉线才有可能用完)
1.BasicInstructions基本操作命令
通常来说,使用”$[Instructions]–help”可以获得以下各个命令[instructions]的帮助,包含其参
数列表的定义。
-ls列出当前文件夹下所有内容
$ls-o列出当前文件夹中所有内容,含详细信息,但不列出group
$ls-l同上,含group信息
$ls-a列出当前文件夹中所有内容,包含以”.”开头的文件
$ls-t按更改时间排序
$ls-v按版本
-cd [dir] 进入文件夹
cd.. 退出当前文件夹,返回上级目录
-pwd 显示当前路径
-mkdir [dir] 新建文件夹
-chmod更改文件/文件夹权限
$chmod [Mode] [dir],其中Mode形如”755″或”777″等。
$chmod [Mode] [file]
$chmod -R [Mode] [dir],递归形式,即将目标文件夹内所有文件均改变权限
Mode还有另一种表达方式,”755″即为”-rwxr-xr-x”,不列举了。
-rm [file]删除文件/文件夹
$rm-f [file]强行删除,忽略不存在的文件,无提示
$rm-r [file]递归删除所有内容
$rm -rf 删除文件夹
-cp拷贝
$cp [options] [source] [destination]
其中[options]可以为-f(强行拷贝)或-r(递归拷贝)
-mv重命名或移动
$mv[options][source][destination]
[options]常用:-f(强行移动/重命名),-i(移动/重命名前尝试),-u(更新)
例如
$mvwwwroot/cgi-bin.将/cgi-bin目录移动到当前目录下
$mvcronfile.txtmyfile.txt将cronfile.txt重命名为myfile.txt
cp -rpf .A/* B 将A文件夹中的所有文件拷贝到其上级目录B中
2.wget下载工具
wget是一种非交互式的网络文件下载工具,在linux下可以使用该工具快速地从网络上下载
所需要的文件而不需要经由本
wget[参数列表]URL
最简单的用法:
$wget http://dupola.com/file.tar
wget的常用参数:-t[nuberoftimes]:尝试次数,当wget无法与服务器建立连接时,尝试连接多少次。比
如”-t120″表示尝试120次。当这一项为”0″的时候,指定尝试无穷多次直到连接成功为止,
这个设置非常有用,当对方服务器突然关机或者网络突然中断的时候,可以在恢复正常后继
续下载没
有传完的文件;-c:断点续传,这也是个非常有用的设置,特别当下载比较大的文件的时候,如果中途意外中断,那么连接恢复的时候会从上
次没传完的地方接着传,而不是又从头开始,使用这一项需要远程服务器也支持断点续传,一般UNIX/linux的Web/FTP服务器都支
持断点续传;-T[numberofseconds]:超时时间,指定多长时间远程服务器没有响应就中断连接,开始
下一次尝试。比如”-T120″表示如果120秒以后远程服务器没有发过来数据,就重新尝试连
接。如果网络速度比较快,这个时间可以设置的短些,相反,可以设置的长一些,一般最多
不超过900,通常也不少于60,一般120左右比较合适;-w[numberofseconds]:在两次尝试之间等待多少秒,比如”-w100″表示两次尝试之间等
待100秒;-nd:不下载目录结构,把从服务器所有指定目录下载的文件都堆到当前目录里;-x:与”-nd”设置刚好相反,创建完整的目录结构,
例如”wget-ndhttp://www.gnu.org/”,
实际的目录结构一级一级建下去,直到所有的文件都传完为止;-nH:不创建以目标主机域名为目录名的目录,将目标主机的目录结构直接下到
当前目录
下;-r:递归下载,在本录结构;-l[depth]:下载远程服务器目录结构的深度,例如”-l5″下载目录深度小于或者等于5以
内的目录结构或者文件;
-m:做站点镜像时的选项,如果你想做一个站点的镜像,使用这个选项,它将自动设定
其他合适的选项以便于站点镜像;-np:只下载目标站点指定目录及其子目录的内容。这也是一个非常有用的选项,我们假
设某个人的个人主页里面有一个指向这个站点其他人个人主页的连接,而我们只想下载这个
人的个人主页,如果不设置这个选项,甚至–有可能把整个站点给抓下来,这显然是我们通
常不希望的;–http-user=username–http-passwd=password:如果Web服务器需要指定用户名和口令,用这两项来设定;-O将数据写入文件中。
3.Crontab定时执行任务
在DreamHost系统下,通过Shell可以建立自己的crontab.具体使用如下:
使用支持shell登录的终端(如fterm或putty),地址栏输入username@qiran.org:22即可以SSH
方式登录至服务器.
常用的crontab命令:
crontab-l显示所有现存cronjob.
crontab-r删除当前cronjobs.
crontab-e编辑当前”crontabfile”.DH推荐使用nano
注意你的crontab包含所有的cronjobs,每个cron一行,断行结尾.一个正常的cron如下所
示:
452***/home/user/script.pl
第一个数字是每小时的第几分钟,
第二个数字是每天的第几小时,
第三个数字是每月的第几天,
第四个数字是每年的第几月,
第五个数字是每周的第几天.
使用方式例如:
32 * * * * : 表示每小时的第32分钟.
12,42 * * * * : 表示每小时的第12及第42分钟两次
*/15 */2 * * *: 表示0:00, 0:15, 0:30, 0:45, 2:00, 2:15, 2:30, …
43 18 * * 7: 表示每个周日的6:43pm运行命令行.
在DreamHost下使用nano编辑完文件后,使用ctrl+o保存,ctrl+x退出编辑。
4.tar命令
tar命令的使用方法如下:
tar[参数列表][文件名]
参数列表:
-c生成新的备份,并同时覆盖旧的备份文件
-x从备份文件中解压缩
-t列出备份文件内的文件目录
-v显示所有被操作文件列表
-f在指定位置生成备份
-u将不存在于备份中的文件,或将已经被更改的文件加入该备份中。
举例说明:
tar cvf filename.tar /*制作备份*/
tar cvf tarfile.tar ./filename /*将filename的文件备份到tarfile.tar里面*/
tar tvf filename.tar /*列出tar文档的内容*/
tar xvf filename.tar /*从tar文档中导出文件*/
tar zxpvf filename.tar.gz /*从tar.gz文档中导出文件*/
tar zxvf filename.tar.gz /*同上*/
tar xvf tarfile.tar ./filename /*导出tar文件中的单个文件*/
tar -xzf filename.tar.gz 解压
5.vi编辑器
Linux下很易用的一种编辑器,只需要稍微知道几个指令即可应用。
打开vi:
$vi [filename]:打开或新建文件,并将光标置于第一行首
$vi +n [filename] :打开文件,并将光标置于第n行首
$vi + [filename] :打开文件,并将光标置于最后一行首
$vi +/pattern [filename]:打开文件,并将光标置于第一个与pattern匹配的串处
$vi -r [filename] :在上次正用vi编辑时发生系统崩溃,恢复filename
$vi [filename]….[filename] :打开多个文件,依次编辑
如果filename不存在,则自动生成一个名字filename的新文件。
vi共有两种状态:命令状态/编辑状态
编辑状态下:
第次按下insert键为”insert”模式,再按一下为”replace”模式,使用ESC返回命令状态;
在此状态下键盘的PgUp/PgDn/Insert/Delete/Home/End/方向键,均处于正常功能状态。
命令状态下:
输入的字符串作为命令处理,使用”insert”键切换到编辑状态;
以下是命令状态下的命令清单:
移动光标类命令
h :光标左移一个字符
l :光标右移一个字符
space:光标右移一个字符
Backspace:光标左移一个字符
k或Ctrl+p:光标上移一行
j或Ctrl+n :光标下移一行
Enter :光标下移一行
w或W :光标右移一个字至字首
b或B :光标左移一个字至字首
e或E :光标右移一个字j至字尾
) :光标移至句尾
( :光标移至句首
}:光标移至段落开头
{:光标移至段落结尾
nG:光标移至第n行首
n+:光标下移n行
n-:光标上移n行
n$:光标移至第n行尾
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行
0:(注意是数字零)光标移至当前行首
$:光标移至当前行尾
屏幕翻滚类命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令
i :在光标前
I :在当前行首
a:光标后
A:在当前行尾
o:在当前行之下新开一行
O:在当前行之上新开一行
r:替换当前字符
R:替换当前字符及其后的字符,直至按ESC键
s:从当前光标位置处开始,以输入的文本替代指定数目的字符
S:删除指定数目的行,并以所输入文本代替之
ncw或nCW:修改指定数目的字
nCC:修改指定数目的行
删除命令
ndw或ndW:删除光标处开始及其后的n-1个字
do:删至行首
d$:删至行尾
ndd:删除当前行及其后n-1行
x或X:删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u:删除输入方式下所输入的文本
搜索及替换命令 :
/pattern:从光标开始处向文件尾搜索pattern
?pattern:从光标开始处向文件首搜索pattern
n:在同一方向重复上一次搜索命令
N:在反方向上重复上一次搜索命令
:s/p1/p2/g:将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:将文件中所有p1均用p2替换
选项设置
all:列出所有选项设置情况
term:设置终端类型
ignorance:在搜索中忽略大小写
list:显示制表位(Ctrl+I)和行尾标志($)
number:显示行号
report:显示由面向行的命令修改过的数目
terse:显示简短的警告信息
warn:在转到别的文件时若没保存当前文件则显示NO write信息
nomagic:允许在搜索模式中,使用前面不带”/”的特殊字符
nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始
mesg:允许vi显示其他用户用write写到自己终端上的信息
最后行方式命令
:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d :将n1行到n2行之间的内容删除
:w :保存当前文件
:e filename:打开文件filename进行编辑
:x:保存当前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:执行shell命令command
:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入
:r!command:将命令command的输出结果放到当前行 。
到现在为止,你已经成功登录SSH了!你可以输入help来查看帮助,输入ls查看你的目录情况,etc.
退出SSH,输入:
exit
会出现提示:
logout
Connection to 208.113.155.137 closed.
----------------------------
MySQL相关
----------------------------
update:登录SSH后才可操作MySQL!
登录MySQL,输入:
mysql -u username -p -h 208.113.129.128
username替代为你的帐号;出现下面这个提示后输入密码:
Enter password:
接着,登录mysql数据库成功,出现下面提示:
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 3602 to server version: 5.0.18-standard-log
Type ‘help;’ or ‘/h’ for help. Type ‘/c’ to clear the buffer.
查看你的数据库:
show databases;
查看表结构:
desc tablename;
//主键
alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);
//增加一个新列
alter table t2 add d timestamp; alter table infos add ex tinyint not null default '0';
//删除列
alter table t2 drop column c;
//重命名列
alter table t1 change a b integer;
//改变列的类型
alter table t1 change b b bigint not null; alter table infos change list list tinyint not null default '0';
//重命名表
alter table t1 rename t2;
加索引
mysql> alter table tablename change depno depno int(5) not null; mysql> alter table tablename add index 索引名 (字段名1[,字段名2 …]); mysql> alter table tablename add index emp_name (name);
加主关键字的索引
mysql> alter table tablename add primary key(id);
加唯一限制条件的索引
mysql> alter table tablename add unique emp_name2(cardnumber);
删除某个索引
mysql>alter table tablename drop index emp_name;
修改表:
增加字段:
mysql> ALTER TABLE table_name ADD field_name field_type;
修改原字段名称及类型:
mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
删除字段:
mysql> ALTER TABLE table_name DROP field_name;
导入数据库内容。首先要选择你要导入内容的数据库:
use database;
将database更改为你导入数据库内容的数据库名称。在导入数据库前,确认你已经把导出的数据库文件上传到FTP目录下。例如,我在WP利用插
件导出的备份,解压有一个后缀为”.sql”的文件,把这个上传到你的FTP目录下即可;不用放进目录下面,直接上传就可以了。继续原来的话
题,输入下面命令导入数据库:
source wp.sql
其中wp.sql是你的数据库备份文件的名称。
退出mysql:
/q
查看mysql的帮助(用途不大):
/h