免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123
最近访问板块 发新帖
楼主: sxldqp
打印 上一主题 下一主题

走进开源、感受Linux [复制链接]

论坛徽章:
0
21 [报告]
发表于 2007-09-14 09:46 |只看该作者

Linux命令大全 文件压缩与解压

对许多用户来说,在DOS和Windows环境下利用工具软件ARJ、Winzip等,压缩或解压文件是比较容易的事。但是,在Linux中如何对文件进行压缩与解压呢?本文基于Red Hat 6.0,介绍了压缩与解压文件的几种方法与技巧:

命令: compress

格式: compress 选项 文件列表
功能: 用Lempel-ziv压缩方法来压缩文件或压缩标准输入

选项:

-r 递归操作,如果指定目录变元,则压缩该目录及其子目录中的所有文件。
-c 将压缩数据返回标准输出,而缺省情况下为压缩文件时将压缩数据返回文件。
-v 显示每个文件夹的压缩百分比。

解释: 在用compress压缩文件时,将在原文件名之后加上扩展名.Z。如果不指定文件,则压缩标准输入,其结果返回标准输出。

实例: 目的:压缩/mnt/lgx/a1.doc文件
命令:#compress /mnt/lgx/a1.doc
结果:压缩后生成a1.doc.Z文件。

命令: uncompress

格式: uncompress 选项 文件列表
功能: 解压缩用compress 程序压缩过的文件
选项: -c 它将压缩数据发往标准输出而不是改写旧的压缩文件
解释: 如果不指定文件,则解压缩标准输入。缺省-c时,为解压缩。
实例: 目的:解压缩/mnt/lgx/a1.doc.Z
命令:#uncompress /mnt/lgx/a1.doc.Z

命令: gzip

格式: gzip 选项 文件目录列表
功能: 用Lempel-ziv编码压缩文件

选项:

-c 压缩结果写入标准输出,原文件保持不变。缺省时gzip将原文件压缩为.gz文件,并删除原文件。
-v 输出处理信息。
-d 解压缩指定文件。
-t 测试压缩文件的完整性。

解释: 值得一提的是,gzip比compress压缩更加有效。
实例: 目的:压缩/mnt/lgx/a1.doc
命令:#gzip -v /mnt/lgx/a1.doc
结果:产生a1.doc.gz的压缩文件

命令: gunzip

格式: gunzip 选项 文件列表
功能: 解压缩用gzip命令(以及compress和zip命令)压缩过的文件

选项:

-c 将输出写入标准输出,原文件保持不变。缺省时,gunzip将压缩文件变成解压缩文件。
-l 列出压缩文件中的文件而不解压缩。
-r 递归解压缩,深入目录结构中,解压缩命令行变元所指定目录中的所有子目录内的文件。

实例: 目的:解压缩/mnt/lgx/a1.doc.gz
命令:#gunzip /mnt/lgx/a1.doc.gz

命令: tar

格式: tar 选项 文件目录列表
功能: 对文件目录进行打包备份

选项:

-c 建立新的归档文件
-r 向归档文件末尾追加文件
-x 从归档文件中解出文件
-O 将文件解开到标准输出
-v 处理过程中输出相关信息
-f 对普通文件操作
-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩

实例1: 目的:用tar打包一个目录下的文件
命令:#tar -cvf /mnt/lgx/a1.doc
结果:产生一个以.tar为扩展名的打包文件

实例2: 目的:用tar解开打包文件
命令:#tar -xvf /mnt/lgx/a1.doc.tar
附加说明:在通常情况下,tar打包与gzip(压缩)经常联合使用,效果更好。方法是:
首先用tar打包,如:#tar -cvf /mnt/lgx/a1.doc (产生a1.doc.tar文件)
然后用gzip压缩a1.doc.tar文件,如:#gzip /mnt/lgx/a1.doc.tar (产生a1.doc.tar.gz文件)

实例3: 目的:解压a1.doc.tar.gz文件
方法1:
#gzip -dc /mnt/lgx/a1.doc.tar.gz (产生a1.doc.tar文件)
#tar -xvf /mnt/lgx/a1.doc.tar (产生a1.doc文件)
这两次命令也可使用管道功能,把两个命令合二为一:
#gzip -dc /mnt/lgx/a1.doc.tar.gz | tar -xvf
方法2:使用tar提供的自动调用gzip解压缩功能
#tar -xzvf /mnt/lgx/a1.doc.tar.gz

  经过tar打包后,也可用compress命令压缩(注:gzip比compress压缩更加有效),产生一个以.tar.Z的文件,在解包时,可先用“uncompress 文件名”格式解压,然后用“tar -xvf 文件名”解包。也可直接调用“tar -Zxvf 文件名”解包。

论坛徽章:
0
22 [报告]
发表于 2007-09-16 10:31 |只看该作者

Linux命令大全--字符串的处理

