linux tar 命令实例

打包一个目录或文件
tar -cvf filename.tar directory/file

列出tar文件的内容
tar -tvf filename.tar

抽取tar文件的内容
tar -xvf filename.tar

使用bzip来压缩文件
tar -cjvf filename.tbz file

解压bzip文件
tar -xjvf filename.tbz

使用gzip来压缩文件
tar -czvf filename.tgz file

解压gzip文件
tar -xzvf filename.tgz

检查一个php函数是否可用

<?php
if(function_exists('fsockopen')) {
echo "fsockopen function is enabled";
}
else {
echo "fsockopen is not enabled";
}
?>

其中fsockopen可以替换为其它函数

vim之删除重复行

重新排序,并且删除重复的行(只保留一行)。

:sort u

删除连续相同的行,保留最后一行。

g/^\(.*\)$\n\1$/d

删除连续相同的行,保留最初一行。

g/\%(^\1$\n\)\@<=\(.*\)$/d

linux find 命令实例

查找空目录
find /path -depth -type d -empty

查找空文件
find /path -depth -type f -empty

查找指定文件
find /path -name name_of_file

查找指定类型的文件
find /path -name “*.given_extension”

查找指定权限的txt文件
find /path -name ‘*.txt’ -perm 644

查找指定权限的文件
find /path -perm -permission_bits

查找指定文件名的任意类型文件
find /path -name ‘given_name.*’

查找最近更改的文件
find /path -mtime n

其中n为整数:
0表示最近24小时内
1表示最近48小时内
2表示最近72小时内

查找最近访问的文件
find /path -atime n

其中n为整数:
0表示最近24小时内
1表示最近48小时内
2表示最近72小时内

根据所有者查找文件
find /path -user root

查找并且删除文件
find /path -name mytestfile | xargs rm

设置301重定向

一、PHP

重定向单个网页

<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.newdomain.com/page.html");
exit();
?>

重定向多个网页

<?php
if (substr($_SERVER['HTTP_HOST'],0,3) != 'www') {
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.'.$_SERVER['HTTP_HOST']
.$_SERVER['REQUEST_URI']);
}
?>

二、.htaccess文件

重定向单个网页

Redirect 301 /old/oldpage.htm /new/http://www.domain.com/newpage.htm

重定向多个网页

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

三、ASP

重定向单个网页

<%
Response.Status="301 Moved Permanently"
Response.AddHeader='Location','http://www.newdomain.com/'
%>

重定向多个网页

<%
If InStr(Request.ServerVariables("SERVER_NAME"),"www") = 0 Then
Response.Status="301 Moved Permanently"
Response.AddHeader "Location","http://www."
& Request.ServerVariables("HTTP_HOST")
& Request.ServerVariables("SCRIPT_NAME")
End if
%>

使用sendmail发送邮件

一、Linux命令

echo "Subject: test" | /usr/sbin/sendmail -v you@domain.com

二、PHP

<?php
$fd = popen("/usr/sbin/sendmail -t","w") or die("Couldn't Open Sendmail");
fputs($fd, "To: me@mydomain.com \n");
fputs($fd, "From: \"Your Name\" <you@domain.com> \n");
fputs($fd, "Subject: Test message from my web site \n");
fputs($fd, "X-Mailer: PHP3 \n\n");
fputs($fd, "Testing. \n");
pclose($fd);
?>

Linux SCP 命令实例

什么是scp

scp就是secure copy,是用来进行远程文件拷贝的。数据传输使用ssh,并且和ssh使用相同的认证方式,提供相同的安全保证。

scp的用法

从远程复制文件foobar.txt到本地
$ scp username@remotehost.com:foobar.txt /some/local/directory

从本地复制文件foobar.txt到远程
$ scp foobar.txt username@remotehost.com:/some/remote/directory

将本地目录foo复制到远程目录bar
$ scp -r foo username@remotehost.com:/some/remote/directory/bar

在两台远程服务器之间传输文件
$ scp username@rh1.com:/some/remote/directory/foobar.txt \
username@rh2.com:/some/remote/directory/

从本地复制两个文件到远程home目录下
$ scp foo.txt bar.txt username@remotehost.com:~

从本地复制文件foobar.txt到远程(非默认端口)
$ scp -P 1122 foobar.txt username@remotehost.com:/some/remote/directory

从远程复制多个文件到本地
$ scp username@remotehost.com:/some/remote/directory/\{a,b,c\} ./
$ scp username@remotehost.com:~/\{foo.txt,bar.txt\} ./

scp可选参数:

参数 解释
-v    和大多数 linux 命令中的 -v 意思一样,用来显示进度。可以用来查看连接,认证,或是配置错误。
-C   使用压缩选项
-P   选择端口。注意 -p 已经被 rcp 使用。
-4   强行使用 IPV4 地址。
-6   强行使用 IPV6 地址。

Linux FTP 命令实例

ftp 主机名/IP /*登录ftp服务器,会提示输入用户名和密码*/

ftp> help
列出所有的FTP命令

ftp> ls
列出远程服务器当前目录的所有文件和目录

ftp> cd blog
改变远程服务器目录为blog

ftp> cd ..
返回上一级目录

ftp> lcd images
改变本地服务器目录为images

ftp> ascii
设定以ascii方式传送文件(缺省值)

ftp> binary
设定以binary方式传送文件

ftp> get file1.php
下载远程服务器的file1.php文件到本地服务器。注意:如果本地服务器存在file1.php,将会被覆盖。

ftp> put file2.php
上传本地服务器的file2.php文件到远程服务器。注意:如果远程服务器存在file2.php,将会被覆盖。

ftp> !ls
在命令前加“!”,表示执行本地服务器的指定命令。所以,!ls表示列出本地服务器当前目录的文件和目录。

ftp> mget *.jpg
下载所有“.jpg”文件

ftp> mput *.jpg
上传所有“.jpg”文件

ftp> mdelete *.jpg
删除远程服务器的“.jpg”文件

ftp> prompt
开启或关闭“提醒模式”

ftp> quit
退出FTP程序

ftp> bye
同quit

不输入密码登录putty

一、批处理

@echo off

start D:\soft\putty.exe -pw password user@server.com

exit

::注意其中的start命令。如果没有start这个命令,启动putty完成后,cmd窗口还会一直存在。

二、快捷方式

在桌面建立新的快捷方式,命令行填写如下:

D:\soft\putty.exe -pw password user@server.com

注意更换你的putty.exe的路径,为了避免出错,这里有个窍门,你可以找到putty.exe文件,
然后右键创建桌面快捷方式,再到桌面上编辑这个快捷方式,加上后面的参数就好了。

php连接mysql数据库的代码

<?php
mysql_connect("localhost","root","123456") //填写mysql用户名和密码
   or die("Could not connect to MySQL server!");
mysql_select_db("database_name") //数据库名
   or die("Could not select database!");
mysql_query('set names "gbk"'); //数据库内数据的编码
?>