2009年9月29日星期二

网络图形格式

GIF 图像

   GIF 图像是一种图形交换格式。它是一种位图图像,每个像素都被赋予或映射到一种特定的颜色。一个 GIF 图形最多可以有256中颜色。这些图像通常被用于线画图、文本、徴标或卡通图像,也就是所有不必为了平滑颜色过渡而要求有数千种颜色的图像。用这种方法可以将图像文件压缩,进而减少下载的时间。
   
   GIF 图像格式有3个重要的属性。

   第一个是 GIF 图像支持透明度,用户可以将它其中的一种或多种颜色设定为自动与图像所在页面的背景颜色相匹配。如果在网页上使用圆形或不规则形状的标或插图,在图像的载入过程中会显示出一个矩形框,告诉用户这个图形的实际大小和形状。


GIF 图像支持透明度


   第二个属性是“隔行显示”,网页被浏览时,如果图片的下载让浏览者等待很长时间,那么这个网页将会失去很多的浏览者。GIF 图像的隔行显示功能并不是让图片的下载速度加快,而是通过隔行显示的方式让浏览者在图像的下载过程中能够看到一些内容,而不是一直在一个空白页面中等待,使浏览者在等待下载时不会很枯燥。

   最后一个属性是 GIF 动画。通过 GIF 格式可以制作一些简单的小动画,在使用这些动画时不必另外地使用插件或辅助程序,只需很简单地插入图片就可以了。不过使用这种小动画会增加网页的大小,所以不要过多使用。


JPEG 图像

  JPEG 联合图像专家组图像格式的扩展名可以是 .jpg、.jpeg 或 .jpe ,比较常见的是 .jpg ,JPEG 格式是专门为处理照片而开发的。和 GIF 图像相比,JPEG 格式提供了数百种颜色,每个像素可以有24位的颜色信息,而 GIF 格式只有256色,而每个像素只有8位颜色信息。很显然,JPEG 格式的图片在显示方面比 GIF 强大,但 JPEG 格式没有透明度和动画的功能。

   为了提高 JPEG 图像的可用性,必须要压缩大量的颜色信息。一般来说,图片压缩的程度越高,图像的质量就会越差。在保存图片时会有图片压缩的一些设置,如图所示。


图片压缩后质量对比



   这是在Photoshop中进行的压缩设置。第一张是未经压缩的图片,第二张的压缩程度很低,它在显示方面也较好一些。第三张是中等压缩品质,图像在显示方面可能不是特别的完美,但是它的下载速度快一些。而最后一张就是压缩程度最高的效果,图像在显示方面相对差一些,但是它的下载速度却是最快的,而且当将图片还原为100%比例显示的时会与原图没有太大区别。

    由于每个图形对压缩都会有不同的反应,在使用 JPEG 图像时要对多个图片进行比较,并选择最合适的一张。用户浏览网页中的 JPEG 图像,图像必须要先下载到浏览器中,当在浏览时,还需解压缩。这个步骤会增加网页浏览的时间,不过为了使浏览者能看到质量较好的图片,这个过程是不可或缺的。


png 图像

   PNG 格式的中文扩展名是便携式网络图片。PNG 图像的优点就像 GIF 一样没有像素上的损失,并能像 JPEG 那样呈现更多的颜色。而且 PNG 格式也提供了一种隔行显示方案,在显示速度上比 GIF 和 JPEG 更快一些。同时 PNG 图像又具有 JPEG 图像没有的透明度支持能力。

2009年9月23日星期三

I/O 重新导向及管道

1. I/O 重新导向

  • 输出导向

# ls -al /etc > /test1/ext.txt     -> 将 /etc 目录下的文件数据结果存储到 /test1/etc.txt 文件中


# cat > /test1/editor.txt   -> 成为简单的文字编辑器

I Love Linux !! -> 按 Enter 键
                -> 按 Ctrl+c 就可结束文件编辑

  • 附加输出导向
# cat >> /test1/origin.txt -> 可以在键盘输入内容,附加在源文件之后

  • 输入导向
    输出导向的概念和输入导向刚好相反。前者是将命令或程序的执行结果通过屏幕或文件来输出,但是后者却是将键盘或文件提供命令来执行。

# cat file1

The content of file1 !


# cat < file1


The content of file1 !


    在上述的范例中,二者的输出结果完全相同,但是在执行的程序上却完全不同。在"cat file1"命令中,cat 的标准输入文件为 file1 。因此 cat 在收到输入文件后会执行它的功能而将 file1 的内容显示到屏幕。但是在 "cat < file1"命令中,cat 并没有任何的标准输入文件,而是利用“输入重导(<)”的功能将 file1 传给 cat 当成标准输入文件,最后才能将 file1 的内容显示到屏幕。
   
   在可以接受参数的命令上,输入重导并没有很大的用处,但是在无法接受参数的命令上就相当有用,例如 "patch"

