apache配置
Alias /MagickStudio/ "/var/www/MagickStudio/"<Directory "/var/www/MagickStudio"> AllowOverride None Options +ExecCGI AddHandler cgi-script .cgi .pl Allow from all Order allow,deny</Directory>[@more@]p0a
emacs lisp learning
current-bufferbuffer-file-namebuffer-namepoint point minpoint maxpush-mark将一个标记设置在光标移动前所处的位置goto-char根据偏移量移动.goto-char 0=goto-char (point-min)goto-char (point-max)get-bufferconcatsubstringeval-last-sexp(begin-of-line 1)(skip-chars-forward "t")set-bufferbuffer-sizepointget-buffer-create(insert-buffer-substring oldbuf start)得到列表的长度(length '(buttercup test2))(length (cons 'test '(test3 test3)))(nthcdr 1 '(test1 test2))(nth 0 '(test1 test2))[@more@]
ffmpeg,mencoder安装
yum install gstream-plugin*yum install lameyum install ffmpegyum install mplayer把 essential-20061022.tar.bz2拷贝到/usr/local/lib/win32问题解决mencoder "E:test.m2p" -o "E:output.flv" -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:dia=4:cmp=6:vb_strategy=1 -vf scale=512:-3 -ofps 12 -srate 22050[@more@]
Parrot安装问题解决
Parrot安装问题解决系统FC5: 错误:libparrot.so.0.4.8,cannot open share library解决方案:/etc/ld.so.conf添加/usr/local/libldconfig[@more@]
awk使用手册
什么是awk? 你可能对UNIX比较熟悉,但你可能对awk很陌生,这一点也不奇怪,的确,与其优秀的功能相比,awk还远没达到它应有的知名度。awk是什么?与其它大多数UNIX命令不同的是,从名字上看,我们不可能知道awk的功能:它既不是具有独立意义的英文单词,也不是几个相关单词的缩写。事实上,awk是三个人名的缩写,他们是:Aho、(Peter)Weinberg和(Brain)Kernighan。正是这三个人创造了awk---一个优秀的样式扫描与处理工具。 AWK的功能是什么?与sed和grep很相似,awk是一种样式扫描与处理工具。但其功能却大大强于sed和grep。awk提供了极其
pel文件测试
文件测试操作符 操作符描述-b是否为块设备-c 是否为字符设备 -d 是否为目录 -e 是否存在 -f 是否为普通文件 -g 是否设置了setgid位 -k 是否设置了sticky位 -l 是否为符号链接 -o 是否拥有该文件 -p 是否为管道 -r 是否可读 -s 是否非空 -t 是否表示终端 -u 是否设置了setuid位 -w 是否可写 -x 是否可执行 -z 是否为空文件 -A 距上次访问多长时间 -B 是否为二进制文件 -C 距上次访问文件的inode多长时间 -M 距上次修改多长时间 -O 是否只为“真正的用户”所拥有 -R 是否只有“真正的用户”可读 -S 是否为socket -T 是否为文本文件 -W 是否只
POSIX多线程
线程是有趣的了解如何正确运用线程是每一个优秀程序员必备的素质。线程类似于进程。如同进程,线程由内核按时间分片进行管理。在单处理器系统中,内核使用时间分片来模拟线程的并发执行,这种方式和进程的相同。而在多处理器系统中,如同多个进程,线程实际上一样可以并发执行。那么为什么对于大多数合作性任务,多线程比多个独立的进程更优越呢?这是因为,线程共享相同的内存空间。不同的线程可以存取内存中的同一个变量。所以,程序中的所有线程都可以读或写声明过的全局变量。如果曾用 fork() 编写过重要代码,就会认识到这个工具的重
Scheme note(1)
簡介(Introduction)Scheme 是1975年誕生於MIT 人工智慧實驗室的一門程式語言。它是一套函數式(functional)的設計語言,由LISP衍生而來,主要應用在人工智慧這個領域上,或是結構相當地複雜難以用傳統語言描述之,擅長處理符號。 Scheme和 LISP 是很有淵源的都屬於函數語言 (functional programming languages)意思是說,盡量把所有的函數都想成/寫成數學上的函數。函數語言都以lambda calculus 為理論基礎。 Scheme被稱為程式語言的皇后。 Scheme 是弱型別語言(weakly typed language),變數本身沒有型別,綁在變數上的值才有型別, 而不是
Data types
A data type is a collection of related values. These collections need not be disjoint, and they are often hierarchical. Scheme has a rich set of data types: some are simple (indivisible) data types and others are compound data types made by combining other data types.2.1 Simple data typesThe simple data types of Scheme include booleans, numbers, characters, and symbols.2.1.1 BooleansScheme's booleans are #t for true and #f for false. Scheme has a predicate procedure called boolean? that checks
Scheme 语言概要(上)
作为Lisp 变体,Scheme 是一门非常简洁的计算语言,使用它的编程人员可以摆脱语言本身的复杂性,把注意力集中到更重要的问题上,从而使语言真正成为解决问题的工具。本文分为上、下两部分来介绍 scheme 语言。一.Scheme语言的特点Scheme语言是LISP语言的一个方言(或说成变种),它诞生于1975年的MIT,对于这个有近三十年历史的编程语言来说,它并没有象C++,java,C#那样受到商业领域的青睐,在国内更是显为人知。但它在国外的计算机教育领域内却是有着广泛应用的,有很多人学的第一门计算机语言就是Scheme语言。它是一个小巧而又强大的语
linux下读取目录
#include<stdio.h>#include <dirent.h>int main(int argc, char *argv[]){ DIR *dp; struct dirent *dirp; if (argc != 2) printf("usage: ls directory_name"); if ((dp = opendir(argv[1])) == NULL) printf("can't open %s", argv[1]); while ((dirp = readdir(dp)) != NULL) printf("%sn", dirp->d_name); closedir(dp); // exit(0); return 0;}[@more@]
Perl 中的正则表达式
正则表达式的三种形式 正则表达式中的常用模式 正则表达式的 8 大原则 正则表达式是 Perl 语言的一大特色,也是 Perl 程序中的一点难点,不过如果大家能够很好的掌握他,就可以轻易地用正则表达式来完成字符串处理的任务,当然在 CGI 程序设计中就更能得心应手了。下面我们列出一些正则表达式书写时的一些基本语法规则。--------------------------------------------------------------------------------9.1 正则表达式的三种形式首先我们应该知道 Perl 程序中,正则表达式有三种存在形式,他们分别是:匹配:m/<regex
内存管理 (2)
7.7 杜绝“野指针”“野指针”不是NULL指针,是指向“垃圾”内存的指针。人们一般不会错用NULL指针,因为用if语句很容易判断。但是“野指针”是很危险的,if语句对它不起作用。“野指针”的成因主要有两种:(1)指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始化,要么将指针设置为NULL,要么让它指向合法的内存。例如 char *p = NULL; char *str = (char *) malloc(100);(2)指针p被free或者delete之后,没有置为NULL,让人误以为p
内存管理 (1)
程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本章的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。7.1内存分配方式内存分配方式有三种:(1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。(2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中
文件
文件的基本概念 所谓“文件”是指一组相关数据的有序集合。 这个数据集有一个名称,叫做文件名。 实际上在前面的各章中我们已经多次使用了文件,例如源程序文件、目标文件、可执行文件、库文件 (头文件)等。文件通常是驻留在外部介质(如磁盘等)上的, 在使用时才调入内存中来。从不同的角度可对文件作不同的分类。从用户的角度看,文件可分为普通文件和设备文件两种。 普通文件是指驻留在磁盘或其它外部介质上的一个有序数据集,可以是源文件、目标文件、可执行程序; 也可以是一组待输入处理的原始数据,或者是一组输出的结果。对于
Manipulating Strings
String Length${#string} expr length $string expr "$string" : '.*' stringZ=abcABC123ABCabc echo ${#stringZ} # 15 echo `expr length $stringZ` # 15 echo `expr "$stringZ" : '.*'` # 15Length of Matching Substring at Beginning of Stringexpr match "$string" '$substring' $substring is a regular expression.expr "$string" : '$substring' $substring is a regular expression.stringZ=abcABC123ABCabc # |------| echo `expr match "
Testing Your Knowledge of Tests
if [ -f $HOME/.Xclients ]; then exec $HOME/.Xclients elif [ -f /etc/X11/xinit/Xclients ]; then exec /etc/X11/xinit/Xclients else # failsafe settings. Although we should never get here # (we provide fallbacks in Xclients as well) it can't hurt. xclock -geometry 100x100-5+5 & xterm -geometry 80x50-50+150 & if [ -f /usr/bin/netscape -a -f /usr/share/doc/HTML/index.html ]; then netscape /usr/share/doc/HTML/index.html & fi fi[@mo
Comparison operators (binary)
integer comparison-eq is equal toif [ "$a" -eq "$b" ]-ne is not equal toif [ "$a" -ne "$b" ]-gt is greater thanif ["$a" -gt "$b" ]-ge is greater than or equal toif [ "$a" -ge "$b" ]-lt is less thanif [ "$a" -lt "$b" ]-le is less than or equal toif [ "$a" -le "$b" ]< is less than (within double parentheses)(("$a" < "$b"))<= is less than or equal to (
File test operators
Returns true if...-e file exists-f file is a regular file (not a directory or device file)-s file is not zero size-d file is a directory-b file is a block device (floppy, cdrom, etc.) -c file is a character device (keyboard, modem, sound card, etc.)-p file is a pipe-h file is a symbolic link-L file is a symbolic link-S file is a socket-t file (descriptor) is associated with a terminal deviceThis test option may be used to check whether the stdin ([ -t 0 ]) or stdout ([ -t 1 ]) in a given script
bash scripts(5)
Example 5-7. Using shift#!/bin/bash # Using 'shift' to step through all the positional parameters. # Name this script something like shft, # and invoke it with some parameters, for example # ./shft a b c def 23 skidoo until [ -z "$1" ] # Until all parameters used up... do echo -n "$1 " shift done echo # Extra line feed. exit 0[@more@]s