作业整理

来源:互联网 发布:经营类网络餐厅游戏 编辑:程序博客网 时间:2024/05/23 01:16

四个主题:C常用算法、常用linux指令、VI使用方法、几种压缩解压格式


C语言常用算法:

题目1:判断101-200之间有多少个素数,并输出所有素数。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

程序源代码:

#include "math.h"

main()

{

int m,i,k,h=0,leap=1;

printf("\n");

for(m=101;m<=200;m++)

{ k=sqrt(m+1);

for(i=2;i<=k;i++)

if(m%i==0)

{leap=0;break;}

if(leap) {printf("%-4d",m);h++;

if(h%10==0)

printf("\n");

}

leap=1;

}

printf("\nThe total is %d",h);

}

 

题目2:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

程序源代码:

main()

{

int i,j,k,n;

printf("'water flower'number is:");

for(n=100;n<1000;n++)

{

i=n/100;/*分解出百位*/

j=n/10%10;/*分解出十位*/

k=n%10;/*分解出个位*/

if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)

{

printf("%-5d",n);

}

}

printf("\n");

}

 

题目3:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:

(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正

整数你n,重复执行第一步。

(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

程序源代码:

main()

{

int i,j,k,n;

printf("'water flower'number is:");

for(n=100;n<1000;n++)

{

i=n/100;/*分解出百位*/

j=n/10%10;/*分解出十位*/

k=n%10;/*分解出个位*/

if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)

{

printf("%-5d",n);

}

}

printf("\n");

}

 

题目4:输入两个正整数m和n,求其最大公约数和最小公倍数。

程序分析:利用辗除法。

程序源代码:

main()

{

int a,b,num1,num2,temp;

printf("please input two numbers:\n");

scanf("%d,%d",&num1,&num2);

if(num1  { temp=num1;

num1=num2; 

num2=temp;

}

a=num1;b=num2;

while(b!=0)/*利用辗除法,直到b为0为止*/

{

temp=a%b;

a=b;

b=temp;

}

printf("gongyueshu:%d\n",a);

printf("gongbeishu:%d\n",num1*num2/a);

}

 

题目5:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

程序源代码:

main( )

{

long ge,shi,qian,wan,x;

scanf("%ld",&x);

wan=x/10000;

qian=x%10000/1000;

shi=x%100/10;

ge=x%10;

if (ge==wan&&shi==qian)/*个位等于万位并且十位等于千位*/

printf("this number is a huiwen\n");

else

printf("this number is not a huiwen\n");

}

 

题目6:求一个3*3矩阵对角线元素之和

程序分析:利用双重for循环控制输入二维数组,再将a累加后输出。

程序源代码:

main()

{

float a[3][3],sum=0;

int i,j;

printf("please input rectangle element:\n");

for(i=0;i<3;i++)

for(j=0;j<3;j++)

scanf("%f",&a[j]);

for(i=0;i<3;i++)

sum=sum+a;

printf("duijiaoxian he is %6.2f",sum);

}

 

题目6:将一个数组逆序输出。

程序分析:用第一个与最后一个交换。

程序源代码:

#define N 5

main()

{ int a[N]={9,6,5,4,1},i,temp;

printf("\n original array:\n");

for(i=0;i<N;i++)

printf("%4d",a);

for(i=0;i<N/2;i++)

{temp=a;

a=a[N-i-1];

a[N-i-1]=temp;

}

printf("\n sorted array:\n");

for(i=0;i<N;i++)

printf("%4d",a);

}

 

7选择法排序(升序)

基本思想:

1)对有n个数的序列(存放在数组a(n)中),从中选出最小的数与第1个数交换位置;

2)除第1 个数外,其余n-1个数中选最小的数,与第2个数交换位置;

3)依次类推,选择了n-1次后,这个数列已按升序排列。

程序代码如下:

void main()

{ int i,j,imin,s,a[10];

printf("\n input 10 numbers:\n");

for(i=0;i<10;i++)

scanf("%d",&a[i]);

for(i=0;i<9;i++)

{ imin=i;

for(j=i+1;j<10;j++)

if(a[imin]>a[j]) imin=j;

if(i!=imin)

{s=a[i]; a[i]=a[imin]; a[imin]=s; }

printf("%d\n",a[i]);

}

}

8冒泡法排序(升序)

基本思想:(将相邻两个数比较,小的调到前头)

1)有n个数(存放在数组a(n)中),第一趟将每相邻两个数比较,小的调到前头,经n-1次两两相邻比较后,最大的数已“沉底”,放在最后一个位置,小数上升“浮起”;

2)第二趟对余下的n-1个数(最大的数已“沉底”)按上法比较,经n-2次两两相邻比较后得次大的数;

3)依次类推,n个数共进行n-1趟比较,在第j趟中要进行n-j次两两比较。

程序段如下

void main()

{ int a[10];

int i,j,t;

printf("input 10 numbers\n");

for(i=0;i<10;i++)

scanf("%d",&a[i]);

printf("\n");

for(j=0;j<=8;j++)

for(i=0;i<9-j;i++)

if(a[i]>a[i+1])

{t=a[i];a[i]=a[i+1];a[i+1]=t;}

printf("the sorted numbers:\n");

for(i=0;i<10;i++)

printf("%d\n",a[i]);

}

9合并法排序(将两个有序数组A、B合并成另一个有序的数组C,升序)

基本思想:

1)先在A、B数组中各取第一个元素进行比较,将小的元素放入C数组;

2)取小的元素所在数组的下一个元素与另一数组中上次比较后较大的元素比较,重复上述比较过程,直到某个数组被先排完;

3)将另一个数组剩余元素抄入C数组,合并排序完成。

程序段如下:

void main()