# patch patch-2.4.3-2

# patch < patch-2.4.3-2

   因为patch命令无法接受参数,所以在上述的第一行命令输入后,patch 命令会将 
patch-2.4.3-2 视为参数,因为它无法接受参数,所以画面不会有任何的反应,若是利用输入重导 (<) 来将 patch-2.4.3-2 文件输入给 patch ,则系统就会开始执行源代码更新的操作。

  • 附加输入导向(<< 字符串)
    附加输入导向可以自行定义一个字符串,例如 quit ,系统在收到此字符串前,会持续地将数据输入文件,这个功能经常使用在电子邮件系统中。以下是一个传送电子邮件的范例,假设我们定义的字符串是"Finsh",可以继续输入邮件内容。当输入"Finsh"字符串后,系统便会结束邮件的编辑并且寄出。

# mail 751446682@qq.com << Finsh

>The mail is from sherlock

>Finsh -> 结束邮件的编辑并且寄出.

  • 错误输出导向(&>)
   错误输出导向不论是正常或错误的执行,都不会将信息结果显示在屏幕上,而是直接写入文件中。一般的程序设计师都会习惯将程序测试和出错时所有信息(正常和错误)记录在文件中,以利日后修改时参考。

# ls /user1 > /test1/error.txt

ls: /usr1 : No such file or directory -> 错误信息显示在屏幕

# cat /test1/error.txt -> 错误信息没有记录在文件中

# ls /usr1 &> /test1/error.txt -> 没有出现错误信息

# cat /test1/error.txt -> 错误记录在文件中

2.管道

   
   Linux 系统中的“管道”最主要的功能是将其他程序的输出结果直接导向到另一个程序来当成输入数据。

   举例来说,/etc 目录下的文件有很多。若是使用 "ls al"命令,它们并没有办法在同一页中显示,若是我们要浏览第一页中的数据,可能不是很方便,此时可以将"ls -al"命令产生的结果利用管道 (|) 直接导向至 "less" 命令。然后就可以使用上下键来逐行浏览输出结果。

# ls -al /etc | less

# ls -l /etc | grep mysql  ->在 etc 目录中搜索包含 mysql 关键字的文件

2009年9月16日星期三

Ubuntu 9.10 上网设置


一.基本设置


Ubuntu图形界面有时候配置网络不能生效,可以用命令行配置。

打开终端

administrator@administrator-desktop:~$ sudo gedit /etc/network/interfaces



DHCP

DHCP配置如下(假设通过eth0上网)



auto eth0
iface eth0 inet dhcp #指定为dhcp



保存文件,重启。


administrator@administrator-desktop:~$ sudo /etc/init.d/networking restart
 

Static IP

静态IP地址配置如下(假设通过eth0上网) 


auto lo
iface lo inet loopback #这2行 本来就有 , 添加下面的代码
auto eth0
iface eth0 inet static #指定为static
address 192.168.0.107 #换成自己的IP地址
gateway 192.168.0.1 #换成自己的网关
netmask 255.255.255.0 #换成自己的子网掩码



同样需要重启

administrator@administrator-desktop:~$ sudo /etc/init.d/networking restart


DNS

如果有必要,配置DNS

administrator@administrator-desktop:~$ sudo gedit /etc/resolv.conf


nameserver 8.8.4.4 #换成自己 DNS
nameserver 8.8.8.8 #换成自己 DNS



二、配置锐捷验证(主要用于校园网上网)


1.下载myxrgsu


2.把myxrgsu.tar.gz文件拷贝到你的主目录里,打开终端,然后如下:


administrator@administrator-desktop:~$ tar -zxvf myxrgsu.tar.gz #解压缩myxrgsu.tar.gz文件
administrator@administrator-desktop:~$ cd myxrgsu/ #进入myxrgsu目录中
administrator@administrator-desktop:~$ sudo cp libpcap.so.0.6.2 /usr/lib #拷贝库文件
administrator@administrator-desktop:~$ sudo cp libstdc++.so.5 /usr/lib #拷贝库文件
administrator@administrator-desktop:~$ sudo cp myxrgsu /usr/bin #拷贝库文件
administrator@administrator-desktop:~$ sudo myxrgsu
[sudo] password for administrator: #输入你的账户口令
XRGSupplicant 1.1.1
Ruijie Network CopyRight 2004-2005
Please input your user name:2007060503302 #输入你的锐捷帐号
Please input your password: #输入你的锐捷密码
Use DHCP,1-Use,0-UnUse(Default: 0):
Use default auth parameter,0-Use 1-UnUse(Default: 0):
Searching server...
Connecting server...
Authenticating...
Authenticate SUCCESSFULLY!
Please input 'unauth' to LogOff:

