天天看点

linux网络客户端

网络客户端:

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:[email protected]

lftpget:

lftpget [-c] [-d] [-v] URL [URL...]

lftpget URL

linux:

 ssh SERVER

 默认用户名为登陆至当前的系统用户;

 eg:

 ssh -l root 192.168.0.33

 ssh [email protected]

  指定用户登陆特定的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、提醒用户创建基于密钥的远程登录完成;

继续阅读