{ int a[10],b[10],c[20],i,ia,ib,ic;

printf("please input the first array:\n");

for(i=0;i<10;i++)

scanf("%d",&a[i]);

for(i=0;i<10;i++)

scanf("%d",&b[i]);

printf("\n");

ia=0;ib=0;ic=0;

while(ia<10&&ib<10)

{ if(a[ia]<b[ib])

{ c[ic]=a[ia];ia++;}

Else

{ c[ic]=b[ib];ib++;}

ic++;

}

while(ia<=9)

{ c[ic]=a[ia];

ia++;ic++;

}

while(ib<=9)

{ c[ic]=b[ib];

b++;ic++;

}

for(i=0;i<20;i++)

printf("%d\n",c[i]);

}

 

10将一个十进制整数m转换成 →r(2-16)进制字符串。

方法:将m不断除 r 取余数,直到商为零,以反序得到结果。下面写出一转换函数,参数idec为十进制数,ibase为要转换成数的基(如二进制的基是2,八进制的基是8等),函数输出结果是字符串。

char *trdec(int idec, int ibase)

{ char strdr[20], t;

int i, idr, p=0;

while(idec!=0)

{ idr=idec % ibase;

if(idr>=10)

strdr[p++]=idr-10+65;

else

strdr[p++]=idr+48;

idec/=ibase;

}

for(i=0; i<p/2; i++)

{ t=strdr[i];

strdr[i]=strdr[p-i-1];

strdr[p-i-1]=t;

}

strdr[p]=’\0’;

return(strdr);

}

main()

{ int x, d;

scanf("%d%d", &x, &d);

printf("%s\n", trdec(x,d));

}

 

已知电文加密规律为:将字母变成其后面的第4个字母,其它字符保持不变。例如a→e,A→E,W→A。

#include <stdio.h>
#include <conio.h>
void main()
{
 clrscr();
 char ch;
 while ((ch=getchar())!='\n')
 {
   if ((ch>='a' && ch<='z') || (ch>='A' && ch<='Z'))
   {
     ch+=4;     /*ch是字母,进行加密处理*/
     if ((ch>'Z' && ch<'a') || (ch>'z'))
     /*ch在加密后越界*/
     ch-=26;
   } 
   printf("%c",ch);
 }
}

 

求两、三个数中较大者的函数

#include <stdio.h>
#include <conio.h>
int max(int,int,int);
void main()
{
 int a,b,c,t;
 clrscr();
 printf("Please input tree number:");
 scanf("%d,%d,%d",&a,&b,&c);
 t=max(a,b,c);
 printf("The max number is :%d",t);
}

int max(int a,int b,int c)
{
 int t;
 if (a>b)
    if (a>c)
      t=a;
    else
      t=c;
 else
    if (b>c)
      t=b;
    else
      t=c;
 return t;
}

 

日期星期问题

e.g. 判断某年某月天数

#include<stdio.h>

 

int main()

{

int Y,M,i;

int a[2][12]={31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31,30,31};

scanf("%d %d",&Y,&M);

if(Y%4==0&&Y%100!=0||Y%400==0)

{

i=1;

}

else

{

i=0;

}

printf("%d\n",a[i][M-1]);

return 0;

}

e.g. 输入今天星期几判断n天后是星期几

#include<stdio.h>

 

int main()

{

int n;

int today;

printf("Today:");

scanf("%d",&today);

printf("n=");

scanf("%d",&n);

{

if((today+n)%7==0)

{

printf("7\n");

}

else

{

printf("%d\n",n%7);

}

}

return 0;

}

 

 

 

 

整理Vi使用方法:

Vivim 基本使用方法 
vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。

1、vi的基本概念 
 基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

1) 命令行模式command mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

2) 插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。

3) 底行模式(last line mode)

将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。

不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。

2、vi的基本操作 
a) 进入vi

在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:

$ vi myfile

不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!

b) 切换至插入模式(Insert mode)编辑文件

在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。

c) Insert 的切换

您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。

d) 退出vi及保存文件

在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:

: w filename (输入 「w filename」将文章以指定的文件名filename保存)

: wq (输入「wq」,存盘并退出vi)

: q! (输入q!, 不存盘强制退出vi)

3、命令行模式(command mode)功能键 
1). 插入模式

按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;

按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;

按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

2). 从插入模式切换为命令行模式

按「ESC」键。

3). 移动光标

vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。

按「ctrl」+「b」:屏幕往“后”移动一页。

按「ctrl」+「f」:屏幕往“前”移动一页。

按「ctrl」+「u」:屏幕往“后”移动半页。

按「ctrl」+「d」:屏幕往“前”移动半页。

按数字「0」:移到文章的开头。

按「G」:移动到文章的最后。

按「$」:移动到光标所在行的“行尾”。

按「^」:移动到光标所在行的“行首”

按「w」:光标跳到下个字的开头

按「e」:光标跳到下个字的字尾

按「b」:光标回到上个字的开头

按「#l」:光标移到该行的第#个位置,如:5l,56l。

4). 删除文字

x」:每按一次,删除光标所在位置的“后面”一个字符。

#x」:例如,「6x」表示删除光标所在位置的“后面”6个字符。

X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符。

#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符。

dd」:删除光标所在行。

#dd」:从光标所在行开始删除#行

5). 复制

yw」:将光标所在之处到字尾的字符复制到缓冲区中。

#yw」:复制#个字到缓冲区

yy」:复制光标所在行到缓冲区。

#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。

p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

6). 替换

r」:替换光标所在处的字符。

R」:替换光标所到之处的字符,直到按下「ESC」键为止。

7). 恢复/撤消/还原上一次操作

u」:如果误执行一个命令,可以马上按下「u」,撤消上一个操作。按多次“u”可以执行多次撤消。

8). 更改

cw」:更改光标所在处的字到字尾处

c#w」:例如,「c3w」表示更改3个字

9). 跳至指定的行

ctrl」+「g」列出光标所在行的行号。

#G」:例如,「15G」,表示移动光标至文章的第15行行首。

4、Last line mode下命令简介 
 在使用「last line mode」之前,请记住先按「ESC」键确定您已经处于「command mode」下后,再按「:」冒号即可进入「last line mode」。

A) 列出行号

set nu」:输入「set nu」后,会在文件中的每一行前面列出行号。