名称:expr
### 字串长度
shell>> expr length "this is a test"
14
### 数字商数
shell>> expr 14 % 9
5
### 从位置处抓取字串
shell>> expr substr "this is a test" 3 5
is is
### 数字串 only the first character
shell>> expr index "testforthegame" e
2
### 字串真实重现
shell>> expr quote thisisatestformela
thisisatestformela

名称:tr
### 1.比方说要把目录下所有的大写档名换为小写档名,似乎有很多方式,"tr"是其中一种:

#!/bin/sh
dir="/tmp/testdir";
files=`find $dir -type f`;
for i in $files
do
dir_name=`dirname $i`;
ori_filename=`basename $i`
new_filename=`echo $ori_filename | tr [:upper:] [:lower:]` > /dev/null;
#echo $new_filename;
mv $dir_name/$ori_filename $dir_name/$new_filename
done
### 2.自己试验中...lowercase to uppercase
tr abcdef...[del] ABCDE...[del]
tr a-z A-Z
tr '[:lower:]' '[:upper:]'
shell>> echo "this is a test" | tr a-z A-Z > www
shell>> cat www
THIS IS A TEST
### 3.去掉不想要的字串
shell>> tr -d this ### 去掉有关 t.e.s.t
this
man
man
test
e
### 4.取代字串
shell>> tr -s "this" "TEST"
this
TEST
th
TE

论坛徽章:
0
23 [报告]
发表于 2007-09-19 09:36 |只看该作者

Linux命令大全-使用者信息与管理

名称:chfn
使用权限:所有使用者
用法:shell>> chfn
说明:提供使用者更改个人资讯,用于 finger and mail username
范例:

shell>> chfn
Changing finger information for user
Password: [del]
Name[]:Johnney Huang ### 提供 finger 时的资料
Office[]:NCCU
Office Phone[]: [del]
Home Phone[]: [del]

名称:chsh
使用权限:所有使用者
用法:shell>> chsh
说明:更改使用者 shell 设定

范例:

shell>> chsh
Changing fihanging shell for user1
Password: [del]
New shell [/bin/tcsh]: ### [是目前使用的 shell]
[del]

shell>> chsh -l ### 展示 /etc/shells 档案内容
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh

名称: finger
使用权限: 所有使用者
使用方式: finger [options] user[@address]
说明:finger 可以让使用者查询一些其他使用者的资料。会列出来的资料有:
Login Name
User Name
Home directory
Shell
Login status
mail status
.plan
.project
.forward
其中 .plan ,.project 和 .forward 就是使用者在他的 Home Directory 里的 .plan , .project 和 .forward 等档案里的资料。如果没有就没有。finger 指令并不限定于在同一服务器上查询,也可以寻找某一个远端服务器上的使用者。只要给一个像是 E-mail address 一般的地址即可。
参数:
-l
多行显示。
-s
单行显示。这个选项只显示登入名称,真实姓名,终端机名称,闲置时间,登入时间,办公室号码及电话号码。如果所查询的使用者是远端服务器的使用者,这个选项无效。
范例:

下列指令可以查询本机管理员的资料:
finger root
其结果如下:
Login: root Name: root
Directory: /root Shell: /bin/bash
Never logged in.
No mail.
No Plan.

名称:last
使用权限:所有使用者
使用方式:shell>> last [options]
说明:显示系统开机以来获是从每月初登入者的讯息
参数:

-R 省略 hostname 的栏位
-num 展示前 num 个
username 展示 username 的登入讯息
tty 限制登入讯息包含终端机代号

范例:

shell>> last -R -2
johnney pts/1 Mon Aug 14 20:42 still logged in
johnney pts/0 Mon Aug 14 19:59 still logged in

wtmp begins Tue Aug 1 09:01:10 2000 ### /var/log/wtmp


shell>> last -2 minery
minery pts/0 140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03)
minery pts/0 140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02)

wtmp begins Tue Aug 1 09:01:10 2000

名称:passwd
使用权限:所有使用者
使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]
说明:用来更改使用者的密码
参数:
-k
-l
-u
-f
-d 关闭使用者的密码认证功能, 使用者在登入时将可以不用输入密码, 只有具备 root 权限的使用者方可使用.
-S 显示指定使用者的密码认证种类, 只有具备 root 权限的使用者方可使用.
[username] 指定帐号名称.

名称 : who
使用权限 : 所有使用者都可使用

使用方式 : who - [husfV] [user]

说明 : 显示系统中有那些使用者正在上面,显示的资料包含了使用者 ID,使用的终端机,从那边连上来的,上线时间,呆滞时间,CPU 使用量,动作等等。

参数 :

-h : 不要显示标题列
-u : 不要显示使用者的动作/工作
-s : 使用简短的格式来显示
-f : 不要显示使用者的上线位置
-V : 显示程序版本

论坛徽章:
0
24 [报告]
发表于 2007-09-21 09:59 |只看该作者
9月24号要开晚班了。希望喜欢Linux的朋友把握好机会了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP