背景:pt-query-digest需要PDO,别搞成/ext/pdo了,实际是/ext/pdo_mysql。
这篇文章需要:http://jackxiang.com/post/8113/
DownLoad:https://www.percona.com/downloads/percona-toolkit/ 里面有一个:
percona-toolkit-2.2.14-1.noarch.rpm
https://www.percona.com/downloads/percona-toolkit/2.2.14/RPM/percona-toolkit-2.2.14-1.noarch.rpm
————————————————————————————————————————
来自:http://blog.csdn.net/liruxing1715/article/details/8268513

1、进入 PHP 的软件包 pdo 扩展目录中(注:不是 PHP 安装目录)


[root@gamejzy /]# cd /tmp/lamp/php-5.3.19/ext/pdo_mysql/

注:我的 php 软件包在 /tmp/lamp/php-5.3.19 下

执行 phpize 命令

[root@gamejzy pdo_mysql]# /usr/local/php/bin/phpize


注:/usr/local/php 是我的 php 安装目录

执行完 phpize 命令后,在 pdo_mysql 目录中就会出现 configure

执行配置

[root@gamejzy pdo_mysql]# ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql/
不加mysql会出现:configure: error: Unable to find your mysql installation


参数说明:

--with-php-config=/usr/local/php/bin/php-config 指定安装 PHP 的时候的配置

--with-pdo-mysql=/usr/local/mysql/ 指定 MySQL 数据库的安装目录位置

编译安装

[root@gamejzy pdo_mysql]# make && make install

/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/pdo_mysql.so
php里加上(不是pdo.so呢,它是sqlite的扩展名,特别要注意下。):
extension = "pdo_mysql.so"
时间:2015年06月11日
地点:北京地铁焦化厂站D口进入的充值点
事件:建议北京地铁补票口给出醒目提示该窗口只补票,广大人民进站时发现钱不够了想起充钱可能会到这儿去充钱,按你们的死规定不让充钱,咱怕你了,请给个明确的窗口提示。
过程:今儿早上进入七号线地铁里面刷卡后,看到屏里的卡余额不足,于是顺道右转(右边就是充钱服务中心)想在这儿充钱(之前在其它站也充过),该处售票员说是补票窗口,我看也没写明是补票啊(该窗口有出票显示屏和话筒),要我出外面去排队充值,我此时都进来了站那儿不到10秒(一会又来个妹子排队,那妹子后面就服了在里面递给外面人充值了),我想表达的是:你要写明了补票是我个人的问题(没写明),最后,还让保安来吓我(我是狠拍了下玻璃让提示她充钱,此时外面也没啥人排队了),其还打电话叫了保安过来,和他说了下这个事情,你这没有标明只补票,为何不能充钱,解释了下意思是都是这样(那我试问:为何我在其它的站充上过呢),感觉他们也无奈的样子,还是把卡和钱拿到外面充值窗口(人在里面可以简单侧身放过去),那个妹子死硬板的说说是得在外面充,保安说还是给冲了吧就冲了,我又试问:刚才那排我后面妹子为何给充了值(你这是不是也没按流程呢?咱就按流程啊。),最后,保安说还是冲吧给充了值(上班忙懒得跟她们扯,差点迟到了。),试问地铁票涨了,就只知道提供给乘客这种服务吗?政府上头说要有互联网思维(一、用户不知道你得教育知会到用户。二、这块儿至少得有一个正式的仅补票用户提示。),也是浮动于表面吗?我得打电话给他们投诉下(没个提示误导大家),人人都像我这样这个社会会变更好。

后记,
坦率的讲,可能和互联网用户体验思维有关,对我身后那个妹纸就很自然的妥协了,我就是我,不一样的烟火,投诉电话还挺忙(但我会接着打下去接通并反馈清楚看到他们咋解决这个问题为止),乔布斯说你的时间有限,不要浪费于重复别人的生活。史蒂夫·乔布斯说减少Macintosh的开机时间就是节约生命。10秒的节省对于数以百万计的用户每天开机数次的操作来说,就是节省了很多的生命。北京地铁难道不该有这个类似愧疚吗?