B) 跳到文件中的某一行

#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。

C) 查找字符

/关键字」:先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。

?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。

D) 保存文件

w」:在冒号输入字母「w」就可以将文件保存起来。

E) 离开vi

q」:按「q」就是退出,如果无法离开vi,可以在「q」后跟一个「!」强制离开vi。

qw」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

5、vi命令列表 
1、下表列出命令模式下的一些键的功能:


左移光标一个字符


右移光标一个字符


光标上移一行


光标下移一行


光标移动至行首


数字“0”,光标移至文章的开头


光标移至文章的最后


光标移动至行尾

Ctrl+f 
向前翻屏

Ctrl+b 
向后翻屏

Ctrl+d 
向前翻半屏

Ctrl+u 
向后翻半屏


在光标位置前插入字符


在光标所在位置的后一个字符开始增加


插入新的一行,从行首开始输入

ESC 
从输入状态退至命令状态


删除光标后面的字符

#x 
删除光标后的#个字符


(大写X),删除光标前面的字符

#X 
删除光标前面的#个字符

dd 
删除光标所在的行

#dd 
删除从光标所在行数的#行

yw 
复制光标所在位置的一个字

#yw 
复制光标所在位置的#个字

yy 
复制光标所在位置的一行

#yy 
复制从光标所在行数的#行


粘贴


取消操作

cw 
更改光标所在位置的一个字

#cw 
更改光标所在位置的#个字

下表列出行命令模式下的一些指令 
w filename 
储存正在编辑的文件为filename

wq filename 
储存正在编辑的文件为filename,并退出vi

q! 
放弃所有修改,退出vi

set nu 
显示行号

/或? 
查找,在/后输入要查找的内容


/或?一起使用,如果查找的内容不是想要找的关键字,按n或向后(与/联用)或向前(与?联用)继续查找,直到找到为止。
linux中的vim 编辑一行内容,如何使光标快速移动到行首和行尾以及行中间某处啊?
光标定位
G 移至行行首
nG 移至第n行行首
n+ 移n行行首
n- 移n行行首
n$ 移n行(1表示本行)行尾
0 所行行首
$ 所行行尾
^ 所行首字母
h,j,k,l 左移移移右移
H 前屏幕首行行首
M 屏幕显示文件间行行首
L 前屏幕底行行首
vi/vim 中可以使用 :s 命令来替换字符串。该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询。 
 
  :s/vivian/sky/ 替换当前行第一个 vivian 为 sky 
 
  :s/vivian/sky/g 替换当前行所有 vivian 为 sky 
 
  :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky 
 
  :n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky 
 
n 为数字,若 n 为 .,表示从当前行开始到最后一行 
 
  :%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky 
 
  :%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky 
 
  可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符 
 
  :s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/ 
 
  :%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/ 
 
1.:s/vivian/sky/ 替换当前行第一个 vivian 为 sky 
 
  :s/vivian/sky/g 替换当前行所有 vivian 为 sky 
 
2. :n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky 
 
  :n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky 
 
  (n 为数字,若 n 为 .,表示从当前行开始到最后一行) 
 
3. :%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky 
 
  :%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky 
 
4. 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符 
 
  :s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/ 
 
5. 删除文本中的^M 
 
  问题描述:对于换行,window下用回车换行(0A0D)来表示,linux下是回车(0A)来表示。这样,将window上的文件拷到unix上用时,总会有个^M.请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。 
 
  。 使用命令:cat filename1 | tr -d “^V^M” > newfile; 
 
  。 使用命令:sed -e “s/^V^M//” filename > outputfilename.需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M.你必须要手工进行输入,而不是粘贴。 
 
  。 在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:%s/^V^M//. 
 
  。 :%s/^M$//g 
 
  如果上述方法无用,则正确的解决办法是: [Page]
 
  。 tr -d \"\\r\" < src >dest 
 
  。 tr -d \"\\015\" dest 
 
  。 strings A>B 
      6. 替换确认
         我们有很多时候会需要某个字符(串)在文章中某些位置出现时被替换,而其它位置不被替换的有选择的操作,这就需要用户来进行确认,vi的查找替换同样支持
       例如
      :s/vivian/sky/g 替换当前行所有 vivian 为 sky 
      在命令后面加上一个字母c就可以实现,即:s/vivian/sky/gc
      顾名思意,c是confirm的缩写
 
7. 其它 
 
  利用 :s 命令可以实现字符串的替换。具体的用法包括: 
 
  :s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1 
 
  :s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1 
 
  :。,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1 
 
  :1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1 
 
  :g/str1/s//str2/g 功能同上 
 
  从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索 
 
  字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作

 

 

几种压缩解压格式:

.tar

  解包:tar xvf FileName.tar

  打包:tar cvf FileName.tar DirName

  (注:tar是打包,不是压缩!)

———————————————

.gz

  解压 1:gunzip FileName.gz

  解压2:gzip -d FileName.gz

  压缩:gzip FileName

.tar.gz 和 .tgz

  解压:tar zxvf FileName.tar.gz

  压缩:tar zcvf FileName.tar.gz DirName

———————————————

.bz2

  解压1:bzip2 -d FileName.bz2

  解压2:bunzip2 FileName.bz2

  压缩: bzip2 -z FileName

.tar.bz2

  解压:tar jxvf FileName.tar.bz2        或tar --bzip xvf FileName.tar.bz2

  压缩:tar jcvf FileName.tar.bz2 DirName

———————————————

.bz

  解压1:bzip2 -d FileName.bz

  解压2:bunzip2 FileName.bz

  压缩:未知

.tar.bz

  解压:tar jxvf FileName.tar.bz

  压缩:未知

———————————————

.Z

  解压:uncompress FileName.Z

  压缩:compress FileName

.tar.Z

  解压:tar Zxvf FileName.tar.Z

  压缩:tar Zcvf FileName.tar.Z DirName

———————————————

.zip

  解压:unzip FileName.zip

  压缩:zip FileName.zip DirName

  压缩一个目录使用 -r 参数,-r 递归。例: $ zip -r FileName.zip DirName

