网络客户端:

elinks --> links
 q 退出
命令行模式下上网!
elinks :
 elinks [OPTION]... [URL]...
 -dump 显示网页的所有内容之后直接退出
 -source 显示网页的所有源代码
 
wget :
 wget [option]... [URL]...
 --tries=20 尝试连接次数
 --wait=10 等待 10秒钟
 -O file 指定输出文件
 -c 支持断点续传
 -q 工作在静默模式下, 不输出任何信息
 eg:
 wget -r --tries=10 http://fly.srk.fer.hr/ -o log
 
ftp:
 help
 cd
 ls
 get
 mget: 下载多个文件
     eg:
     lftp 172.16.0.1
     cd /pub/Server/Heatbeat2
     mget *.i386.rpm
     bye
 
 put
 mput
 
 ftp [-v] [-d] [-i] [-n] [-g] [-k realm] [-f] [-x] [-u] [-t] [host]

 
lftp:
支持文件名自动补全,且速度快!
!cd  切换服务器目录
lcd  切换本地目录

使用办法:
lftp ftp://ftp:ftp@192.168.0.254

lftpget:
lftpget [-c] [-d] [-v] URL [URL...]
使用办法:
lftpget URL

linux:
 ssh SERVER
 默认用户名为登陆至当前的系统用户;
 eg:
 ssh -l root 192.168.0.33
 ssh root@192.168.0.33
  指定用户登陆特定的ssh!

ssh有两种认证机制:
  基于口令
  基于密钥
 
  client :172.16.100.1
  server : 172.16.100.2
  1、在客户端生成一对密钥:.ssh/id_rsa, .ssh/id_rsa.pub
  2、把公钥.ssh/id_rsa.pub 复制远程服务器的那个用户的家目录下的.ssh目录中的authorized_keys
  3、客户端验证登陆;
 
scp:
本地和远程之间传输文件!
scp LOCAL_PATH USESRNAME@SERVER :PATH  本地传输至远程主机
scp USERNAME@SERVER:PATH LOCAL_PATH  远程主机传输至本地
 -r 复制目录
 -p 保存文件的源属性
 -a 相当于 -r + -p
 -C进行压缩再传输
ssh username@SERVER 'COMMAND' 不登陆服务器只是以某用户的身份执行某个命令!


rsync :( 同步工具,快速复制工具)
rsync [OPTION]... [USER@]HOST:SRC [DEST]
  -r 复制目录
  -p 保存权限
  -a 相当于 -r + -p
  -e ssh 加密,实现同步!

ping命令:
 -c 指定ping的数据包数
 -w 超时时间

 
 
dig
DNS 解析工具:

dig [@server] [-b address] [-c class]
           [-f filename] [-k filename] [-m]
           [-p port#] [-t type] [-x addr]
           [-y name:key] [-4] [-6] [name] [type]
           [class] [queryopt...]
 
使用方法:
    dig -t A  FQDN(完全限定域名)
 dig -x IP

host
   host -t A FQDN
   host -t PTR IP


netstat
 -t 显示跟tcp协议相关的连接状态
 -u  ...  udp   ....
 -n 以数字的形式来显示状态!
 -p 显示监听哪个程序
 -rn 显示当前系统上路由表的相关信息!
 
 
traceroute


curl:URL获取工具!

使用方法:
curl URL
 -I 显示网页http协议的首部特征
 -v 显示获取网页的文件信息的交互过程
 -O 下载文件并且保持下载后的原文件的名字不变
 -o 下载文件后自己指定下载的文件名
 -s 静默模式 不显示过程

 
su命令新用法
su -l redhat -c 'COMMAND'


w
显示当前系统上登陆的用户,以及正在执行的任务!

w - [husfV] [user]

who

whoami  显示当前用户是谁!


last 成功登陆及系统重启的信息!
 -n# 仅显示最近#条成功登陆的信息
lastb 登陆系统的失败尝试!
 -n# 仅显示最近#条失败尝试的信息
lastlog 显示每一个用户最近一次登陆的信息
 -u USERNAME 仅显示某用户的最近一次登陆的信息

 

 

写一个脚本
1、如果/tmp/net目录存在就切换至此目录,否则就先创建此目录,而后切换进去;
2、下载ftp://192.168.0.254/pub/Files/RH033.txt至此目录中,并将名字设置为在原名字后面添加上当前日期和时间,形如:
  rh033-2012-02-212-17-31-10.txt
3、下载完成后向用户报告完成下载。

#!/bin/bash
#
DIR=/tmp/net
[ -d $DIR ] || mkdir -p /tmp/net &> /dev/null

  cd $DIR &> /dev/null

which curl &> /dev/null || exit 7

curl -s -o $DIR/ RH033-`date +%F-%H-%S`.txt ftp://192.168.0.254/pub/Files/RH033.txt
[ $? -eq 0 ] && echo "The file has Download in your system!"
~                                                              

写一个脚本:
1、提醒用户输入要下载的文件所在的服务器地址,形如:ftp://172.16.0.1
2、提醒用户输入要下载的文件在远程服务器上的路径,形如:/pub/isos/rhci.iso,这个路径跟前面指定的服务器路径一起组成URL;
3、提醒用户输入下载后的文件的保存目录;如果保存目录存在则提醒用户目录已经存在,并提示用户是否继续。如果用户回答否的话则终止下载;如果要保存的目录不存在,则先创建之;
4、下载文件完成后,提醒用户下载完成;

写一个脚本,自动实现创建基于密钥的方式登录某指定服务器:
1、提醒用户指定远程服务器地址和用户;
2、提醒用户指定本地用户和要使用的密钥对儿名称;
3、如果用户指定的密钥对儿已经存在,则提醒用户使用此密钥对儿,如果用户选则了不使用,则提醒用户需要另行指定一个名字;而后以指定的本地用户的身份执行ssh-keygen,创建本地址密钥对儿;
4、将此密钥对儿的公钥复制到指定的远程服务器对应的文件中;
5、提醒用户创建基于密钥的远程登录完成;