0%

XP网络不能访问的解决方案

  1. 就是像2000一样“开启guset用户”

  2. 允许Guest用户访问本机 :开始–运行–输入gpedit.msc,依次选择“计算机配置→Windows设置→安全设置→本地策略→用户权利指派”,删除“拒绝从网络访问这台计算机”策略中的“GUEST”账号。

  3. 更改网络访问模式:开始–运行–输入gpedit.msc,依次选择“计算机配置→Windows设置→安全设置→本地策略→安全选项”,双击“ 网络访问:本地账号的共享和安全模式”策略,将“仅来宾—本地用户以来宾身份验证”改为“经典:本地用户以自己的身份验证”。

  4. 解除空口令限制:在系统“安全选项”中停用“账户:使用空白密码的本地账户只允许进行控制台登录”策略。

  5. 网络邻居看不到计算机:打开“控制面板→性能和维护→管理工具→服务”,启动里面的“Computer Browser”服务。

  6. 增加共享文件权限选项:依次打开“我的电脑→工具→文件夹属性→查看→高级设置”,将“简单文件共享(推荐)”前面的选择取消,若还有“Mickey Mouse”项也将其取消。

  7. 网络邻居不响应或者反应慢:关掉WinXP的计划任务服务(Task Scheduler) 到“控制面板/管理工具/服务”中打开“Task Scheduler”的属性对话框,停止该服务,再将启动类型设为“手动”。

  8. 到“工具/文件夹选项”中,关闭自动搜索的网络文件夹和打印机。

Read more »

在linux 的shell环境下有一个od命令可以将文件按不同的进制的ascii码输出,该功能可以完成在linux shell下将汉字转换为url编码的任务。

url编码是十六进制的形如%E6%9C%8D%E5%8A%A1%E5的字符串,test是包含“数据库网络,”这几个字符的文件,以下命令输出:

1
2
3
#od -t x /test
0000000 ddbefdca f8cde2bf 0a2ce7c2
0000014

该字符串对应的url编码为 %CA%FD%BE%DD%BF%E2%CD%F8%C2%E7%2C

可以看出编码的对应关系以下是转换的脚本:

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/sh
#make url code
od -t x /test |awk '{
w=split($0,linedata," ");
for (j=2;j<w+1;j++)
{
for (i=7;i>0;i=i-2)
{
if (substr(linedata[j],i,2) != "00") {printf "%" ;printf toupper(substr(linedata[j],i,2));}
}
}
}' >/testurl

testurl文件的内容就是转换结果。

还原编码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#数据库网络
echo '%CA%FD%BE%DD%BF%E2%CD%F8%C2%E7%2C'|
awk 'BEGIN {
for (i=0;i<=16;i++) hex[sprintf("%X",i)]=i;}
{ for (i=1;i<=length($0);i++)
{ c=substr($0,i,1)
if (c=="+") printf (" ");
else if (c=="%") {
printf ("%c",hex[substr($0,++i,1)]*16+hex[substr($0,++i,1)])

}
else printf (c);

}
} '

使用起了Pidgin(前身Gaim),很不错的聊天软件呢,常见的QQ,MSN,Yahoo,GTalk,AIM都能集成登录。我经 常就是开着QQ和MSN(在同一版面显示,截个图先~)

说重点,截图中显示的当然是已经解决“NULL”无法显示好友以及群名称的问题。

具体解决办法:

首先完全卸载旧版本的Pidgin(低于2.42版的),然后安装最新版的Pidgin软件,保持GTK+和Pidgin的版本最新。最新版下载地址:http://www.pidgincn.com/download.php 点击下载Pidgin(Gaim) 2.4.2 windows版 就行了。(已为最新版的,就免了这步了。)忘了说了,这里的NULL解决方法只是针对Windows平台的解决方法,Linux的暂不知道。

第二步,也是最后一步,下载由Gaim官方论坛trublemaker 提供的自己编译的QQ插件:下载地址:qq-null-pidgin.zip。(本站流量小,请勿盗链。)解压里面出libqq.dll这个文件复制到pidgin安装目录的plugins文件夹下,可以先备份原QQ插件libqq.dll。然后再复制。(做这一步的时候请勿使用Pidgin,以免出问题。)最后清理下系统缓存,垃圾文件之类的东西就OK了。

(网上有关于修改注册表的、也有改系统设置项的或GTK+设置的方法,效果都不是让人满意,仅能解决好友NULL乱码,不能解决群的故障。)

要在 Windows 中注册 Wups2.dll 文件,请按照下列步骤操作:

  1. 停止自动更新服务

net stop wuauserv

  1. 注册 Wups2.dll 文件

regsvr32 c:windowssystem32wups2.dll

  1. 启动自动更新服务

net start wuauserv

Synergy 的确是一个不可思议的软件。