———————————————

.rar

  解压:rar x FileName.rar

  压缩:rar a FileName.rar DirName

rar 请到:http://www.rarsoft.com/download.htm 下载!

  解压后请将rar_static拷贝到/usr /bin目录(其他由$PATH环境变量指定的目录也可以):

[root@www2 tmp]# cp rar_static /usr/bin/rar

———————————————

.lha

  解压:lha -e FileName.lha

  压缩:lha -a FileName.lha FileName

lha请到:http://www.infor.kanazawa-it.ac.jp/~ishii/lhaunix/下载!

>解压后请将 lha拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):

[root@www2 tmp]# cp lha /usr/bin/

———————————————

.rpm

  解包:rpm2cpio FileName.rpm | cpio -div

———————————————

.deb

  解包:ar p FileName.deb data.tar.gz | tar zxf -

———————————————

.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea

  解压:sEx x FileName.*

  压缩:sEx a FileName.* FileName

sEx只是调用相关程序,本身并无压缩、解压功能,请注意!

常用Linux指令:

◆ 安装和登录命令:loginshutdownhaltrebootinstallmountumountchshexitlast

◆ 文件处理命令:filemkdirgrepddfindmvlsdiffcatln

◆ 系统管理相关命令:dftopfreequotaatlpaddusergroupaddkillcrontab

◆ 网络操作命令:ifconfigippingnetstattelnetftprouterloginrcpfingermailnslookup

◆ 系统安全相关命令:passwdsuumaskchgrpchmodchownchattrsudo pswho

◆ 其它命令:tarunzipgunzipunarjmtoolsmanunendcodeuudecode

 

安装和登录命令

login

1.作用

login的作用是登录系统,它的使用权限是所有用户。

2.格式

login [name][p ][h主机名称]

 

shutdown

1.作用

shutdown命令的作用是关闭计算机,它的使用权限是超级用户。

2.格式

shutdown [h][i][k][m][t]

3.重要参数

t:在改变到其它运行级别之前,告诉init程序多久以后关机。

k:并不真正关机,只是送警告信号给每位登录者。

h:关机后关闭电源。

ccancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。

F:在重启计算机时强迫fsck

time:设定关机前的时间。

m: 将系统改为单用户模式。

i:关机时显示系统信息。

 

reboot
1.作用
reboot命令的作用是重新启动计算机,它的使用权限是系统管理者。
2.格式
reboot [-n] [-w] [-d] [-f] [-i]
3.主要参数
n: 在重开机前不做将记忆体资料写回硬盘的动作。
w: 并不会真的重开机,只是把记录写到var/log/wtmp文件里。
d: 不把记录写到var/log/wtmp文件里(-n这个参数包含了-d)。
i: 在重开机之前先把所有与网络相关的装置停止。

 

install

1.作用

install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户。

2.格式

(1)install [选项]... 来源 目的地

(2)install [选项]... 来源... 目录

(3)install -d [选项]... 目录... 

 

mount

1.作用

mount命令的作用是加载文件系统,它的用权限是超级用户或/etc/fstab中允许的使用者。

2.格式

mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir

 

umount

1.作用

umount命令的作用是卸载一个文件系统,它的使用权限是超级用户或/etc/fstab中允许的使用者。

2.格式

unmount -a [-fFnrsvw] [-t vfstype] [-n] [-rw] [-F] device dir

 

chsh

1.作用

chsh命令的作用是更改使用者shell设定,它的使用权限是所有使用者。

2.格式

chsh [ -s ] [ -list] [ --help ] [ -v ] [ username ]

 

last

1.作用

last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户。通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统。

2.格式

1ast[—n][-f file][-t tty] [—h 节点][-I —IP][—1][-y][1D]

 

文件处理命令

file

1.作用 件内容判断文件类型,使用权限是所有用户。

2.格式

file通过探测文

file [options] 文件名

 

 

mkdir

1.作用

mkdir命令的作用是建立名称为dirname的子目录,与MS DOS下的md命令类似,它的使用权限是所有用户。

2.格式

mkdir [options] 目录名

 

grep

1.作用

grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

2.格式

grep [options]

 

dd

1.作用

dd命令用来复制文件,并根据参数将数据转换和格式化。

2.格式

dd [options]

 

find

1.作用

find命令的作用是在目录中搜索文件,它的使用权限是所有用户。

2.格式

find [path][options][expression]

 

mv

1.作用

mv命令用来为文件或目录改名,或者将文件由一个目录移入另一个目录中,它的使用权限是所有用户。该命令如同DOS命令中的ren和move的组合。

2.格式

mv[options] 源文件或目录 目标文件或目录

 

ls

1.作用

ls命令用于显示目录内容,类似DOS下的dir命令,它的使用权限是所有用户。

2.格式

ls [options][filename]

 

diff

1.作用

diff命令用于两个文件之间的比较,并指出两者的不同,它的使用权限是所有用户。

2.格式

diff [options] 源文件 目标文件

 

cmp

1.作用

cmp(“compare”的缩写)命令用来简要指出两个文件是否存在差异,它的使用权限是所有用户。

2.格式

cmp[options] 文件名

 

cat

1.作用

cat(“concatenate”的缩写)命令用于连接并显示指定的一个和多个文件的有关信息,它的使用权限是所有用户。

2.格式

cat [options] 文件1 文件2……

 

ln

1.作用

ln命令用来在文件之间创建链接,它的使用权限是所有用户。

2.格式

ln [options] 源文件 [链接名]

 

系统管理命令:

df

1.作用

df命令用来检查文件系统的磁盘空间占用情况,使用权限是所有用户。

2.格式

df [options]

 

top

1.作用

top命令用来显示执行中的程序进程,使用权限是所有用户。

2.格式

top [-] [d delay] [q] [c] [S] [s] [i] [n]

 

free

1.作用

free命令用来显示内存的使用情况,使用权限是所有用户。

2.格式