解决,
已经电话12328反馈作了建议,建议加个牌子引导用户该窗口只补票,电话说是已经记录,至于做不做看他们,电话排队一分钟才接通,咱也不给她添堵了,有钱了买个车堵公路上。也希望地铁上少浪费时间,提高标准化的提示和流程服务,别这个站这样那个站流程不一样,对单独一站的工作人员会不会说像你说的这些体验性的标识其它站都一样没有提示的(看来他们也无能为力是吧,那是不是该向上反映以求解决呢?反映了到底能否解决和给个反馈呢?我也就只能呵呵了。),我们也没办法,其它人都知道就你不知道,(会不会让我这个建议成为被搁置的理由?),假如以这种心态来面对这个问题(人人都知道就我不知道,难不成是我自己的问题,好吧),这只是我的一个思想过程,结果不知道,咱就留意一下建议后的效果吧。最后,大家都没有错,但都浪费了乘客无谓的时间。比如我之前在苹果园都不安检(那块安检松一些,没有其它地强制性大。),后面搬家到七号线了发现不光安检还要扫描身体,我上个班都挺不容易的,你还天天派七八人在一个地铁口“伺候”我,正是为了解决反恐、就业吗?这些问题作为个人真是没法想,但我觉得给正常的地铁用户节省时间给方便是一定的,能不能为用户多做一些让用户有所感,一定程度解放已经疲惫不堪的用户乘坐人群的时间和体验感,希望地铁人员持续运作完善好,仅此而已。

                                                                                                    




AddTime: 2015-07-02
七号线焦化厂丢车严重,有人丢了三辆自行车了,还有丢电动车的,报警了有警察想调视频监控也不知道找谁,我试着打12328,说是找96165,96165问我确定没开吗?你丢了就报警吧,这下有意思了,我警察也不知找谁(也可能一个自行车不值钱,最后破案后再上电视吧[调取到视频监控..成功破案。]),这块得配合起来才能搞定小偷啊,看谁来管呢,形成了一个循环的怪圈...最最关键是我的自行车也在那儿放啊,锁都给有动过痕迹了,我的车很危险~........如之奈何?
root@raspberrypi:/# find . -name "mplayer.conf"
./etc/mplayer/mplayer.conf

修改mplayer的配置文件:/etc/mplayer/mplayer.conf

只要在mplayer.conf添加以下一行即可:

              af=volnorm,volume=10

volume的值可以根据实现情况设置。其中:

af表示Audio Filter,10是分贝值,如果设为-200表示完全静音,60表示增大到原音量的1000倍,10的(60/20)次方=1000,一般设为10分贝就可以。

来自:http://blog.csdn.net/ganggexiongqi/article/details/8453188

mplayer for android:
http://download.csdn.net/download/gaxuhongyu/3078360

adb 运行手机上的Mplayer:

adb shell am start -n com.android.mplayer  -ao alsa  /data/data/com.ayansoft.androphp/php/temperature/1.mp3
你要变戏法的时候就变戏法,要练武功的时候就练武功,你总是混在一起,能活到现在,真是一个奇迹。

(源自《聊斋志异》)说:你要变戏法的时候就变戏法,要练武功的时候就练武功,你总是混在一起,你能活到现在,真是一个奇迹。
教训那个变戏法的:早就告诉你,练武功就好好练武功,要学变戏法就好好学变戏法,你总是要搞在一起?(是这样的吧)---神仙索就此失传了。---《剑雨》
背景:从windows上用editplus编写一个文件rz上去后,在make时,出现make: 警告:检测到时钟错误。您的创建可能是不完整的。后面make clean;问题依旧。
引起原因:是因为windows上的文件可以时间比较旧,需要给touch一个新时间,让make认为是很新的文件,即可。
解决办法:
touch multepoolser.c
于是编译就没提示这个问题了。
——————————————————————————————————————————————————————
我在make的时候也出现了同样的问题,不过不是什么大问题,这个不影响编译结果

分析原因可能是:
服务器上的文件最后修改时间比当前时钟要晚

解决办法:
用touch 命令把源程序的时间戳改一下
find . -type f -exec touch {} \;

或者

touch *一下再重新编译

