7/30/2007

PS shell variable

Changing your Command Prompt (the PS1 shell variable)


The UNIX shell displays a command prompt when the system is ready to accept commands on the command line. The default command prompt is a single character (typically $ or #).

Changing or customizing the command prompt makes your life easier when jumping from system to system, or when logging in as multiple users on a single system (e.g. your personal/non-privileged account and root). To customize your prompt you will need to modify the PS1 shell variable.

PS1 stands for "prompt string 1" and defines the primary prompt string. If you wanted your command prompt to contain the current username and hostname separated by the "@" character and enclosed in brackets (e.g. [root@hawk] #), PS1 would need to be re-defined with the following command(s):


export PS1="[${LOGNAME}@$(hostname)] # "

or

PS1="[${LOGNAME}@$(hostname)] # "
export PS1

The shell variable LOGNAME contains the username you logged in with, and $(hostname) will execute the hostname command which will print the name of the current host system. Exporting PS1 makes it available to any subshells you create during the login session.

Since PS1 in this example was re-defined on the command line, it will be lost as soon as you log out. To retain this definition across login sessions you will need to add the previous command(s) to your shell initialization file (.profile if the Korn shell is your default shell).

Korn Shell Arrays

$ colors[0]=RED
$ colors[1]=GREEN
$ colors[2]=BLUE

Alternatively, you can perform the same assignments using a single command:

$ set -A colors RED GREEN BLUE

Adding a dollar sign and an opening brace to the front of the general syntax and a closing brace on the end allows you to access individual array elements:

${arrayname[subscript]}

Using the array we defined above, let's access (print) each array element one by one:

$ print ${colors[0]}
RED
$ print ${colors[1]}
GREEN
$ print ${colors[2]}
BLUE
$

If you access an array without specifying a subscript, 0 will be used:

$ print ${colors[]}
RED
$

The while construct can be used to loop through each position in the array:

$ i=0
$ while [ $i -lt 3 ]
> do
> print ${colors[$i]}
> (( i=i+1 ))
> done
RED
GREEN
BLUE

7/29/2007

UNIVERSAL CUSTOMIZER 1.0.0.8

http://www.u3community.com/viewtopic.php?t=४३४
这个冬冬好用!

This software will customize the U3-CDROM to any ISO file you want.

WARNING: Please backup all data on your flash drive before running this software. It is recommended that you backup the U3 CD-ROM before running this software. To do this follow these directions.

    1. Go to My Computer on the Desktop.
    2. Right-Click where it says 'U3-CDROM' are something similar to that name.
    3. Once the menu comes up click 'Open'.
    4. Now simultaneously press 'CTRL' and the 'A' key on the keyboard.
    5. Now simultaneously press 'CTRL' and the 'C' key on the keyboard.
    6. Now go to your desktop and make a new folder (name it anything like U3BACKUP).
    7. Go to your new folder.
    8. Now simultaneously press 'CTRL' and the 'V' key on the keyboard.
    9. Done.


HOW TO USE UNIVERSAL CUSTOMIZER 1.0.0.8

    1. Download the software Universal Customizer 1.0.0.8.
    2. Extract to the Desktop and execute Universal_Customizer.
    3. Insert a U3 Drive into your PC.
    4. Follow the on-screen instructions.
    5. Done.


INFORMATION
Updates: Changed the version variable to '*' so it should now customize all U3 Drives without a problem.
New: Packaged the zip file with a command-line ISO maker.

I scanned the files with Norton AntiVirus 2006.

This computer application is not able to make a classic(normal) flash drive U3 compliant.

The pre-packaged 'U3CUSTOM.ISO' file is the loader for the U3 SwitchBlade/Hacksaw.

You might have to run this software 2 or more times before it works properly (you might get an error message) and manually put your files back on the flash drive and re-install your U3 software titles.

To make your own 'U3CUSTOM.ISO' file follow these directions. (XP/NT/2003 Only)

    1. Navigate to the directory where you extracted Universal_Customizer.zip to and open the 'U3CUSTOM' folder.
    2. Copy your custom files* to that folder.
    3. Go to the parent directory.
    4. Execute 'ISOCreate.cmd' (It will create an ISO with the CD name of 'U3CDROM')
    5. Launch 'Universal_Customizer' and your done.

*Use the files in the folder where you backed up your U3 CD-ROM if you want to restore your U3 LaunchPad.

U3 FIRMWARE ISO's
Memorex LaunchPad
SanDisk LaunchPad

How to use these ISO files

    1. Download an ISO from one of the above links to the directory where you extracted UC 1.0.08 to in the 'BIN' folder.
    2. Rename your current 'U3CUSTOM' file to 'U3CUSTOM.OLD' or something(just to keep that file).
    3. Rename your newly downloaded ISO file to 'U3CUSTOM'.
    4. Go to the parent directory and execute 'Universal_Customizer'.
    5. Done.

7/19/2007

关于db2move

昨天林翊老大聊起db2move,问知不知道有什么选项可以作client load。很白痴的老实说不知道,呵呵,以前用db2move是基本只用export,而import/load都是用脚本作的。工具的选项只是大概扫过,很多细节问起来还是不查资料不知道的。

一直认为db2move是一个懒人工具,是一个很简单的东西。它做的那些事情如果以shell实现,也不是什么大不了的事情,事实上,大部分情况,很简单,也许只是两行脚本的事情.

db2 9对db2move做了不少扩充,比如copy schema之类的(?印象不深了)。回头有时间仔细讨论一下。恩,以后可以慢慢把重要的好玩的工具慢慢这么搞搞。

nc4010患难记

昨天上午系统ghost中途失败,惨了。

这台nc4010没有光驱,我也没有准备usb-cdrom,所以没有办法以cdrom重装。

手头diy的u盘不能支持usb启动,失败。

把硬盘取出想其他机器上强行ghost恢复c分区:居然找不到可以将硬盘从托架取下的合适的螺丝刀,真是服了它了--外壳上固定屏幕的那几个螺丝我也不找不到合适工具来紧固。晕倒。

想起以前克总那个u3的sandisk,嗯,买个这个回头模拟usb光驱应该可以。找deal,没有,4g现在最少也得花不到50刀,2g的25$.有deal的时候便宜一倍啊,55。

就在要下单前,忽然撇见从国内带来的3.5寸移动硬盘,对啊,偶那里不是还有一个台式机么,嘿嘿。

把sotec拆开,光驱的数据线和电源线都换成硬盘盒子的电路,加电,...,ghost。。。

爽啊。


后继安排:
1. 将台式机的dvd光驱卸下,于硬盘盒合作当作外置usb光驱。
2. 发现这个台式机有一个compact disk的读写driver,玩玩。。。
3. 当usb光驱到手,那么4010重装就更灵活,玩玩ubuntu和opensuse了:)

7/15/2007

SC – Windows service management

DESCRIPTION:

SC is a command line program used for communicating with the

NT Service Controller and services.

USAGE:

sc <server> [command] [service name] <option1> <option2>...


 

The option <server> has the form "\\ServerName"

Further help on commands can be obtained by typing: "sc [command]"

Commands:

query-----------Queries the status for a service, or

enumerates the status for types of services.

queryex---------Queries the extended status for a service, or

enumerates the status for types of services.


start-----------Starts a service.

pause-----------Sends a PAUSE control request to a service.


interrogate-----Sends an INTERROGATE control request to a service.


continue--------Sends a CONTINUE control request to a service.

stop------------Sends a STOP request to a service.

config----------Changes the configuration of a service (persistant).

description-----Changes the description of a service.

failure---------Changes the actions taken by a service upon failure.

qc--------------Queries the configuration information for a service.

qdescription----Queries the description for a service.

qfailure--------Queries the actions taken by a service upon failure.

delete----------Deletes a service (from the registry).

create----------Creates a service. (adds it to the registry).

control---------Sends a control to a service.

sdshow----------Displays a service's security descriptor.

sdset-----------Sets a service's security descriptor.

GetDisplayName--Gets the DisplayName for a service.

GetKeyName------Gets the ServiceKeyName for a service.

EnumDepend------Enumerates Service Dependencies.


 

The following commands don't require a service name:

sc <server> <command> <option>

boot------------(ok | bad) Indicates whether the last boot should

be saved as the last-known-good boot configuration

Lock------------Locks the Service Database

QueryLock-------Queries the LockStatus for the SCManager Database

EXAMPLE:

sc start MyService


 

Would you like to see help for the QUERY and QUERYEX commands? [ y | n ]: y

QUERY and QUERYEX OPTIONS :

If the query command is followed by a service name, the status

for that service is returned. Further options do not apply in

this case. If the query command is followed by nothing or one of

the options listed below, the services are enumerated.

type= Type of services to enumerate (driver, service, all)

(default = service)

state= State of services to enumerate (inactive, all)

(default = active)

bufsize= The size (in bytes) of the enumeration buffer

(default = 4096)

ri= The resume index number at which to begin the enumeration

(default = 0)

group= Service group to enumerate

(default = all groups)

SYNTAX EXAMPLES

sc query - Enumerates status for active services & drivers

sc query messenger - Displays status for the messenger service

sc queryex messenger - Displays extended status for the messenger service

sc query type= driver - Enumerates only active drivers

sc query type= service - Enumerates only Win32 services

sc query state= all - Enumerates all services & drivers

sc query bufsize= 50 - Enumerates with a 50 byte buffer.

sc query ri= 14 - Enumerates with resume index = 14

sc queryex group= "" - Enumerates active services not in a group

sc query type= service type= interact - Enumerates all interactive services

sc query type= driver group= NDIS - Enumerates all NDIS drivers

Word 2007

This is a post from word 2007. It's convenient to post from word directly. With all format.

7/11/2007

赞一下averatec的售后服务

averatec 2100, 前几天一时**给弄坏了。键盘塌下去一块,带着里面的硬盘一起牺牲了。给客服打电话,就说硬盘有问题了,从开始有坏道到不能识别的过程讲了一遍,然后拿着给的服务号码ups出去了。

这段时间一直乱七八糟的,都没怎么管这事儿。心里面早做好人家不管的准备了。没想到昨天给寄了过来,新硬盘,键盘也换了;另外,从单子上看连battery都给换了-他们测试认为battery有问题。

赞一个。本来有些后悔买个杂牌本子还不如直接买个dell省心--至少换件当地就可以,现在觉得这个很不错了。一年多了,出的几次问题基本上都是人为的,呵呵,惭愧。

6/26/2007

心情很差

最近心情其实很不好。
我是一个口齿笨拙的人,不太善于表达和排泄心中的情绪,所以就更严重。
这次过来的太仓促,最后的烦乱让心中情绪已经大坏。何必呢
坏情绪已经笼罩了一百多天了,真是恐怖。

6/19/2007

二手台式机

前天晚上,也就是来boston的前一天晚上,买了一台旧电脑作为以后的备份、测试和电话服务器。
奔三866, 384兆内存,60G硬盘,17寸纯平显示器。Sotec品牌。带一对sotec音箱。前置audio,mic,usb还有pc接口。带一普通电脑桌。
五十刀,合人民币不到400块。很满意这个性价比,呵呵。回头装winxp/Ubuntu双系统,然后把betterdba.com在这里建设建设,当作练手玩了。

6/17/2007

Boston Tomorrow

No update these days। I plan to begin some work on relative topics.
I have a draft for Gunning's new books. Sorry to Gunning and Sussan and I will go over it as soon as possible. basicly, I think it is a very different one from what I ever planned.

6/07/2007

my leaving letter

Dear brothers/sisters, my friends, as many of you have already known, tomorrow, Jun.8 will be my last working day.

I own you millions of "thank you". For your help, for your understanding, for what I learn from you...

I'm not cute on beautiful words and just have a very simple wish to all of you:

Have a beautiful life! then, a great career!

Especially to my brothers in ISS and LBS, you deserve it. We're friends from battle field. I sincerely wish you would have a better balance of life and career.

My permanent email address is wyhang@gmail.com, and my msn is yhang_wang@hotmail.com which would be the most convenient way to contact me. keep online!:)

Bow~~~~

With best regards!:)