free [-b|-k|-m] [-o] [-s delay] [-t] [-V]

 

 

quota

1.作用

quota命令用来显示磁盘使用情况和限制情况,使用权限超级用户。

2.格式

quota [-g][-u][-v][-p] 用户名 组名

 

at

1.作用

at命令用来在指定时刻执行指定的命令序列。

2.格式

at [-V] [-q x] [-f file] [-m] time

 

lp

1.作用

lp是打印文件的命令,使用权限是所有用户。

2.格式

lp [-c][-d][-m][-number][-title][-p]

3.主要参数

c:先拷贝文件再打印。

d:打印队列文件。

m:打印结束后发送电子邮件到用户。

number:打印份数。

title:打印标题。

p:设定打印的优先级别,最高为100。

 

useradd

1.作用

useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。

2.格式

useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name

3.主要参数

c:加上备注文字,备注文字保存在passwd的备注栏中。 

d:指定用户登入时的启始目录。

D:变更预设值。

e:指定账号的有效期限,缺省表示永久有效。

f:指定在密码过期后多少天即关闭该账号。

g:指定用户所属的群组。

G:指定用户所属的附加群组。

m:自动建立用户的登入目录。

M:不要自动建立用户的登入目录。

n:取消建立以用户名称为名的群组。

r:建立系统账号。

s:指定用户登入后所使用的shell。

u:指定用户ID号。

 

groupadd

1.作用

groupadd命令用于将新组加入系统。

2.格式

groupadd [-g gid] [-o]] [-r] [-f] groupname

3.主要参数

g gid:指定组ID号。

o:允许组ID号,不必惟一。

r:加入组ID号,低于499系统账号。

f:加入已经有的组时,发展程序退出。

 

kill

1.作用

kill命令用来中止一个进程。

2.格式

kill [ -s signal | -p ] [ -a ] pid ...

kill -l [ signal ]

3.参数

s:指定发送的信号。

p:模拟发送信号。

l:指定信号的名称列表。

pid:要中止进程的ID号。

Signal:表示信号。

 

crontab

1.作用

使用crontab命令可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户。

2.格式

crontab [ -u user ] 文件

crontab [ -u user ] { -l | -r | -e }

3.主要参数

e:执行文字编辑器来设定时程表,内定的文字编辑器是vi。

r:删除目前的时程表。

l:列出目前的时程表。

 

网络操作命令:

ifconfig

1.作用

ifconfig用于查看和更改网络接口的地址和参数,包括IP地址、网络掩码、广播地址,使用权限是超级用户。

2.格式

ifconfig -interface [options] address

3.主要参数

-interface:指定的网络接口名,如eth0和eth1。

up:激活指定的网络接口卡。

down:关闭指定的网络接口。

broadcast address:设置接口的广播地址。

pointopoint:启用点对点方式。

address:设置指定接口设备的IP地址。

netmask address:设置接口的子网掩码。

 

ip

1.作用

ip是iproute2软件包里面的一个强大的网络配置工具,它能够替代一些传统的网络管理工具,例如ifconfig、route等,使用权限为超级用户。几乎所有的Linux发行版本都支持该命令。

2.格式

ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]

3.主要参数

OPTIONS是修改ip行为或改变其输出的选项。所有的选项都是以-字符开头,分为长、短两种形式。

 

ping

1.作用

ping检测主机网络接口状态,使用权限是所有用户。

2.格式

ping [-dfnqrRv][-c][-i][-I][-l][-p][-s][-t] IP地址

3.主要参数

-d:使用Socket的SO_DEBUG功能。

-c:设置完成要求回应的次数。

-f:极限检测。

-i:指定收发信息的间隔秒数。

-I:网络界面使用指定的网络界面送出数据包。

-l:前置载入,设置在送出要求信息之前,先行发出的数据包。

-n:只输出数值。

-p:设置填满数据包的范本样式。

-q:不显示指令执行过程,开头和结尾的相关信息除外。

-r:忽略普通的Routing Table,直接将数据包送到远端主机上。

-R:记录路由过程。

-s:设置数据包的大小。

-t:设置存活数值TTL的大小。

-v:详细显示指令的执行过程。

 

 

netstat

1.作用

检查整个Linux网络状态。

2.格式

netstat [-acCeFghilMnNoprstuvVwx][-A][--ip]

3.主要参数

-a--all:显示所有连线中的Socket。

-A:列出该网络类型连线中的IP相关地址和网络类型。

-c--continuous:持续列出网络状态。

-C--cache:显示路由器配置的快取信息。

-e--extend:显示网络其它相关信息。

-F--fib:显示FIB。

-g--groups:显示多重广播功能群组组员名单。

-h--help:在线帮助。

-i--interfaces:显示网络界面信息表单。

-l--listening:显示监控中的服务器的Socket。

-M--masquerade:显示伪装的网络连线。

-n--numeric:直接使用IP地址,而不通过域名服务器。

-N--netlink--symbolic:显示网络硬件外围设备的符号连接名称。

-o--timers:显示计时器。

-p--programs:显示正在使用Socket的程序识别码和程序名称。

-r--route:显示Routing Table。

-s--statistice:显示网络工作信息统计表。

-t--tcp:显示TCP传输协议的连线状况。

-u--udp:显示UDP传输协议的连线状况。

-v--verbose:显示指令执行过程。

-V--version:显示版本信息。

-w--raw:显示RAW传输协议的连线状况。

-x--unix:和指定“-A unix”参数相同。

--ip--inet:和指定“-A inet”参数相同。

 

telnet

1.作用

telnet表示开启终端机阶段作业,并登入远端主机。telnet是一个Linux命令,同时也是一个协议(远程登陆协议)。

2.格式

telnet [-8acdEfFKLrx][-b][-e][-k][-l][-n][-S][-X][主机名称IP地址<通信端口>]

3.主要参数

-8:允许使用8位字符资料,包括输入与输出。

-a:尝试自动登入远端系统。

-b:使用别名指定远端主机名称。

-c:不读取用户专属目录里的.telnetrc文件。