From:http://blog.csdn.net/maopig/article/details/6599660
背景:你买个树莓派的屏,有时你不想屏自动关闭,但有时它自己睡眠了,以为是屏自己控制的,一问才知可能是树莓派的一个文件可以禁用屏休眠。
Pi 用户下:
主要是在Pi的界面上知道DISPLAY这个变量值,再才是在secureCRT的ssh里:(参考:http://jackxiang.com/post/7689/)
pi@raspberrypi:~$ export DISPLAY=:0.0
pi@raspberrypi:~$ /usr/bin/xset -dpms

将dpms关闭,原来
DPMS (Display Power Management Signaling) is a standard to reduce power consumption in monitors.
是为了省电的,将这个关闭所以屏幕就不会自动变黑了。

==============================================================
root@raspberrypi:/# vi /etc/rc.local
root@raspberrypi:/# source /etc/rc.local
My IP address is 192.168.2.2 192.168.199.167
pi@raspberrypi ~ $ setterm -blank 0
pi@raspberrypi ~ $ vi ~/.xinitrc
pi@raspberrypi ~ $ chmod a+x  ~/.xinitrc

sudo apt-get install xserver-xorg-core xserver x11-xserver-utils

root@raspberrypi:/data/htdocs/t.jackxiang.com# dpkg -L  x11-xserver-utils
/usr/bin/xset

export DISPLAY=:0.0
/usr/bin/xset s off # don't activate screensaver
/usr/bin/xset -dpms # disable DPMS (Energy Star) features.
/usr/bin/xset s noblank # don't blank the video device
exec /etc/alternatives/x-session-manager # start lxde

http://ju.outofmemory.cn/entry/103897

=====================实践OK如下===================================
#!/bin/bash
export DISPLAY=:0.0
/usr/bin/xset s off # don't activate screensaver
/usr/bin/xset -dpms # disable DPMS (Energy Star) features.
/usr/bin/xset s noblank # don't blank the video device
exec /etc/alternatives/x-session-manager # start lxde


su pi -c "/bin/bash /home/pi/.xinitrc"


vi /etc/rc.local        //写进去以开机启动时执行一下,http://jackxiang.com/post/8146/
su pi -c "/bin/bash /home/pi/.xinitrc"




=======下面这个办法在sudo su -时会提示找不到这个xsetdpms和xsets 命令,然并卵=======

pi@raspberrypi ~ $ sudo su -
-su: xsetdpms: command not found
-su: xsets: command not found
删除就好了,按前面的实现方法Ok:
rm -Rf /etc/profile.d/Screen.sh


原理:也就是说,你们屏没有休眠这一说,是树莓派自己控制,也就是它自己输出黑屏,但我一触摸这个屏又好了,随便建一个文件就能搞定这个博客说的文件名不限制有点玄乎,有空试试。那个黑屏是树莓派本身的问题。。你连到HDMI上 也一样会。
要想永久禁用树莓派休眠,我们可以在/etc/profile.d路径下新建一个file,如Screen.sh,并将下面两条命令写入该文件,即可以实现永久禁用。

xsetdpms 0 0 0

xsets off


[树莓派经验] 如何更换树莓派软件源 :
编辑 /etc/apt/sources.list 文件
sudo nano /etc/apt/sources.list
删除原来的内容,更换为以下内容
一)
deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ wheezy main contrib non-free rpi
二)
以我用的清华源为例  将其中的官方源地址换为 http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian 就行了
Ctrl+O保存,Ctrl+X退出

然后执行 apt-get update 命令更新软件列表。


我用的raspbian, 先装emacs,然后找软件源。至于为什么要找软件源。这问题可以问你自己也可以问我,官方源实在太慢了!
在镜像列表找了一下,有个清华的,准备试一下,还不错的说。
———————————————————————————————————————————————————————————
1. 对原sources.list文件做备份
命令:   sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup  

2. 修改sources.list
命令:   sudo nano /etc/apt/sources.list
以我用的清华源为例  将其中的官方源地址换为 http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian 就行了
3. 更新软件列表
命令:   sudo apt-get update

来自:http://blog.csdn.net/burgess_liu/article/details/8721389
更多:http://www.cnblogs.com/xiaowuyi/p/4063323.html

源来自:http://bbs.elecfans.com/jishu_450134_1_1.html
背景:c和c++的论战,好玩..转之。
实习,有个纯C语言开发底层系统的offer,公司是创业公司,创始人有硅谷背景。这个offer应该接受吗?纯C的开发以后转行去其他公司容易吗?

补充:
首先谢谢各位热心的回答。
另外补充一些信息:公司是个创业公司,而我只是去实习一年,并且还不确定以后做不做底层。

阅读全文
dd到更大盘后扩大磁盘的命令方法(理论上应该有其它图形gparted工具扩大):https://blog.csdn.net/daicooper/article/details/86150138

