标签列表

Linux下压缩和优化jpg与png图片的方法Linux系统中rena

看中华 最新资讯 2016-01-02 07:06:42

  linux运维在操作linux过程中,用得最多的linux下载工具想必一定是wget,没有看到哪一台服务器没装过wget的,或许有人使用ftp下载,也有人使用多线程的axel以及ProZilla,毫无疑问这两个工具都非常的出色,但是对于习惯使用wget的人来说显得不适应,于是老外便开发了多线程版本的wget工具mwget,m表示multi多线程的意思.

  mwget

  官方地址:?source=dlp

  代码如下:

  # cd /usr/local/src/

  # wget

  # tar -xjvf mwget_0.1.0.orig.tar.bz2

  # cd mwget_0.1.0.orig

  # ./configure

  # make

  # make install

  configure过程中如果出现如下错误,请安装大于等于0.35版本的intltool

  checking for intltool >= 0.35.0... ./configure: line 6824: intltool-update: command not found

  found

  configure: error: Your intltool is too old. You need intltool 0.35.0 or later.

  # yum install intltool

  wget vs mwget速度测试

  以下使用下载2.4.5版本的mongodb来取样.

  mwget速度测试

  # mwget

  Begin to download: mongodb-linux-x86_64-2.4.5.tgz

  FileSize: 90M

  36% [> => => > ] [ 33M] [2.0M/s] [ETA:00:28]

  mwget速度截图如下:

  20151227122724537.jpg (657×74)wget速度测试

  代码如下:

  # wget

  --2013-08-16 10:55:23--

  Resolving fastdl.mongodb.org... 54.230.114.206, 54.230.113.36, 54.230.114.144, ...

  Connecting to fastdl.mongodb.org54.230.114.206:80... connected.

  HTTP request sent, awaiting response... 200 OK

  Length: 94827295 (90M) [application/x-tar]

  Saving to: “mongodb-linux-x86_64-2.4.5.tgz.1”

  6% [> ] 6,470,547 210K/s eta 6m 26s

  wget速度截图如下

  20151227122744563.jpg (650×155)

  mwget用法:

  代码如下:

  # mwget -h

  GNU MWget 0.1.0 ,a non-interactive and multiline network retriever of all POSTIX Systems.

  Usage: mwget [Options]... [URL]...

  Options:

  -b, --debug Show the debug message

  -c, --count=num Set the retry count to [num], no limit when "0", the default is "99"

  -d, --directory=dir Set the local direcotry to [dir], the default is "."

  -f, --file=file Rename the file to [file]

  -h, --help A brief summary of all the options

  -i, --interval=num Set the ftp retry interval to [num] seconds, the default is "5"

  -n, --number=num Use [num] connections instead of the default (4)

  -r, --referer=URL Include `Referer: [URL]" header in HTTP request.

  -t, --timeout=num Set the connection timeout to [num] seconds, the default is "30"

  -v, --version Show the version of the mwget and exit

  -x, --proxy=URL Set the proxy [URL]

  Mail bug reports and suggestions to

  On website bug reports and suggestions to

  We Welcome your BUG REPORT!

  Axel

  运维工作中,常常需要下载文件,因为网站下载速度限制或者网络等原因导致下载让人无法忍受,前面有介绍多线程wget工具mwget,提速不少,而且使用很简单。axel使用的人更多,不仅仅安装方法简单,命令更简单。往下看。

  安装Axel

  RPM安装Axel(方法一)

  下载地址:

  如图,选择适合你服务器的RPM

  20151227122806055.jpg (759×522)

  复制代码

  root@ttlsa # wget

  root@ttlsa # rpm -ivh axel-2.4-1.el6.rf.x86_64.rpm

  Preparing... ########################################### [100%]

  1:axel ########################################### [100%]

  yum安装Axel(方法二)

  复制代码

  root@ttlsa # yum install axel

  apt-get安装Axel

  如果你是Ubuntu系统

  root@ttlsa # axel -h

  Usage: axel [options] url1 [url2] [url...]

  --max-speed=x -s x 最大速度 (字节/秒)

  --num-connections=x -n x 最大连接数

  --output=f -o f 指定文件名

  --search[=x] -S [x] Search for mirrors and download from x servers

  --header=x -H x 添加header

  --user-agent=x -U x 设置用户代理

  --no-proxy -N 不使用任何代理

  --quiet -q Leave stdout alone

  --verbose -v 显示更多状态信息

  --alternate -a 显示简单进度条

  --help -h 帮助

  --version -V 版本信息

  axel使用实例

  下载centos

  root@ttlsa # axel [ 1%] .......... .......... .......... .......... .......... [4654.5KB/s]

  [ 1%] .......... .......... .......... .......... .......... [4657.1KB/s]

  [ 1%] .......... .......... .......... .......... .......... [4656.5KB/s]

  [ 1%] .......... .......... .......... .......... .......... [4659.3KB/s]

  下载运维生存时间某图片

  复制代码

  代码如下:

  root@ttlsa # axel

  Initializing download:

  File size: 73009 bytes

  Opening output file zabbix-adduser-01.jpg

  Starting download

  < p>root@ttlsa # axel

  Initializing download:

  File size: 73009 bytes

  Opening output file zabbix-adduser-01.jpg

  [ 0%] .......... .......... .......... .......... .......... [ 598.0KB/s]

  [ 70%] .......... .......... .

  Connection 0 finished

  Downloaded 71.3 kilobytes in 0 seconds. (710.02 KB/s)

  简单进度条

  默认情况下,整个屏幕都是进度条,加上-a参数,进度条类似wget。

  复制代码

  代码如下:

  root@ttlsa # axel -a download:

  File size: 4467982336 bytes

  Opening output file CentOS-6.5-x86_64-bin-DVD1.iso

  < p>[ 1%] [0 1 2 3 ] [ 3.2MB/s] [21:47]

  下载限速

  ttlsa的网站带宽有限制,我要保证下载的同时又不影响用户的访问,例如限制为1MB/s的下载速度,如下可以看到速度基本保证在1MB以内。

  复制代码

  代码如下:

  root@ttlsa # axel -s 1024000

  Initializing download:

  File size: 4467982336 bytes

  Opening output file CentOS-6.5-x86_64-bin-DVD1.iso

  State file found: 30522952 bytes downloaded, 4437459384 to go.

  ,,,,,,,... .......... .......... .......... .......... [ 394.8KB/s]

  [ 0%] .......... .......... .......... .......... .......... [ 689.2KB/s]

  [ 0%] .......... .......... .......... .......... .......... [ 879.5KB/s]

  [ 0%] .......... .......... .......... .......... .......... [ 974.5KB/s]

  [ 0%] .......... .......... .......... .......... .......... [1086.4KB/s]

  [ 0%] .......... .......... .......... .......... .......... [ 967.5KB/s]

  [ 0%] .......... .......... .......... .......... .......... [ 943.8KB/s]

  [ 0%] .......... .......... .......... .......... .......... [1021.0KB/s]

  [ 0%] .......... .......... .......... .......... .......... [1066.1KB/s]

  最后

  完成,方法很简单,功能很简单。运维生存时间的服务器以及安装了axel,你的安装了吗?

  磁盘管理

  日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩;

  查看磁盘空间

  查看磁盘空间利用大小

  df -h

  -h: human缩写,以人类易读方式显示结果(既带单位:比如M/G,如果不加这个参数,显示的数字以B为单位)

  $df -h

  /opt/app/todeav/config#df -h

  Filesystem Size Used Avail Use% Mounted on

  /dev/mapper/VolGroup00-LogVol00

  2.0G 711M 1.2G 38% /

  /dev/mapper/vg1-lv2 20G 3.8G 15G 21% /opt/applog

  /dev/mapper/vg1-lv1 20G 13G 5.6G 70% /opt/app查看当前目录所占空间大小

  du -sh

  -h 人性化显示

  -s 递归整个目录的大小

  $du -sh

  653M查看当前目录下所有子文件夹排序后的大小

  for i in `ls`; do du -sh $i; done

  sort

  或者:

  du -sh `ls`

  sort打包/ 压缩

  打包

  在linux中打包和压缩和分两步来实现的;打包是将多个文件归并到一个文件;压缩命令实现大小;

  tar -cvf etc.tar /etc

  <仅打包,不压缩!

  -c :打包选项

  -v :显示打包进度

  -f :使用档案文件

  注:有的系统中指定参数时不需要在前面加上-,直接使用tar xvf

  压缩

  $gzip demo.txt

  生成

  demo.txt.gz

  解包/解压缩

  解包

  tar -xvf demo.tar

  -x 解包选项

  解压后缀为 .tar.gz的文件

  先解压缩,生成**.tar

  $gunzip demo.tar.gz2.

  解包:

  $tar -xvf demo.tar

  $bzip2 -d demo.tar.bz2bz2

  解压

  tar jxvf demo.tar.bz2

  如果tar 不支持j,则同样需要分两步来解包解压缩,使用bzip2来解压,再使用tar解包;

  bzip2 -d demo.tar.bz2

  tar -xvf demo.tar

  -d decompose

  解压缩

  tar解压参数说明:

  -z 解压gz文件

  -j 解压bz2文件

  -J 解压xz文件

  文件及目录管理

  文件管理不外乎文件或目录的创建、删除、查询、移动,有mkdir/rm/mv

  文件查询是重点,用find来进行查询;find的参数丰富,也非常强大;

  查看文件内容是个大的话题,文本的处理有太多的工具供我们使用,在本章中只是点到即止,后面会有专门的一章来介绍文本的处理工具;

  有时候,需要给文件创建一个别名,我们需要用到ln,使用这个别名和使用原文件是相同的效果;

  创建和删除

  创建:

  mkdir

  删除:rm 删除非空目录:

  rm -rf file 目录

  删除日志

  $rm *log

  等价:

  $find ./ -name "*log" -exec rm

  ;

  查看当前目录下文件个数

  $find ./

  wc -l

  移动:

  mv

  复制:

  cp

  复制目录:

  cp -r

  eg:$cp -r source_dir dest_dir

  目录切换

  找到文件/目录位置:

  cd

  切换到上一个工作目录:

  cd -

  切换到home目录:cd or cd ~

  $pwd

  显示当前路径

  $cd path

  更改当前工作路径为path

  列出目录项

  显示当前目录下的文件

  ls

  按时间排序,以列表的方式显示目录项

  ls -lrt

  以上这个命令用到的频率如此之高,以至于我们需要为它建立一个快捷命令方式:

  在.bashrc 中设置命令别名:

  alias lsl="ls -lrt"

  alias lm="ls -almore"

  这样,使用lsl,就可以显示目录中的文件依照修改时间排序;以列表方式显示;

  注:.bashrc 在/home/你的用户名/ 文件夹下,以隐藏文件的方式存储;可使用 ls -a 查看;

  查找目录及文件 find/locate

  搜寻文件或目录:

  $find ./ -name "core"

  xargs file

  查找目标文件夹中是否有obj文件:

  $find ./ -name ".o"

  递归当前目录及子目录删除所有.o文件:

  $find ./ -name "*.o" -exec rm

  ;

  find是实时查找,如果需要更快的查询,可试试locate;locate会为文件系统建立索引数据库,如果有文件更新,需要定期执行更新命令来更新索引库;

  $locate string

  寻找包含有string的路径

  $updatedb

  与find不同,locate并不是实时查找。你需要更新数据库,以获得最新的文件索引信息。

  查看文件内容

  查看文件:

  cat vi head tail more

  $cat -n

  显示时同时显示行号

  $ls -al more

  一页一页显示列表内容;

  $head - 10 **

  只看前10行

  $head -1 filename

  显示文件第一行

  $tail -5 filename

  显示文件倒数第五行

  $diff file1 file2

  查看两个文件间的差别

  $tail -f crawler.log

  动态显示文本最新信息

  查找文件内容

  egrep "03.1/CO/AE" TSF_STAT_111130.log.012

  egrep "A_LSHA777:C" TSF_STAT_111130.log.035 > co.out2

  co.out35: egrep "A_LSHA777:C" TSF_STAT_111130.log.035 > co.out35

  文件与目录权限修改

  chown

  改变文件的拥有者

  chmod

  改变文件读、写、执行等属性

  递归子目录修改:

  chown -R tuxapp source/

  增加脚本可执行权限:

  chmod a+x myt

  给文件增加别名

  创建符号链接/硬链接:

  ln cc ccAgain

  硬连接;删除一个,将仍能找到;

  ln -s cc ccTo

  符号链接(软链接);删除源,另一个无法使用;(后面一个ccTo 为新建的文件)

  管道和重定向

  批处理命令连接执行:

  串联: 使用分号 ;

  前面成功,则执行后面一条,否则,不执行:&&

  前面失败,则后一条执行:

  eg:

  ls /proc && echo suss!

  echo failed.

  能够提示命名是否执行成功or失败;

  与上述相同效果的是:

  if ls /proc; then echo suss; else echo fail; fi

  重定向:

  ls proc/.c > list > &l

  将结果输出到list,将错误输出到同一个文件末尾;

  等价的是:

  ls proc/.c &> list

  ls list1 list2

  可同时列出多个文件;

  清空文件: :> a.txt

  重定向:最佳文本: echo aa >> a.txt

  设置环境变量

  启动帐号后自动执行的是 文件为 .profile,然后通过这个文件可设置本身的环境变量;

  安装的软件路径一般需要加入到path中:

  PATH=$APPDIR:/opt/app/soft/bin:$PATH:/usr/local/bin:$TUXDIR/bin:$ORACLE_HOME/bin;export PATH

  Bash快捷输入或删除

  快捷键:

  Ctl-U 删除光标到行首的所有字符,在某些设置下,删除全行

  Ctl-W 删除当前光标到前边的最近一个空格之间的字符

  Ctl-H backspace,删除光标前边的字符

  Ctl-R: 匹配最相近的一个文件,然后输出

  综合应用

  cat -v record.log

  grep AAA grep -v BBB wc -l

  查找record.log中包含AAA,但不包含BBB的记录的总数来源2016-01-01)

本文相关推荐

  • linux下的分卷压缩
  • linux命令大全
  • linux下怎样解压tgz文件
  • linux怎么压缩文件
  • linux安装mongodb
  • linux系统开发x86架构驱动
  • linux wget 命令
  • linux下压缩文件命令
  • linux压缩命令 tar
  • linux系统如何解压tgz
  • linux压缩命令
  • linux 压缩文件夹
  • 相关新闻

    版权声明

    本文仅代表作者观点,不代表看中华立场。
    本文系作者授权看中华发表,未经许可,不得转载。