-d:启动排错模式。

-e:设置脱离字符。

-E:滤除脱离字符。

-f:此参数的效果和指定“-F”参数相同。

-F:使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。

-k:使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。

-K:不自动登入远端主机。

-l:指定要登入远端主机的用户名称。

-L:允许输出8位字符资料。

-n:指定文件记录相关信息。

-r:使用类似rlogin指令的用户界面。

-S:服务类型,设置telnet连线所需的IP TOS信息。

-x:假设主机有支持数据加密的功能,就使用它。

-X:关闭指定的认证形态。

 

ftp

1.作用

ftp命令进行远程文件传输。FTP是ARPANet的标准文件传输协议,该网络就是现今Internet的前身,所以ftp既是协议又是一个命令。

2.格式

ftp [-dignv][主机名称IP地址]

3.主要参数

-d:详细显示指令执行过程,便于排错分析程序执行的情形。

-i:关闭互动模式,不询问任何问题。

-g:关闭本地主机文件名称支持特殊字符的扩充特性。

-n:不使用自动登陆。

-v:显示指令执行过程。

 

route

1.作用

route表示手工产生、修改和查看路由表。

2.格式

#route [-add][-net|-host] targetaddress [-netmask Nm][dev]If]

#route [-delete][-net|-host] targetaddress [gw Gw] [-netmask Nm] [dev]If]

3.主要参数

-add:增加路由。

-delete:删除路由。

-net:路由到达的是一个网络,而不是一台主机。

-host:路由到达的是一台主机。

-netmask Nm:指定路由的子网掩码。

gw:指定路由的网关。

[dev]If:强迫路由链指定接口。

rlogin

1.作用

rlogin用来进行远程注册。

2.格式

rlogin [ -8EKLdx ] [ -e char ] [-k realm ] [ - l username ] host

3.主要参数

-8:此选项始终允许8位输入数据通道。该选项允许发送格式化的ANSI字符和其它的特殊代码。如果不用这个选项,除非远端的不是终止和启动字符,否则就去掉奇偶校验位。

-E:停止把任何字符当作转义字符。当和-8选项一起使用时,它提供一个完全的透明连接。

-K:关闭所有的Kerberos确认。只有与使用Kerberos 确认协议的主机连接时才使用这个选项。

-L:允许rlogin会话在litout模式中运行。要了解更多信息,请查阅tty联机帮助。

-d:打开与远程主机进行通信的TCP sockets的socket调试。要了解更多信息,请查阅setsockopt的联机帮助。

-e:为rlogin会话设置转义字符,默认的转义字符是“~”。

-k:请求rlogin获得在指定区域内远程主机的Kerberos许可,而不是获得由krb_realmofhost(3)确定的远程主机区域内的远程主机的Kerberos许可。

-x:为所有通过rlogin会话传送的数据打开DES加密。这会影响响应时间和CPU利用率,但是可以提高安全性。

 

rcp

1.作用

rcp代表远程文件拷贝,用于计算机之间文件拷贝,使用权限是所有用户。

2.格式

rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file

3.主要参数

-r:递归地把源目录中的所有内容拷贝到目的目录中。要使用这个选项,目的必须是一个目录。

-p:试图保留源文件的修改时间和模式,忽略umask。

-k:请求rcp获得在指定区域内的远程主机的Kerberos许可,而不是获得由krb_relmofhost(3)确定的远程主机区域内的远程主机的Kerberos许可。

-x:为传送的所有数据打开DES加密。

 

finger

1.作用

finger用来查询一台主机上的登录账号的信息,通常会显示用户名、主目录、停滞时间、登录时间、登录Shell等信息,使用权限为所有用户。

2.格式

finger [选项] [使用者] [用户@主机]

3.主要参数

-s:显示用户注册名、实际姓名、终端名称、写状态、停滞时间、登录时间等信息。

-l:除了用-s选项显示的信息外,还显示用户主目录、登录Shell、邮件状态等信息,以及用户主目录下的.plan、.project和.forward文件的内容。

-p:除了不显示.plan文件和.project文件以外,与-l选项相同。

 

mail

1.作用

mail作用是发送电子邮件,使用权限是所有用户。此外,mail还是一个电子邮件程序。

2.格式

mail [-s subject] [-c address] [-b address]

mail -f [mailbox]mail [-u user]

3.主要参数

-b address:表示输出信息的匿名收信人地址清单。

-c address:表示输出信息的抄送()收信人地址清单。

-f [mailbox]:从收件箱者指定邮箱读取邮件。

-s subject:指定输出信息的主体行。

[-u user]:端口指定优化的收件箱读取邮件。

 

nslookup

1.作用

nslookup命令的功能是查询一台机器的IP地址和其对应的域名。使用权限所有用户。它通常需要一台域名服务器来提供域名服务。如果用户已经设置好域名服务器,就可以用这个命令查看不同主机的IP地址对应的域名。

2.格式

nslookup [IP地址/域名]

 

网络安全命令:

passwd

1.作用

passwd命令原来修改账户的登陆密码,使用权限是所有用户。

2.格式

passwd [选项] 账户名称

3.主要参数

-l:锁定已经命名的账户名称,只有具备超级用户权限的使用者方可使用。

-u:解开账户锁定状态,只有具备超级用户权限的使用者方可使用。

-x, --maximum=DAYS:最大密码使用时间(天),只有具备超级用户权限的使用者方可使用。

-n, --minimum=DAYS:最小密码使用时间(天),只有具备超级用户权限的使用者方可使用。

-d:删除使用者的密码, 只有具备超级用户权限的使用者方可使用。

-S:检查指定使用者的密码认证种类, 只有具备超级用户权限的使用者方可使用。

 

su

1.作用

su的作用是变更为其它使用者的身份,超级用户除外,需要键入该使用者的密码。

2.格式

su [选项]... [-] [USER [ARG]...]

3.主要参数

-f , --fast:不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell。

-l , --login:加了这个参数之后,就好像是重新登陆为该使用者一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并且工作目录也会改变。如果没有指定USER,缺省情况是root。