用Linux下的dd命令拷贝整张磁盘的方法:
fdisk -l 能看到两块盘,不是分区,如下:
dd if=/dev/sda of=/dev/sdb bs=4096k
fdisk -l
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes, 1953525168 sectors
Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes, 1953525168 sectors
iostat -x 1或 iostat -d 2 -m ,    来自:https://jackxiang.com/post/5671/
有120M左右的写入速度,1T = 1000G = 1000000M
1000000/100/3600=2.77小时,实际上不会时刻在100M以上,估计得3个小时。
用orico硬件拷贝可能要快一点, 但感觉不出来快多少,dd命令运行中可以Ctrl+C中断的。



背景:有vps到期后想换一台vps时,其旧的vps的数据是怎么样实现完全删除的哩? 或是怎么处理的,我现在把vps搬到淘宝vps了,有这个问题。兄弟们是怎么使用的dd。如果我想删除: /data/htdocs 是要dd多少次?d27就可以了。
全盘拷贝的命令:
dd if=/dev/sdb  of=/dev/sdc
分区拷贝:
dd bs=512 count=[fdisk命令中最大的end数+1] if=/dev/sdb of=name.img
以上为例:
dd bs=512 count=15002048 if=/dev/sdb of=ghost_linux_latelee.img
由于ghost_linux_latelee.img会很大,可以在拷贝时将其压缩:
dd bs=512 count=15002048 if=/dev/sdb | gzip -9 > ghost_linux_latelee.img.gz
上面所做的,就是传说的系统“备份”,或叫“系统克隆”。
对应的,有系统恢复的操作。命令如下:
dd if=ghost_linux_latelee.img of=/dev/sda
如果是压缩包,则命令为:
gzip -c -d ghost_linux_latelee.img.gz | dd of=/dev/sda
在上面的拷贝过程中,并不知道拷贝了多少,只有最终结束时才显示出时间、拷贝速度。为了查看进度,可以在另一个终端输入(记得用root):
watch -n 5 killall -USR1 dd
(注:killall并不是传说中把进程kill掉,而是发送一个指定的信号到指定的进程)
之后,就能执行dd的终端看到进度了,如:
58299+0 records in58298+0 records out29848576 bytes (30 MB) copied, 4.67728 s, 6.4 MB/s161403+0 records in161402+0 records out82637824 bytes (83 MB) copied, 9.69359 s, 8.5 MB/s238651+0 records in238650+0 records out122188800 bytes (122 MB) copied, 14.7105 s, 8.3 MB/s
备注:
用dd的方式,得到的镜像文件十分庞大——取决于所要做的系统的大小。比如,拷贝4GB的分区,真的就是拷贝4GB,即使是用gzip压缩,也压缩不了多少,文件依然很大。
另外dd的方式也消除了我之前的担心,因为现在的Linux发行版的分区使用硬盘uuid作为标识,而不是/dev/sda1这种格式,据说uuid更好。但用dd拷贝,竟然连硬盘的uuid也一一拷贝,毫无变化,这的确让我吃惊。不过,目前看没什么时间研究dd了。
PS:使用dd命令,可以读取硬盘的mbr扇区,示例如下:
dd if=/dev/sdb of=mbr.bin bs=512 count=1


来自:https://blog.csdn.net/qq_32693119/article/details/79986438阅读全文
字符s,整数d:



printf格式输出:%[flags][width][.perc][F|N|h|l]type
用到了flags中的 0 (注意是零不是欧) ,其百科描述为:将输出的前面补上0,直到占满指定列宽为止(不可以搭配使用-)
width 即表示需要输出的位数。



也可以用 * 代替位数,在后面的参数列表中用变量控制输出位数;


来自:http://blog.chinaunix.net/uid-26295753-id-2981750.html
root@raspberrypi:~# minicom
Device /dev/ttyUSB0 is locked.
rm -Rf  /var/lock/LCK..ttyUSB0
阅读全文
背景:试着在centos7里调试一下c程序,出现,Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.26-17.el7.x86_64 glibc-2.17-78.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.12.2-14.el7.x86_64 libcom_err-1.42.9-7.el7.x86_64 libgcc-4.8.3-9.el7.x86_64 libselinux-2.2.2-6.el7.x86_64 libstdc++-4.8.3-9.el7.x86_64 nss-softokn-freebl-3.16.2.3-9.el7.x86_64 openssl-libs-1.0.1e-42.el7.4.x86_64 xz-libs-5.1.2-9alpha.el7.x86_64

问题:
Missing separate debuginfos, use: debuginfo-install glib
解决方法:
在CentOS6.5上用gdb调试时提示Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.132.el6.i686

实践如下过程:
uname -rsp
Linux 3.10.0-229.1.2.el7.x86_64 x86_64

http://debuginfo.centos.org/7/x86_64/
(例如本机uname -r 3.10.0-229.1.2 只能选 kernel-debuginfo-3.10.0-229.1.2.el7.x86_64.rpm kernel-debuginfo-common-x86_64-3.10.0-229.1.2.el7.x86_64.rpm


安装debuginfo
rpm -ivh kernel-debuginfo-3.10.0-229.1.2.el7.x86_64.rpm
rpm -ivh kernel-debuginfo-common-x86_64-3.10.0-229.1.2.el7.x86_64.rpm

配置yum源
or this to work, you need to have the debuginfo repository defined. For CentOS 5, put the following in /etc/yum.repos.d/CentOS-Base-debuginfo.repo:
[base-debuginfo] name=CentOS-$releasever - DebugInfo baseurl=http://debuginfo.centos.org/$releasever/$basearch/ gpgcheck=0
enabled=0
protect=1
priority=1

利用debuginfo-install安装glibc
debuginfo-install glibc

注意事项
安装debuginfo 去http://debuginfo.centos.org寻找和你内核完全匹配的rpm包。


详细:http://jingyan.baidu.com/article/37bce2be1839ca1003f3a253.html

————————————————————————————————————
自己实践如下:
rpm -ihv kernel-debuginfo-common-x86_64-3.10.0-229.1.2.el7.x86_64.rpm
警告:kernel-debuginfo-common-x86_64-3.10.0-229.1.2.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID b6792c39: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:kernel-debuginfo-common-x86_64-3.################################# [100%]

rpm -ihv   kernel-debuginfo-common-x86_64-3.10.0-229.1.2.el7.x86_64.rpm  
警告:kernel-debuginfo-common-x86_64-3.10.0-229.1.2.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID b6792c39: NOKEY
准备中...                          ################################# [100%]
        软件包 kernel-debuginfo-common-x86_64-3.10.0-229.1.2.el7.x86_64 已经安装

再安装:
debuginfo-install cyrus-sasl-lib-2.1.26-17.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.12.2-14.el7.x86_64 libcom_err-1.42.9-7.el7.x86_64 libgcc-4.8.3-9.el7.x86_64 libselinux-2.2.2-6.el7.x86_64 libstdc++-4.8.3-9.el7.x86_64 openssl-libs-1.0.1e-42.el7.4.x86_64 xz-libs-5.1.2-9alpha.el7.x86_64
背景:多个文件时设置断点时,可以在断点后指定文件名加函数,也可指定文件名加行号,还可以断点后跟偏移量,摘录下其他网站的。
设置断点:

——————————————————————————————————————————————————————————
     (gdb) break 断点

     程序运行后,到达断点就会自动暂停运行。此时就可以查看该时刻的变量值,显示栈针,重新设置断点或者重新运行等。

     断点可以通过函数名,文件内的行号来设置,也可以先指定文件名再指定行号,还可以指定与暂停位置的偏移量,或者用地址来设置。

     (gdb) break 函数名

     (gdb) break 行号

     (gdb) break 文件名:行号

     (gdb) break 文件名:函数名

     (gdb) break +偏移量

     (gdb) break -偏移量

     (gdb) break *地址

     在设置断点的时候,如果不指定断点位置,就在下一行代码上设置断点。    


     条件断点

     (gdb) break 断点 if 条件

     仅在特定条件下中断。对于已存在的断点,可使用condition为其添加条件。

     (gdb) break 断点编号 条件

     而删除指定编号断点的触发条件同样使用condition。

     (gdb) condition 断点编号

阅读全文
概括:不急,解决,跟随,不太过于妥协。
咱对当前我们所正在谋划的产品并不是急于求成,慢慢的打磨一项产品,
也不急于推出,So遇到难题的时候他不会要求太过于妥协,想下办法解决,
哪怕会延长首款产品的内心里定的开发进度。对这种情况来说完全可以毫不在乎。
————————————————————————————————————————
摘要 : 虽然乔布斯已经驾鹤西去快4年了,然而他的传奇性一点没有减弱,甚至还有所加强。社会各界对于乔布斯的评价都非常极端,要么认为他是一个固执的管理者,要么认为它是新式管理方式的创始人,那么到底乔布斯在管理上究竟有什么精髓呢?

虽然乔布斯已经驾鹤西去快4年了,然而他的传奇性一点没有减弱,甚至还有所加强。社会各界对于乔布斯的评价都非常极端,要么认为他是一个固执的管理者,要么认为它是新式管理方式的创始人,那么到底乔布斯在管理上究竟有什么精髓呢?

对职业生涯更加有耐心

耐心,乔布斯的最大特点,这是新传记撰写人里克·特策利告诉我们的。据其介绍,乔布斯对一项工作的并不是急于求成,总是慢慢的打磨一项产品,并不急于推出。而且他还会通过一些规章制度来限制工作人员急于求成,遇到难题的时候他不会要求员工妥协,而是想办法解决,哪怕会延长产品的开发进度。这一点总被认为乔布斯是我行我素的,但乔布斯对此也毫不在乎。

提前做好120%的准备

苹果的发布会是全世界IT行业的焦点,之所以每次其发布新产品都会如此吸引人,发布会的功劳不可或缺,因此现在很多的企业和企业家都在模仿乔布斯的发布会形式。但是你知道吗?乔布斯的发布会总是会提前几个月准备对产品的介绍,并进行详尽的排练。曾经为乔布斯服务过的人揭露说,再一次发布会前夕,乔布斯前往现场进行排练,从调整幻灯片的速度、顺序到聚光灯的颜色,他每一项都进行了调整,直到达到最佳状态。在现场如果有人出现错误,那么他会显得很暴躁,如果按照当时的安排进行,但他并不满意的话,他并不会发火,而是在台下静静的想,甚至有时候会向一些记者朋友请教,从他们的角度看如何更有吸引力。

默默的帮助员工度过难关

乔布斯是一个沉默冷酷的人,这是外界对他的主观评价,但真正的他又如何呢?他对员工的帮助都很低调。在皮克斯的时候,导演艾德·凯特摩在繁忙的工作时出现了思维死角的情况,对于新片没有了任何的灵感。乔布斯知道后主动将把自己关在工作室里的艾德·凯特摩约出来散步、聊天,并且帮助他找到当初制作影片时的初衷。再次回到苹果公司后,特别是乔布斯患了癌症后,他还利用电子表格制作了一个关于治疗心得和医生、医院推荐的文档,并将该文档发送给每个家庭中有人患同样病症的员工,还会跟他们一起讨论病情。

坚持自己的初衷

乔布斯从建立苹果公司那天起的初衷就是改变世界,这个初衷知道他去世的时候也从未改变过。不管是创立之初的苹果公司,还是之后的皮克斯公司,再到最后重返苹果公司。只要他在位的时候设计出来的产品无一不是具有划时代意义的,都是走在了科技的最前沿,颠覆了我们对其同类产品的传统定义。

乔布斯是独一无二的,他的风格和习惯也是独一无二的,如果想依靠单纯的模仿他来获取成功却并非可取的,但是以上这些管理中的精髓却值得我们运用到实践中,相信对于一名管理者来说是有百利而无一害的。
每次在电脑上安装支付宝安全控件时,默认都会强行安装与运行TaobaoProtect这个进程(如图)。电脑上装了这个程序以后,在我玩游戏时它总是会令我正在运行的程序自动跳出,使游戏最小化到任务栏上。令我感觉特别烦人!特别受骚扰!可是在淘宝上购物不安装支付宝又不行。最可恶的是购物以后我将支付宝安全控件卸载了然而这个该死的TaobaoProtect进程依然存在。阿里旺旺怎么净干这磋事啊?谁有办法禁用这个该死的进程啊?

1)首先删除C:\Users\“用户名”\AppData\Roaming\TaobaoProtect下的TaobaoProtect.exe和TaobaoProtectSE.dll。然后新建一个txt文件,重命名为TaobaoProtect.exe,右键属性设置只读打勾。目前最完美的解决方案了。

