- 浏览: 63314 次
最新评论
文章列表
上周末颇花了些心思写出来的, 首发blog链接 http://blog.hickwu.com/posts/336/ 作者 Hick 如有更新, 我会在首发链接修改.
时不时有人冒出来说有 Emacs 教徒因为小拇指按 ctrl 太多导致 XXX 病, 不要用 Emacs! 有 XXX 病的人估计跟得出这个结论的人类似, 有这样的特质: 不懂得思考或者懒得主动改变. Emacs 教里不但有 evil/spacemacs 这样的 vi/vim 一族, 也有把 capslock 改成 ctrl 的键盘党, 还有改变按键习惯的行动派. 这才彰显自由的魅力, 是
p126 操作文件的时候我们需要使用相关的系统调用(system call),不过一般我们不直接使用他们,而是通过一些 io 库函数来操作,他们可以对文件操作进行 buffer 等处理。
p127 从系统调用的级别来说,linux 把一切都当文件来,都可以进行基本的 open, close, read, write, ioctl 操作。
文件的创建时间等属于值保存在文件系统中所谓的文件信息节点 inode 中,而目录就是一个保存节点数以及文件名的文件。删除一个文件的时候,往往只是从”目录文件”中删除这个文件的相关信息,并减少目录中的节点数;同时,每个文件都有一个 link 数,一般 link ...
- 2008-12-10 14:34
- 浏览 957
- 评论(0)
p76 列表(list) AND 列表和 OR 列表跟 C 语言里的逻辑运算类似。AND 列表类似 “statement1 && statement2 && statement3″, OR 列表形式 “statement1 || statement2 || statement3″ 。为了实现更复杂的语句列表,有时候可以使用 {} 包含的语句块(还没有实践):
get_confirm && { grep -v “$cdcatnum” $tracks_file > $temp_file cat $temp_file > $tracks ...
- 2008-12-08 05:32
- 浏览 847
- 评论(0)
比计划来得晚一些,不过终究还是出来了
Python 3.0 (a.k.a. “Python 3000″ or “Py3k”) is a new version of the language that is incompatible with the 2.x line of releases. The language is mostly the same, but many details, especially how built-in objects like dictionaries and strings work, have changed considerably, and a ...
- 2008-12-05 14:52
- 浏览 767
- 评论(0)
p54 文件描述符(fd,又称为文件句柄) 0 为标准输入文件,1 为标准输出文件,2 为错误信息输出文件。命令行下可以对他们进行重定向,比如下面的命令会把错误信息输出到文件 err.log : kill -HUP 1234 >killout.txt 2>err.log 。 第一个重定向 >killout.txt 实际上是省略了 1 ,完整的写法为 1>killout.txt 。注意错误被重定向以后就不会在终端输出了,需要到重定向文件/设备中去查看。如果需要把错误和标准输出都重定向到一个文件,可以这样:kill -HUP 1234 >killouterr.txt 2 ...
- 2008-12-04 15:22
- 浏览 886
- 评论(0)
回头来看 Beginning Linux Programming 的 shell 部分还是有不少收获,其中一个 dialog 的工具,就激发了我写个简单的选择 ip 的小脚本的想法: 把 ip 分类保存成文件,每个文件中的一行(unix 风格换行符)为一个 ip,然后把下面的脚本的 host_path 值修改成这些 ip 文件所在目录—该目录下不要有其他文件即可。
# list all the host files
host_path=/home/hick/hosts/
# compose the menu tag
menu_tag=''
for file in $(ls $host_ ...
- 2008-12-02 15:42
- 浏览 1137
- 评论(0)
前面大多数是看过了很多遍的一些 Unix/Linux 渊源和背景。
p38 Linux 应用程序可以分为可执行程序(二进制)和脚本(文本)两种。
p39 linux shell 下输入命令以后,shell 都会在 PATH 环境变量中设置的路径中查找可执行文件。常见路径:
. /bin 用于系统启动的程序
. /usr/bin 非系统的用户可执行程序,一般都是一些标准的 linux 程序
. /usr/local/bin 同样是用户级的可执行程序,一般是系统安装完成以后另外再安装的程序
作为超级用户,一般 PATH 中还包括 /sbin/ /usr/sbin 。
p42 头文件,l ...
- 2008-11-30 08:07
- 浏览 737
- 评论(0)
一开始是搬起 APUE (Advanced Programming of Unix Enviroment) 就啃,尽管是中文版,发现还是基础知识薄弱,C 语言和 linux 系统知识都还欠缺,高估了自己了,这 Advanced 还真不是盖的 :)
Beginning Linux Programming(第四版) 作为 linux 编程入门确实还不错—尽管是全英文版。整的来说,以读写 CD 为例子贯穿全书的手法不错,不过对 CD 读写实在提不起兴趣来,个人感觉如果作者一写一个 server/web server 作为导向,涉及的面应该比较广,也更容易提起读者兴趣来。
看第一遍的笔记全在 pdf ...
- 2008-11-30 08:04
- 浏览 1480
- 评论(0)
看了两天 Emacs Muse ,感觉 Muse 跟 Emacs 结合紧密;用于写文档的话,跟我一直用的 Asciidoc 相比,各有所长。对我来说,更合适的道路是学习下 elisp ,把 Muse 文档在 Emacs 上的一些优秀表现应用到 Asciidoc 的 emacs mode: doc-mode 中去。 Muse 语法比 AsciiDoc 还要简单,简单到有些遗憾,不支持 NOTE 等。在 Emacs 上的表现能力(以可视化效果显示特殊标记、链接回车访问等)占优,另外能够让多个文档结合更紧密。转换格式差不多,只不过一个用 python 一个用 elisp 。但是对我来说,熟悉 Pyth ...
- 2008-11-29 14:30
- 浏览 1301
- 评论(0)
以前一直在 windows 下用 NTEmacs 22, http://ntemacs.sourceforge.net ,有一年多不见更新了。找了个最近更新比较勤快
http://www.ourcomments.org/cgi-bin/emacsw32-dl-latest.pl
开始切换到 Emacs 23 。
另外,cybergene@水木社区编译了一个比较新的 Emacs23 版,据说还支持 xpm/jpg/png/gif 等图片的显示。介绍参见 http://www.newsmth.net/bbscon.php?bid=573&id=70514&ftype=1&am ...
- 2008-11-27 13:14
- 浏览 12711
- 评论(0)
gnuplot 能够按照指定的数据生成二维图或三维图,提供丰富的可选图表样式。当然对复杂的三维图,建议使用专业 3D 绘图软件。这是一款非一般意义上的开源的”公开源代码”的免费软件—copyright reserved。有 windows 版,官方网站 http://www.gnuplot.info 。生成的图片参见上文 利用 vmstat+gnuplot+python脚本生成CPU和内存使用率图表
安装好以后运行 gnuplot 即可进入交互模式。然后用下面的简单命令可以在当前目录创建一个 sin(x) 的图表文件 sin.gif(注意:下面的输出代码中的某些英文引号可能被替换成了中文引号 ...
- 2008-11-24 13:46
- 浏览 1225
- 评论(0)
这个 blog 被注入一段莫名其妙的字符串有几个月了,一直比较忙,没时间照顾。主机上操作不便, tar 包的时候报错: tar: Error exit delayed from previous errors 。 看起来有些不知所云,由于多层错误程序退出? 搜索了下没有找到可用信息。发现有个子文件夹竟然没有读权限,chmod 以后,再次 tar 时 ok 了。
几个月不来这里照镜子,都有点不认识 hick 了 …
嘿嘿,可贵的是,激情一直在燃烧。
- 2008-07-05 09:13
- 浏览 4063
- 评论(0)
尽量避免使用 CSS 表达式
使用外部 js 和 css 样式
DNS 解析
压缩 Javascript
避免重定向
移除重复脚本
配置 Etag
使得 Ajax 请求可 Cache
续 http://www.hickwu.com/?p=228
尽量避免使用 CSS 表达式
CSS 表达式可以根据条件来动态的设置 css 的属性,IE 5 以及以后版本都支持 css 表达式。表达式部分就是 js 代码。
background-color: expression( (new Date()).getHours( )%2 ? "#B8D4FF" : & ...
- 2008-02-28 00:41
- 浏览 828
- 评论(0)
续 http://www.hickwu.com/?p=223
使用 CDN
指定页面过期时间
gzip 压缩
把样式表放在最上面
把脚本放在最下面
使用 CDN
CDN: Content Delivery Network ,内容分发网络。由于网络的差异性,尤其是我国南北电信网通的差异,网络速度容易成为用户访问慢的因素。而 CDN 提供商则会通过在不通的网络环境做镜像来解决网络的差异性,尽量使各种网络环境下的用户能够流畅的拉取页面。需要注意的是,CDN 基本上只用来分发静态内容。
文章中只大概列举了使用 CDN 的大网站的情况以及美国提供 CDN 的服务商,没有太多 ...
- 2008-02-27 00:43
- 浏览 763
- 评论(0)
一般来说,windows 下操作系统和浏览器把某域名解析为 ip 地址以后,都会把解析结果做 cache ,也就是在一定时间内,该域名会一直被解析为该 ip ,而不管该域名对应的 ip 是否变化或者还绑定了其他 ip 。而浏览器通常都会忽略操作系统的 dns cache 。操作系统的 cache 可以通过 ipconfig /flushdns 命令来清除,而浏览器的 dns cache ,则一般需要启动一个新的浏览器进程(ie 的浏览器 dns cache 是以进程为基本单元的)。
在 ping 一个域名的时候,得到的 TTL 表示 Time To Live ,表示的就是建议操作系统对 dn ...
- 2008-01-30 04:32
- 浏览 2204
- 评论(0)