-m, -p ,--preserve-environment:执行su时不改变环境变数。

-c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。

USER:欲变更的使用者账号,ARG传入新的Shell参数。

 

chmod

1.作用

chmod命令是非常重要的,用于改变文件或目录的访问权限,用户可以用它控制文件或目录的访问权限,使用权限是超级用户。

2.格式

chmod命令有两种用法。一种是包含字母和操作符表达式的字符设定法(相对权限设定);另一种是包含数字的数字设定法(绝对权限设定)。

1)字符设定法

chmod [who] [+ | - | =] [mode] 文件名

◆操作对象who可以是下述字母中的任一个或它们的组合

u:表示用户,即文件或目录的所有者。

g:表示同组用户,即与文件属主有相同组ID的所有用户。

o:表示其它用户。

a:表示所有用户,它是系统默认值。

◆操作符号

+:添加某个权限。

-:取消某个权限。

=:赋予给定权限,并取消其它所有权限(如果有的话)。

◆设置mode的权限可用下述字母的任意组合

r:可读。

w:可写。

x:可执行。

X:只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x属性。

s:文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。

t:保存程序的文本到交换设备上。

u:与文件属主拥有一样的权限。

g:与和文件属主同组的用户拥有一样的权限。

o:与其它用户拥有一样的权限。

文件名:以空格分开的要改变权限的文件列表,支持通配符。

一个命令行中可以给出多个权限方式,其间用逗号隔开。

2) 数字设定法

数字设定法的一般形式为: chmod [mode] 文件名

数字属性的格式应为3个0到7的八进制数,其顺序是(u)(g)(o)文件名,以空格分开的要改变权限的文件列表,支持通配符。

数字表示的权限的含义如下:0001为所有者的执行权限;0002为所有者的写权限;0004为所有者的读权限;0010为组的执行权限;0020为组的写权限;0040为组的读权限;0100为其他人的执行权限;0200为其他人的写权限;0400为其他人的读权限;1000为粘贴位置位;2000表示假如这个文件是可执行文件,则为组ID为位置位,否则其中文件锁定位置位;4000表示假如这个文件是可执行文件,则为用户ID为位置位

 

sudo

1.作用

sudo是一种以限制配置文件中的命令为基础,在有限时间内给用户使用,并且记录到日志中的命令,权限是所有用户。

2.格式

sudo [-bhHpV] [-s <shell>] [-u <用户>] [指令]

sudo [-klv]

3.主要参数

b:在后台执行命令。

-h:显示帮助。

-H:将HOME环境变量设为新身份的HOME环境变量。

-k:结束密码的有效期,即下次将需要输入密码。

-l:列出当前用户可以使用的命令。

-p:改变询问密码的提示符号。

-s <shell>:执行指定的Shell。

-u <用户>:以指定的用户为新身份,不使用时默认为root。

-v:延长密码有效期5分钟

 

ps

1.作用

ps显示瞬间进程 (process) 的动态,使用权限是所有使用者。

2.格式

ps [options] [--help]

3.主要参数

ps的参数非常多, 此出仅列出几个常用的参数。

-A:列出所有的进程。

-l:显示长列表。

-m:显示内存信息。

-w:显示加宽可以显示较多的信息。

-e:显示所有进程。

a:显示终端上的所有进程,包括其它用户的进程。

-au:显示较详细的信息。

-aux:显示所有包含其它使用者的进程。

 

who

1.作用

who显示系统中有哪些用户登陆系统,显示的资料包含了使用者ID、使用的登陆终端、上线时间、呆滞时间、CPU占用,以及做了些什么。 使用权限为所有用户。

2.格式

who - [husfV] [user]

3.主要参数

-h:不要显示标题列。

-u:不要显示使用者的动作/工作。

-s:使用简短的格式来显示。

-f:不要显示使用者的上线位置。

-V:显示程序版本。

 

其他命令:

tar

1.作用

tar命令是Unix/Linux系统中备份文件的可靠方法,几乎可以工作于任何环境中,它的使用权限是所有用户。

2.格式

tar [主选项+辅选项] 文件或目录

3.主要参数

使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。

主选项:

-c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。

-r 把要存档的文件追加到档案文件的未尾。例如用户已经做好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。

-t 列出档案文件的内容,查看已经备份了哪些文件。

-u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。

-x 从档案文件中释放文件。

辅助选项:

-b 该选项是为磁带机设定的,其后跟一数字,用来说明区块的大小,系统预设值为20(20×512 bytes)。

-f 使用档案文件或设备,这个选项通常是必选的。

-k 保存已经存在的文件。例如把某个文件还原,在还原的过程中遇到相同的文件,不会进行覆盖。

-m 在还原文件时,把所有文件的修改时间设定为现在。

-M 创建多卷的档案文件,以便在几个磁盘中存放。

-v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。

-w 每一步都要求确认。

-z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。

 

unzip

1.作用

unzip 命令位于/usr/bin目录中,它们和MS DOS下的pkzip、pkunzip及MS Windows中的Winzip软件功能一样,将文件压缩成.zip文件,以节省硬盘空间,当需要的时候再将压缩文件用unzip命令解开。该命令使用权限是所有用户。

2.格式

unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>]

3.主要参数

-c:将解压缩的结果显示到屏幕上,并对字符做适当的转换。

-f:更新现有的文件。

-l:显示压缩文件内所包含的文件。

-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。

-t:检查压缩文件是否正确。

-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中。

-v:执行是时显示详细的信息。

-z:仅显示压缩文件的备注文字。

-a:对文本文件进行必要的字符转换。

-b:不要对文本文件进行字符转换。

-C:压缩文件中的文件名称区分大小写。

-j:不处理压缩文件中原有的目录路径。

-L:将压缩文件中的全部文件名改为小写。

-M:将输出结果送到more程序处理。

-n:解压缩时不要覆盖原有的文件。

-o:不必先询问用户,unzip执行后覆盖原有文件。