2)如果删除不掉有程序在使用怎么办,unlock来解锁:
http://www.anxz.com/down/1600.html
短网址服务,很多人都已经不再陌生,如今社交产品和搜索引擎纷纷推出短网址服务。Google推出了短网址服务goo.gl、g.co,Twitter推出了t.co,新浪微博推出了t.cn,还有腾讯微博的url.cn等等。而今百度也加入了这个行列,推出了dwz.cn短网址。

2010年8月百度曾推出过短网址服务,为go.baidu.com,此域名被网友戏称为“域名最长的短网址服务”,后来百度很快就关闭了服务。此服务再次推出,使用了新域名dwz.cn,dwz是短网址拼音的首位字母缩写。

经whois查询得知,dwz.cn域名于2005年4月注册,目前域名信息已变更至百度公司名下,据业内人士表示,域名dwz.cn系百度收购所得,具体成交金额并未透露。不过国内域名交易平台—名商网的资深经纪人表示,3字母的cn域名价格一般都是在5位数左右,记者查询名商网上的3字母域名出售价格发现tyq.cn域名一口价3,000元,而贵的mnl.cn域名也只是要价15,000元,由此可以推测百度收购dwz.cn域名价格不会太高。

目前dwz的主流后缀均已经被注册,其中dwz.com在美国人手中,dwz.com.cn则被北京德威治医药连锁有限责任公司用作企业官网。