Synergy 可以算作一款远程控制软件。一般的远程控制软件都是将服务器的画面提供给客户端使用,而Synergy的创意很独特,它将客户端的键盘和鼠标提供给服务器使用。这样如果你有多台电脑并且每台电脑都有自己的显示器,你可以通过 Synergy 用一组键盘和鼠标控制所有电脑,而且每台电脑的屏幕可以连接起来,就像在同一台电脑上使用多个显示器一样。下面介绍一下使用方法,所用版本为 1.3.1。

假设我们有三台电脑,分别为 computerAcomputerBcomputerC。我们要使用 computerA 的鼠标键盘控制这三台电脑,并且屏幕的布局如下。

服务器设置

首先在 computerA 上启动 Synergy,选择 **Share this computer’s keyboard and mouse (server)**。

然后单击下面的 Configure… 按钮,以配置各个屏幕。单击 Screens 下面的 + 按钮,输入 Screen Name 为 computerA,确定。同样的方法依次添加 computerB 和 computerC。

然后我们要设置这三个屏幕的布局。在 Links 的列表框下方有一排输入框和选择框,将其依次设置为以下的内容然后单击下方的 + 按钮。

  • 0 to 100% of the left of computerA goes to 0 to 100% of computerB
  • 0 to 100% of the right of computerB goes to 0 to 100% of computerA
  • 0 to 100% of the left of computerC goes to 0 to 100% of computerA
  • 0 to 100% of the right of computerA goes to 0 to 100% of computerC

这样我们就将三个屏幕设置为 B – A – C 的布局了。注意两个屏幕之间的连接是双向的,比如我们设置了 B <- A,也要同时设置 B -> A,否则鼠标从 A 移动到 B 之后就无法回到 A 了。最终的结果如下。

回到主界面,单击 Advanced… 按钮,确认 Screen Name 的内容为 computerA,确定。

至此服务器端设置完毕,先不要关闭 Synergy 的对话框。

客户端设置

在 computerB 上启动 Synergy,选择 Use another computer’s shared keybord and mouse(client) ,并在下面的主机名处填写 computerA。

然后单击 Advanced… 按钮,确认 Screen Name 的内容为 computerB。

在 computerC 上用同样的方法进行设置。

测试

在 computerA 上单击 Test 按钮,然后依次在 computerB 和 computerC 上单击 Test 按钮。我们试着在 computerA 上将鼠标移动到屏幕左侧,就会看到鼠标移动到了 computerB 上,而此时键盘也在控制 computerB;然后将鼠标移动到 computerB 屏幕右侧,鼠标就会回到 computerA;再将鼠标移动到 computerA 右侧,鼠标就会移动到 computerC 上。

启动

最后依次在每台电脑上单击 AutoStart… 按钮,选择登录时自动启动或者电脑启动时自动启动 Synergy,单击 Install 按钮。最后回到主界面,单击 Start 按钮关闭 Synergy 设置窗口即可。

启动mysql 报错:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

  1. 先查看 /etc/rc.d/init.d/mysqld status 看看 mysql 是否已经启动.
    另外看看是不是权限问题.

  2. 确定你的mysql.sock是不是在那个位置,
    mysql -u 用户名 -p -S /var/lib/mysql/mysql.sock

  3. 试试:service mysqld start

  4. 如果是权限问题,则先改变权限 #chown -R mysql:mysql /var/lib/mysql

1
2
3
4
5
[root@localhost ~]# /etc/init.d/mysqld start
启动 MySQL: [ 确定 ]
[root@localhost ~]# mysql -uroot -p

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

原因是,/var/lib/mysql 的访问权限问题。

1
shell> chown -R mysql:mysql /var/lib/mysql

接着启动服务器

1
shell> /etc/init.d/mysql start

服务器正常启动后察看 /var/lib/mysql 自动生成mysql.sock文件。

但是我的问题仍然没有得到解决。

问题终于解决:
方法: 修改/etc/my.conf:

1
2
3
4
5
6
7
8
9
10
11
12
[mysqld]
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock

[mysql.server]
user=mysql
basedir=/usr/local/mysql

If there is not currently a section called [client], add one at the bottom of the file and copy the socket= line under the [mysqld] section such as:

[client]
socket=/var/lib/mysql/mysql.sock

发现依旧如此,运行/etc/init.d/mysql start报错: Starting MySQLCouldn’t find MySQL manager or server
是mysqld服务没启,运行/usr/local/mysql/bin/mysqld_safe &

问题解决。

1. awk的常规表达式元字符