-P<密码>:使用zip的密码选项。

-q:执行时不显示任何信息。

-s:将文件名中的空白字符转换为底线字符。

-V:保留VMS的文件版本信息。

-X:解压缩时同时回存文件原来的UID/GID。

[.zip文件]:指定.zip压缩文件。

[文件]:指定要处理.zip压缩文件中的哪些文件。

-d<目录>:指定文件解压缩后所要存储的目录。

-x<文件>:指定不要处理.zip压缩文件中的哪些文件。

-Z unzip:-Z等于执行zipinfo指令。在Linux中,还提供了一个叫zipinfo的工具,能够察看zip压缩文件的详细信息。unzip最新版本是5.50。

 

gunzip

1.作用

gunzip命令作用是解压文件,使用权限是所有用户。

2.格式

gunzip [-acfhlLnNqrtvV][-s <压缩字尾字符串>][文件...]

或者

gunzip [-acfhlLnNqrtvV][-s <压缩字尾字符串>][目录]

 

unarj

1.作用

unarj解压缩格式为.arj格式的文件,使用权限是所有用户。

2.格式

unarj [eltx][.arj压缩文件]

3.主要参数

e:解压缩.arj文件。

l:显示压缩文件内所包含的文件。

t:检查压缩文件是否正确。

x:解压缩时保留原有的路径。

 

mtools

1.作用

mtools 实际上是一个命令集合,是DOS文件系统的工具程序,它可以模拟许多DOS命令,使用起来非常方便。使用权限是所有用户。Linux系统提供了一组称为 mtools的可移植工具,可以让用户轻松地从标准的DOS软盘上读、写文件和目录。它们对DOS和Linux环境之间交换文件非常有用。mtools的使用非常简单,如果想把软盘里所有的文件都拷贝到硬盘上,那么就可以执行以下命令:

mcopy a:*.*

也就是说,只需要在相应的DOS命令之前加上一个字母“m”,就可以完成对应的功能了。一般Linux发行版本中都有这个软件,可以使用下面命令检查一下。

rpm -qa|grep mtools

如果没有安装,也没有关系,可以从网上下载(http://mtools.linux.lu/)一个最新版本来安装。目前可供下载的最新mtools版本是

2.包括的命令

mcd 目录名:改变MS DOS下的目录。

mcopy 源文件 目标文件:在MS DOS和Unix之间复制文件。

mdel 文件名:删除MS DOS下的文件。

mdir 目录名:显示MS DOS下的目录。

mformat 驱动器号:在低级格式化的软盘上创建MS DOS文件系统。

rnlabel 驱动器号:产生MS DOS下的卷标。

mmd 目录名:建立MS DOS下的目录。

mrd 目录名:删除MS DOS下的目录。

mren 源文件 目标文件:重新命名已存在的MS DOS文件。

mtype 文件名:显示MS DOS文件的内容。

请注意,这些命令和对应的MS DOS命令非常相似。在mtools命令中,“/”和“/”是可以混用的。因为文件列表的是DOS系统下的文档,对大小写并不敏感,所以“CDE”和“cde”在这里是一样的。

 

man
1.作用
man命令用来提供在线帮助,使用权限是所有用户。在Linux系统中存储着一部联机使用的手册,以供用户在终端上查找。使用man命令可以调阅其中的帮助信息,非常方便和实用。
2.格式
man 命令名称
man [-acdfhkKtwW] [-m system] [-p string] [-C config_file] [-M path] [-P pager] [-S section_list] [section] name ...
3.参数
-C config_file:指定设定文件man.conf,缺省值是/etc/man.conf。
-M path:指定了联机手册的搜寻路径, 如果没有指定则使用环境变数MANPATH的设定;如果没有使用MANPATH, 则会使用/usrb/man.conf内的设定;如果MANPATH是空字串,则表示使用缺省值。
-P pager:指定使用何种pager.man会优先使用此选项设定,然后是依环境变数MANPAGER设定,然后是环境变数PAGER;man缺省使用/usr/bin/less -is。
-S section_list man:所搜寻的章节列表(以冒号分隔),此选项会覆盖环境变数MANSECT的设定。
-a man:缺省情况是在显示第一个找到的手册之后,就会停止搜寻,使用此选项会强迫man继续显示所有符合name的联机手册。
-c:即使有最新的cat page,也继续对联机手册重新作排版,本选项在屏幕的行列数改变时或已排版的联机手册损坏时特别有意义。
-d:不要真的显示联机手册,只显示除错讯息。
-D:同时显示联机手册与除错讯息。
-h:显示求助讯息然后结束程式 。
-K:对所有的联机手册搜寻所指定的字串。请注意,本功能回应速度可能很慢,如果指定section(区域)会对速度有帮助。
-m system:依所指定的system名称而指定另一组的联机手册。
man:是manual(手册)的缩写。在输入命令有困难时,可以立刻得到这个文档。例如, 如果使用ps命令时遇到困难,可以输入man ps得到帮助信息,此时会显示出ps的手册页(man page)。
由于手册页man page是用less程序来看的(可以方便地使屏幕上翻和下翻), 所以在man page里可以使用less的所有选项。
less中比较重要的功能键有:
[q] 退出;
[Enter] 一行行地下翻;
[Space] 一页页地下翻;
[b] 上翻一页;
[/] 后跟一个字符串和[Enter]来查找字符串;
[n] 发现上一次查找的下一个匹配。

 

unencode

1.作用

unencode命令可以把一个二进制文件表编码为一个文本文件,使用权限是所有用户。

2.格式

uuencode [-hv] [源文件] 目标文件

3.主要参数

h:列出指令使用格式(help) 。

v:列出版本信息。

 

uudecode

1.作用

uudecode命令用来将uuencode编码后的档案还原,uudecode只会将begin与end标记之间的编码资料还原,程序会跳过标记以外的资料。它的使用权限为所有用户。

2.格式

uuencode [-hv] [file1 ...]

3.主要参数

h:列出指令使用格式(help)。

v:列出版本信息。

原创粉丝点击