案例:百度微信二维码分享的二维码图片,解析一个看看是这样的:
格式:QR-Code
内容:http://dwz.cn/IWvXI

解析图片的地址:
http://demo.geekso.com/qrcode/current/tools

这个工具还能识别条形码呢?
传一个条型码上去后,识别出来核对发现是正确的:

识别结果
格式:EAN-13

内容:6937526503743


所花时间:0.011550903320312


试一个微信登录的验证码:
格式:QR-Code
内容:http://weixin.qq.com/x/AU12KqUlH1LwKPcBUpAJ

再试一个PC客户端的验证码:
格式:QR-Code
内容:http://weixin.qq.com/x/ASyhiIev6yVowLDZrsxl

再再试一个PC客户端的验证码:
格式:QR-Code
内容:http://weixin.qq.com/x/AV_wDVYd9z7aTCj77rhh
每打开一次微信网页版页面的时候会随机生成一个含有唯一uid的二维码,每次刷新页面都会不一样(这个可以保证一个uid只可以绑定一个账号和密码,如果一个uid可以绑定多个账号和密码,那么很可能你的电脑会登陆别人的微信哦)
(x后面的数码值不一样,应该是某种标识,这个标识可能是和手机端通信的一个特殊标志位。)
确实返回了唯一 id,但目的是为了识别用户身份,而且实际上打开这个页面的时候浏览器已经和 Server 创建了一个长连接等待确认信息。

使用登陆后的微信扫描该二维码的时候,会将这个id和手机上的微信账号及密码绑定,并上传到微信网页版。

浏览器展示完长连接里包含的用户信息(头像等)后,会新开一个长连接等待客户端的确认操作,
从体感来看,怎么着都不可能是页面1-2秒轮询发起GET请求的,实际是通过堵塞等待的长连接,近乎实时的获得信息。 (这个应该像nginx有类似的长连接事件驱动插件)

客户端确定登录成功请求了一个Url:
http://short.weixin.qq.com/cgi-bin/micromsg-bin/extdeviceloginconfirmok

拉我本人的头像链接:
http://wx.qlogo.cn/mmhead/ver_1/waWFJgkZsUDRLHiaicRUtciciajfjWYs51ia9rCrWRDFoiav4vIehxImHppzaB9tpF5wUyBVork0jR7DjaKJ4QSqXB1Q/0?randid=6772

这个估计是通知谁上线了吧(信息是从服务端返回时就已经加密了的看不到真实内容,我个人估计连Cookie都是放在base64包里进行传输的:This request did not send any cookie data.
):
http://short.weixin.qq.com/cgi-bin/micromsg-bin/statusnotify

