linux的一些初步命令

1. vi编辑器的使用 
i. vi的两种模式:命令模式和输入模式
ii. vi命令索引:
    ESC 或 CTRL-[ 转到命令模式  
vi中的行表示:
数字 数字代表的行, 如23代表第23行
. 光标所在的当前行,
$ 文件的最后一行
vi中的范围表示:
开始行,结束行 从开始行到结束行的所有行, 
例子:
1,23 表示第1行到23行的所有行, 
1,. 表示从第一行到光标所在的行
1,$ 表示整个文件
.,$ 光标所在的行直到文件最后的所有行
退出vi的命令
:q 文件没有被修改时退出vi
:q! 强制退出vi, 不保存文件
:wq 保存文件,退出vi
:x 同上
ZZ 同上
:wq! 强制保存文件,退出vi,编辑只读文件,
如/etc/passwd时用
保存或写文件命令
:w 保存整个文件
:〖范围〗w 文件名 保存由范围指定的行到文件
(不指明范围时表示整个文件)
:〖范围〗w! 文件名 强制保存由范围指定的行到文件,
文件存在时覆盖旧的文件(不指
明范围时表示整个文件)
光标移动命令
j    下移一行
k    上移一行
h    左移一个字符
l    右移一个字符
CRTL-f   下移一屏
CRTL-b   上移一屏
0(数字零)    当前行的头
$    当前行的最后
插入命令 (以 <ESC>结束插入模式) 
a    在光标后插入字符
i    在光标前插入字符
A    在行尾插入字符
I       在行的开头插入字符
修改命令 (以 <ESC>结束)
r<c> 替换光标所在字符为c
R    从光标位置开始替换,直到 <ESC> pressed 
dw   删除一个单词
dd   删除一行
yy   把当前行放到缓冲区
Y    把当前行放到缓冲区
p    把缓冲区的内容放到光标之后
P 把缓冲区的内容放到光标之前
u    恢复上次命令的修改
.    重复上次命令
注:
      上面的命令之前可以跟数字,表示重复的次数:
   如:      2dd  删除2行
          3yy  把3行放到缓冲区
命令行模式的命令: 
:r  fileName   把文件fileName读到光标位置之后
:1        到文件的第1行
:30        到文件的第30行
:$        文件尾
:g/pattern1/s//pattern3/g     全局查找, 把“pattern1”
替换成“pattern3”
例如: :g/^M/s///g       将文件中的^M字符换成空
用来将DOS下的文本中的回车去掉
^M的输入是CTRL-V CTRL-M
:范围  co 行号 把指定范围的行拷贝到指定的行
:范围  mo 行号 把指定范围的行移动到指定的行
:set nu        显示行号
:set nonu 不显示行号

2. Internet中域名服务的原理

3. TCP/IP的常识

4. UNIX中的管道和重定向操作 |  > 和 <

命令A  |  命令B 把命令A的输出结果作为命令B的输入
如:   ps -ax | more        查看系统中的进程
last | grep ^root | more   查看root的登录信息
命令 > 文件名 把命令的输出结果写到文件中去
命令 < 文件名 把文件的内容作为命令的输入
例子:uuencode mydoc.txt < mydoc.txt > mydoc.uue
   用uuencode对mydoc.txt编码,得到文件mydoc.uue, 
   用uudecode解码会还原文件mydoc.txt


5. Internet中MAIL的原理、elm、pine的使用以及各种常见的编码方式

i. 电子邮件的工作原理: (此处有一个图, 无法表示)

ii. Netscape, Eudora等Mail部分的配置要点:
l SMTP SERVER: 写成是hpe25.nic.ustc.edu.cn(202.38.64.1), 
或是自己系的服务器的名字或IP地址
l POP SERVER: 自己户头所在机器的名字或IP地址
l From Address:  与自己登记的地址相同,否则发不出校
l Return Address: 一般与From Address相同

iii. Email中常见的编码方式:

编码方式
特点
解码程序

   1. 编码方式: uucode编码
      特点:
   编码的开始有
           begin 文件名 文件模式
           结尾有end
           每一行的第一个字符一般是M,后跟60个字符
      解码程序:
   uuencode/undecode(UNIX)
           ftp://202.38.64.2/ustcnet/code/
           uuencode uudecode(DOS)
   2. 编码方式: base64编码
      特点: 
   一般是在MIME的mail中:
   头部有信息
           Content-Transfer-Encoding: base64
           一行一般是60个字符
      解码程序:
           用Pine直接可以接收也可以用
           ftp://202.38.64.2/ustcnet/code/debase64.c 
           (C源代码,编译后可用)           
           debase64.exe
   3. 编码方式: quoted-printable
      特点: 
           一般是在MIME的mail中:
           头部有信息 Content-Transfer-Encoding: quoted-printable
           有大量的=字符
      解码程序:
           用Pine直接可以接收也可以用
           ftp://202.38.64.2/ustcnet/code/dequot.c 
           (C源代码,编译后可用)
           dequot.exe
   4. 编码方式: BINHEX编码
      特点: 
          一般是Macontosh机器上常用,
  文件中一般有说明:
          (This file must be converted with BinHex)
          一行一般是64个字符
      解码程序:
          保存成文件,用ftp://202.38.64.2/ustcnet/code/binhex.exe(DOS)
          注意在Pine中得到的文件必须要改名后才能用binhex.exe解开

6. UNIX文件系统和常用命令

i. 文件和目录的权限

ii. 常用命令:

    adduser  增加用户
    cat 文件名列表       把文件的内容送到标准输出 

    chgrp [-R] 组名 文件列表  修改文件所属的组
    chmod [-R] 新属性 文件列表 修改文件的属性
    chown [-R] 用户名 文件列表 修改文件的属主
    以上三个命令中有可选项 -R, 指明 -R, 表示同时修改目录的所有
    下级子目录及文件的相应信息
    比如:  chown -R root /home/ftp       把/home/ftp目录下的所有目录和
    文件的属主设为root.

    df           显示磁盘空间的使用情况
    如:  df  的结果
    1 Filesystem        1024-blocks  Used Available Capacity Mounted on
    2 /dev/hda1            755184  634432    80434     89%   /               
    3 /dev/hdb1            755184  613059   101807     86%   /home
    4 /dev/hdd             662618  662618        0    100%   /home/ftp/pub/cdrom
    以上第2行表示/文件系统共有755,184K可用空间, 已经使用了634,432K, 还剩80,434K,
    以上第3行表示/home文件系统共有755,184K可用空间, 已经使用了613,059K, 
    还剩101,807K,
    以上第4行表示/home/ftp/pub/cdrom文件系统共有662,618K可用空间, 
    已经使用了完了.

    du  [目录名]     显示指定目录下各个子目录中文件占有的空间
    如: du /etc 会显示
    3 /etc/skel
    9 /etc/default
    2 /etc/rc.d/init.d
    42 /etc/rc.d
    11 /etc/vga
    2 /etc/ppp
    5 /etc/msgs
    5 /etc/t
    363 /etc
    表示/etc下的文件共占有363K, 其中/etc/skel下有3K, /etc/default下有9K等等.

    find         查找文件并做相应的处理
    如:   
    find / -name "*as*" -print       显示出所有文件名中包含有"as"字符的文件路径
    find / -size +1000k -exec ls -l {} /;     显示出所有大于1000K(1M)的文件路径

    grep        从文件里找字符串
    如:
    grep mount /etc/rc.d/*        从/etc/rc.d下的所有文件里查找字符串mount
    last | grep ^root | more      显示root的登录记录  ( ^表示一行的开头)

    head        显示文件的前几行
    如:
    head /usr/adm/messages        显示文件/etc/adm/messages的前10行内容
    head -200 /usr/adm/messages   显示文件/etc/adm/messages的前200行内容

    kill       中止进程的执行
    kill -9 进程号   中止进程的执行

    man 在UNIX环境中取得帮助
    man   kill 查看kill命令的帮助

    ps   显示当前系统中的进程
    ps -ax        显示所有进程信息, 最左边的一列就是进程号
      PID TTY STAT  TIME COMMAND
        1  ?  S     0:16 init 
        2  ?  SW    0:00 (kflushd)
        3  ?  SW<   0:00 (kswapd)
        4  ?  SW    0:00 (nfsiod)
        5  ?  SW    0:00 (nfsiod)
        6  ?  SW    0:00 (nfsiod)
        7  ?  SW    0:00 (nfsiod)
     2010  ?  S     0:00 /usr/sbin/httpd 
     2178  ?  S     0:00 /usr/sbin/httpd 

    rm 删除文件
    rm  文件名 删除文件
    rm -rf  文件名 没有任何提示的删除文件及其下级目录的所有文件和目录
       (非常危险)

    tar   把多个文件集中到一个文件中, 但不压缩
    如:
    tar cvf /tmp/root.tar /root  把所有/root目录下的文件集中到/tmp/root.tar中
    tar xvf /tmp/root.tar        把集中在/tmp/root.tar中的文件恢复
    tar tvf /tmp/root.tar        显示集中在/tmp/root.tar中文件的信息

    wc   统计文件的行数,单词数,字符数
    如: 
    wc /etc/passwd  显示
    55      99    2882 /etc/passwd
    表示/etc/passwd文件共55行, 99个单词, 2882个字符

    w   who  显示登录用户的信息

    wall  向系统中目前登录的用户广播
    输入wall, 回车后, 可以输入一段信息, 输入完后按CRTL-D, 会把信息送到
    目前登录的用户屏幕上

7. 常见文件的打印
i.  PS文件 
    可以用gs打印, 如在HP Laserjet打印机上打印doc.ps, 可用命令
    gs -sDEVICE=laerjet -sOutputFile=doc.prn doc.ps
    这条命令运行完毕后生成文件doc.prn, 然后把doc.prn取到DOS机器上, 
    用命令(假设打印机接在LPT1上)打印
    COPY DOC.PRN LPT1 /B
ii. DVI
    dvilj4 , dvips等可以把dvi文件转换成HP Laserjet打印机的数据或PS文件
    dvilj4  doc.dvi
    生成的doc.lj可以在DOS下用命令
    COPY doc.lj LPT1 /B
    直接输出到HP的laserjet 4打印机上
iii. TEX
    用latex命令打印,假如有文件doc.tex, 可以用命令
    latex doc
    运行完毕后生成文件doc.dvi,以后的处理请看DVI文件的打印

注:gs, dvi, latex有的系统可能没有安装


8. 用户管理及/etc/profile ~/.profile

i. 增加用户:adduser
ii. 删除用户:
    1.  假如要删除用户A
    2.  如果用户的所有文件都不要保留,可以做如下处理
     rm -rf  /home/A
     find / -user A -print 显示出系统中用户A的所有文件,然后删除
    3.  编辑文件/etc/passwd,删掉用户A对应的行
 
iii. /etc/profile
     这个文件中存放的是所有用户登录时要执行的命令
     .profile
     在用户的Home目录下, 是该用户登录时要执行的命令
 


9. 日常清理
i. /tmp/下的文件可以全部删除
   rm -rf /tmp/*  (注意: 不能用 rm -rf /tmp, 这样的话会把/tmp目录删掉)
ii. /usr/adm/下的所有文件都可以清空:
debug
messages
lastlog
maillog
syslog
wtmp
wtmpx
xferlog
可以用以下命令清空: ( 也可以删除文件,然后建一个和原来的文件同名, 同所有者,
同组, 同样的存取权限的文件)
cd /usr/adm
cp /dev/null debug
cp /dev/null messages
cp /dev/null lastlog
cp /dev/null maillog
cp /dev/null wtmp
cp /dev/null wtmpx
cp /dev/null xferlog
或者可以这样删除:
假设文件wtmp文件原来是这样的:
-rw-r--r--   1 root     root       723744 Apr  4 08:04 wtmp
执行以下命令会清空这个文件
rm wtmp 删除
touch wtmp 生成一个空文件
chown root wtmp 修改属主
chgrp root wtmp 修改组
chmod u=rw wtmp 修改存取权限
chmod og=r wtmp 修改存取权限
iii. /usr/tmp下的文件可以全部删除
rm -rf /usr/tmp/*
iv. /usr/preserve 下比较旧的文件也可以删除
下面的命令删除/usr/preserve中最近5天没有被修改的文件
find /usr/preserve -ctime +5 -exec rm {} /;
v. 假如你的Linux系统没有安装打印机, /usr/spool/lp1下的文件也可以删除
rm /usr/spool/lp1/*
vi. 定期清理用户使用空间
如果用df发现磁盘的剩余空间不多时(比如利用率超过90%),可以用以下命令找
出比较大的文件:
find / -size +5000k -exec ls -l {} /; 找出大于5M的文件
通知文件的所有者处理或直接删除

10. /etc/issue,/etc/issue.net  /etc/motd 文件
/etc/issue文件在控制台上Login: 提示符之前显示
/etc/issue.net文件在用户telnet连上机器时Login: 提示符之前显示
/etc/motd文件在用户登录以后显示
这三个文件有时被用来发布通知

转自:http://staff.ustc.edu.cn/~james/doc/firststep.txt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值