2009年9月11日星期五

Vi命令

1、Vi的执行与离开

sherlock@sherlock-laptop:~$ vi   #进入vim可以查看有关命令

2、Vi的操作模式

Command Mode

    控制光标的移动、删除字符、区段复制,以及进入Insert Mode或者Last Line Mode功能

Insert Mode

    唯一的功能即是文字数据的输入。按Esc键可以回到Command Mode。

Last Line Mode

    保存文件、离开Vi,以及其它的设置。例如查找或取代字符串等。
vi 操作模式图示说明
Vi的操作模式
i    插入,由当前的光标位置输入文字

a    增加,由当前的光标的下一个位置输入汉字

o    插入新行,加入新行并且由行首开始输入汉字


Command Mode 功能键介绍

1、移动光标

命令                   说明

h 或 ←             光标左移一格
j 或 ↓             光标下移一格
k 或 ↑             光标上移一格
l 或 →             光标右移一格
Ctrl+B              向后滚动一个屏幕
Ctrl+F              向前滚动一个屏幕
Ctrl+U              向后滚动半个屏幕
Ctrl+D              向前滚动半个屏幕
Ctrl+E              向后滚动半行
Ctrl+Y              向前滚动半行
数字0               光标移至该行的行首
G                   光标移至最后一行的行首
W或w                光标移至下个字的前缀
e                   光标移至下个字的字尾
b                   光标移至上个字的前缀
$                   光标移至该行的行尾
数字+l              光标移至该行指定的字符
                    例如“7l”表示将光标移至该行的第7个字符
{                   光标向前移动一个段落
}                   光标向后移动一个段落
H                   移至屏幕顶端
M                   移至屏幕中间
L                   移至屏幕底部
o                   在光标下面插入一行
O                   在光标上面插入一行
~                   改变字母大小写
2、复制文字

命令                   说明

y+y                 复制整行
y+w                 复制单字
数字+y+y            5+y+y表示将目前光标所在位置以及其后的5行一同复制
数字+y+w            5+y+w表示将目前光标所在位置以及其后的5个字一同复制
p                   粘帖

3、删除文字

命令                   说明

d+↑                可将光标所在位置的行与上一行同时删除
d+↓                同上
d+d                 删除光标所在那行。若要删除数行,可按值d键。直到全数删除为止
数字+d+↑           同理
数字+d+↓           同理
d+l                 删除一个字符

Last Line Mode

命令                   说明

e 文件名            ":e test"命令会在当前的目录中建立名为test的文件
n 文件名            ":n test"命令会在当前的Vi窗口中加载名为test的文件
w                   将目前的文件内容加以保存。如果这是一个新文件,必须要指定文件            
                    名,如:":w test"
q                   若是文件有修改,Vi会出现错误信息
q!                  强制离开Vi,不保存文件
wq                  保存退出
set nu              显示行号
set nonu            取消行号
输入数字            若直接输入数字再按Esc键就可将光标移至该行该首
/字符串             此命令用来查找特定字符串,例如:":/tcp",如果搜索的字符串不是     
                    所要的,可以按"n"键来往下继续查找
?字符串             此命令用来查找特定字符串,例如:":/tcp",如果搜索的字符串不是    
                    所要的,可以按"n"键来往上继续查找

补充

在GUI下:
(1)可按i进入插入模式
(2)使用鼠标拖动反选要粘贴的内容,按鼠标左键复制选定块到缓冲区
(3)然后将光标移到要粘贴处,按鼠标中键(两键鼠标可同时按左右键),粘贴缓冲区内容。

在纯文本终端下:
(1)选定文本块,使用v进入可视模式;移动光标键选定内容
(2)复制选定块到缓冲区,用y;复制整行,用yy
(3)剪切选定块到缓冲区,用d;剪切整行用dd
(4)粘贴缓冲区中的内容,用p

在同一编辑窗打开第二个文件,用:sp [filename]
在多个编辑文件之间切换,用Ctrl+w

命令前面加数字表示重复次数,加字母表示使用的缓冲区名称。
获取帮助,用:help [内容或命令]

a) 撤消上一个编辑操作。 ====》 U
b) 重复上一个编辑操作。 ====》 .
c) 还原被撤消的编辑操作。 ====》 Ctrl + R


更多有关Vi的命令查看Ubuntu 命令技巧