有没有消息作个消息同步请求:filename=micromsgresp.dat
http://short.weixin.qq.com/cgi-bin/micromsg-bin/mmsnssync
#  Result  Protocol  Host  URL  Body  Caching  Content-Type  Process  Comments  Custom  
4  200  HTTP  short.weixin.qq.com  /cgi-bin/micromsg-bin/mmsnssync  1,617    application/octet-stream
POST http://short.weixin.qq.com/cgi-bin/micromsg-bin/getupdateinfo //检查版本更新
200 OK (application/octet-stream)
Content-Disposition: attachment; filename=micromsgresp.dat
Content-Length: 94
Content-Type: application/octet-stream
Connection: close
data:application/octet-stream;base64,el8AAAAAAJo4D8tCCA8bQh9cbV6RU4VmAHE5OQAAqdUlTCaKMpirKWKzwjBUbwQHkLqmjIErUMDNq6VIxOKn1T9MRBAAnUIgREZ3+tx+XewRORJ1naCw09rRSrq7rw==

获取用户的头像Http地址信息:
http://short.weixin.qq.com/cgi-bin/micromsg-bin/batchgetheadimg

抓一个看到,的确是用户头像,如这个:
http://wx.qlogo.cn/mmhead/ver_1/z6OgOwB1t6HiaQWF6n6KfEsP9O4CeEvDhUYujWrsRvSib0Fa7DYyYtu7UzzMEkNZ1A8cUh5Wlvy69PQuQ8AViaZbsaSaXnDcgYmkTgxpOheIx8/132?randid=673

获取在线情况:
http://short.weixin.qq.com/cgi-bin/micromsg-bin/getonlineinfo


正在输入 :
http://minorshort.weixin.qq.com/cgi-bin/micromsg-bin/clientperfreport

如果长时间不登录,重新扫码登录时,会向服务端请求一次(估计是销毁掉PC客户端的标识罢):
http://short.weixin.qq.com/cgi-bin/micromsg-bin/extdeviceloginconfirmcancel

所以说,核心过程应该是:浏览器获得一个临时 id,通过长连接等待客户端扫描带有此 id 的二维码后,从长连接中获得客户端上报给 server 的帐号信息进行展示。 并在客户端点击确认后,获得服务器授信的令牌,进行随后的信息交互过程。 在超时、网络断开、其他设备上登录后,此前获得的令牌或丢失、或失效,对授权过程形成有效的安全防护。


php有个很方便的用法是在定义函数时可以直接给参数设默认值,如:

function simue ($a=1,$b=2){
  return $a+$b;
}
echo simue(); //输出3
echo simue(10); //输出12
echo simue(10,20); //输出30
但js却不能这么定义,如果写function simue(a=1,b=2){}会提示缺少对象。

js函数中有个储存参数的数组arguments ,所有函数获得的参数会被编译器挨个保存到这个数组中。于是我们的js版支持参数默认值的函数可以通过另外一种变通的方法实现,修改上例:

function simue (){
  var a = arguments[0] ? arguments[0] : 1;
  var b = arguments[1] ? arguments[1] : 2;
  return a+b;
}
alert( simue() ); //输出3
alert( simue(10) ); //输出12
alert( simue(10,20) ); //输出30

摘自:http://www.cnblogs.com/RightDear/archive/2013/06/26/3156652.html
——————————————————————————————————————————————————————————
自己实践:


fastEchoMessage("编号"+equipNum+"温度设失败。","red");
背景:对于书上一些连接mysql的例子,总是像写c语言一样,一行一行的,直接写下去,确实好看明白,但是在实际使用中,如果暴露出错误到前端页面是不太好的,这时候需要try catch来捕获这些错误,对于mysql的连接句柄的密码是否正确可以用if直接判断其返回值,再用throw new exception("Sorry,could not connect to mysql.");而对于一些非密码的网络及数据库,得用上catch,网上有一篇文章就有这样的类似介绍。



自己简单实践如下,如果密码错误则会捕获并报如下信息,而不是直接抛出:
一)来个设置温度是否成功了,并无从db查询的数据返回的:

密码错会报如下错,前端用json去解析判断并提示用户即可,自己也好查错不是:
{"opt":"setTemperatureValue","status":-1,"errMsg":"Sorry,could not connect to mysql."}

二)来个有数据查询并返回的简单示例:

(1)错误结果:
{"opt":"getTemperatureValue","status":-1,"errMsg":"Sorry,could not connect to mysql."}
(2)正确结果:
{"opt":"getTemperatureValue","status":-1,"curTempOne":"40.2","curTempTwo":"38.6","curTempSetOne":"35.5","curTempSetTwo":"55.4"}
原始代码参考来源:http://bbs.csdn.net/topics/240078038
分页: 56/339 第一页 上页 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 下页 最后页 [ 显示模式: 摘要 | 列表 ]