编写Shell 脚本时,如果变量的值是一个路径的话,我们可以轻易的解析路径path信息,就像php中的pathinfo一样,来获取当中的路径(dirname) 或档名(basename).

变量		结果			说明
${path}		/usr/local/bin/emacs	原本值
${path#/*/}	local/bin/emacs		去除第一个资料夹
${path##/*/}	emacs			只取档名(basname)
${path%/*}	/usr/local/bin		只取路径(dirname)
${path:15}	emacs			取第15个字元后的所有字元
${path:10:4}	/bin			取第10个字元后的4 个字元

最后两个用法和Java 的subString 相同。


阅读全文

PHP 输出 $_SERVER[‘HTTP_USER_AGENT’]

<?php
var_export($_SERVER);
exit;
?>

Ipad:

[HTTP_HOST] => 10.130.150.186
    [HTTP_USER_AGENT] => Mozilla/5.0 (iPad; U; CPU OS 4_2_1 like Mac OS X; zh-cn) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8C148 Safari/6533.18.5
    [HTTP_ACCEPT] => application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    [HTTP_ACCEPT_LANGUAGE] => zh-cn
    [HTTP_ACCEPT_ENCODING] => gzip, deflate
    [HTTP_CONNECTION] => keep-alive
    [PATH] => /usr/local/sbin

Firefox x64 4.0b13pre on Windows 7 x64:

[HTTP_HOST] => localhost
    [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:2.0b13pre) Gecko/20110307 Firefox/4.0b13pre
    [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    [HTTP_ACCEPT_LANGUAGE] => zh-cn,en-us;q=0.7,en;q=0.3
    [HTTP_ACCEPT_ENCODING] => gzip, deflate
    [HTTP_ACCEPT_CHARSET] => UTF-8,*
    [HTTP_KEEP_ALIVE] => 115
    [HTTP_CONNECTION] => keep-alive
    [PATH] => C:Program Files

Firefox x86 3.6.15 on Windows 7 x64:


阅读全文

需要保存一些创建表的语句,这些语句的表前缀是可以设置的一个变量,就需要用到以下方法了,如果谁有更好的方法,请告知,谢谢。

mysql中使用变量执行sql语句:

set @PREFIX = 'fk_';
create database fk_manage;
use fk_manage;
set @QUERY = concat("create table ", @PREFIX, "user(
    id int(10) primary key auto_increment,
    name varchar(25) not null,
    password varchar(32) not null,
    email varchar(50),
    reg_date TIMESTAMP default 0,
    last_login TIMESTAMP default CURRENT_TIMESTAMP on update current_timestamp);");
prepare execsql from @QUERY;
execute execsql;

set @QUERY = concat(“create table “, @PREFIX, “role( id int(10) primary key auto_increment, name varchar(25) not null, action varchar(32) not null, inuse tinyint default 1 comment ‘1 for use,0 for stop’, create_date TIMESTAMP default CURRENT_TIMESTAMP);”); prepare execsql from @QUERY; execute execsql;

deallocate prepare execsql;


阅读全文

svn: 提交失败(细节见下):<br /> svn: 无法使用外部编辑器取得日志信息;请尝试设定 $SVN_EDITOR 环境变数,或是使用 --message (-m) 或 --file (-F) 选项<br /> svn: 没有一个 SVN_EDITOR,VISUAL 或 EDITOR 环境变数被设定,执行时期的设定中也没有 'editor-cmd' 选项

解决方法: 设置vim为你的SVM_EDITOR

命令:

export SVN_EDITOR=vim

如果希望该环境变量能永久生效,把以下这行添加到你的个人文档目录下的.bash_profile文件中即可。文件路径~/.bash_profile

export SVN_EDITOR=vim

阅读全文

svn在Linux下的使用(svn命令)

1、将文件checkout到本地目录

svn checkout path(path是服务器上的目录)

例如:svn checkout svn://192.168.1.1/pro/domain

简写:svn co

2、往版本库中添加新的文件

svn add file

例如:svn add test.php(添加test.php)

svn add *.php(添加当前目录下所有的php文件)

3、将改动的文件提交到版本库

svn commit -m “LogMessage“ [-N] [–no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)

例如:svn commit -m “add test file for my test“ test.php

简写:svn ci


阅读全文

冒个泡

单纯的冒个泡,告诉大家,我还健在。。。

只不过由于最近在工作上有点变动,所以最近没咋更新了。现在又开始工作了,以后有什么心得,会总结下来跟大家分享的。


阅读全文

作者的图片

DigDeeply

Technology Stack: PHP/Openresty/GoLang, and so on…

Web Development Engineer

Beijing China