换码序列  
^ 在字符串的开头开始匹配
$ 在字符串的结尾开始匹配
. 与任何单个字符串匹配
[ABC] 与[]内的任一字符匹配
[A-Ca-c] 与A-C及a-c范围内的字符匹配(按字母表顺序)
[^ABC] 与除[]内的所有字符以外的任一字符匹配
Desk|Chair 与Desk和Chair中的任一个匹配
[ABC][DEF] 关联。与A、B、C中的任一字符匹配,且其后要跟D、E、F中的任一个字符。
[ABC]* 与A、B或C中任一个出现0次或多次的字符相匹配
[ABC]+ 与A、B或C中任何一个出现1次或多次的字符相匹配
[ABC]? 与一个空串或A、B或C在任何一个字符相匹配
(Blue|Black)berry 合并常规表达式,与Blueberry或Blackberry相匹配

2. awk算术运算符

运算符 用途
x^y x的y次幂
x**y 同上
x%y 计算x/y的余数(求模)
x+y x加y
x-y x减y
x*y x乘y
x/y x除y
-y 负y(y的开关符号);也称一目减
++y y加1后使用y(前置加)
y++ 使用y值后加1(后缀加)
-y y减1后使用y(前置减)
y- 使用后y减1(后缀减)
x=y 将y的值赋给x
x+=y 将x+y的值赋给x
x-=y 将x-y的值赋给x
x*=y 将x*y的值赋给x
x/=y 将x/y的值赋给x x%=y 将x%y的值赋给x
x^=y 将x^y的值赋给x
x**=y 将x**y的值赋给x

3. awk允许的测试:

操作符 含义
x==y x等于y
x!=y x不等于y
x>y x大于y
x>=y x大于或等于y
x< =y x小于或等于y
x~re x匹配正则表达式re
x!~re x不匹配正则表达式re

4. awk的操作符(级别越高越优先)

级别 | 运算符 | 说明
—|—
1 | =,+=,-=,*=,/=,%=,&=,^=,|=,<<=,>>= | 赋值、运算
2 | || | 逻辑或
3 | && | 逻辑与
4 | | | 按位或
5 | ^ | 按位异或
6 | & | 按位与
7 | ==,!= | 等于,不等于
8 | <=,>=,<,> | 小于等于,大于等于,小于,大于
9 | <<,>> | 按位左移,按位右移
10 | +,- | 加,减
11 | *,/,% | 乘,除,取模
12 | !,~ | 逻辑非,按位取反或补码
13 | -,+ | 正,负

5. awk内置变量(预定义变量)

说明:表中v项表示第一个支持变量的工具(下同):A=awk,N=nawk,P=POSIX awk,G=gawk

V 变量 含义 缺省值
N ARGC 命令行参数个数  
G ARGIND 当前被处理文件的ARGV标志符  
N ARGV 命令行参数数组  
G CONVFMT 数字转换格式 %.6g
P ENVIRON UNIX环境变量  
N ERRNO UNIX系统错误消息  
G FIELDWIDTHS 输入字段宽度的空白分隔字符串  
A FILENAME 当前输入文件的名字  
P FNR 当前记录数  
A FS 输入字段分隔符 空格
G IGNORECASE 控制大小写敏感0(大小写敏感)  
A NF 当前记录中的字段个数  
A NR 已经读出的记录数  
A OFMT 数字的输出格式 %.6g
A OFS 输出字段分隔符 空格
A ORS 输出的记录分隔符 新行
A RS 输入的记录他隔符 新行
N RSTART 被匹配函数匹配的字符串首  
N RLENGTH 被匹配函数匹配的字符串长度  
N SUBSEP 下标分隔符 \034

6. awk的内置函数

V 函数 用途或返回值
N gsub(reg,string,target) 每次常规表达式reg匹配时替换target中的string
N index(search,string) 返回string中search串的位置
A length(string) 求串string中的字符个数
N match(string,reg) 返回常规表达式reg匹配的string中的位置
N printf(format,variable) 格式化输出,按format提供的格式输出变量variable。
N split(string,store,delim) 根据分界符delim,分解string为store的数组元素
N sprintf(format,variable) 返回一个包含基于format的格式化数据,variables是要放到串中的数据
G strftime(format,timestamp) 返回一个基于format的日期或者时间串,timestmp是systime()函数返回的时间
N sub(reg,string,target) 第一次当常规表达式reg匹配,替换target串中的字符串
A substr(string,position,len) 返回一个以position开始len个字符的子串
P totower(string) 返回string中对应的小写字符
P toupper(string) 返回string中对应的大写字符
A atan(x,y) x的余切(弧度)
N cos(x) x的余弦(弧度)
A exp(x) e的x幂
A int(x) x的整数部分
A log(x) x的自然对数值
N rand() 0-1之间的随机数
N sin(x) x的正弦(弧度)
A sqrt(x) x的平方根
A srand(x) 初始化随机数发生器。如果忽略x,则使用system()
G system() 返回自1970年1月1日以来经过的时间(按秒计算)

google(谷歌)搜索引擎的流量数据在这一刻画下了这样的曲线.