Total Pageviews

Saturday, 26 April 2014

文档生成工具-doxygen

  git clone https://github.com/doxygen/doxygen.git
  cd doxygen
  ./configure
  make
  make install

from http://www.stack.nl/~dimitri/doxygen/download.html
http://www.stack.nl/~dimitri/doxygen/manual/install.html
http://www.stack.nl/~dimitri/doxygen/manual/index.html
http://freecode.com/projects/doxygen
http://sourceforge.net/projects/doxygen/
http://harmony.apache.org/subcomponents/drlvm/DoxygenStart.html

相关帖子:http://briteming.blogspot.com/2015/08/doxygen.html
-------

A more Pythonic version of doxypy, a Doxygen filter for Python.

doxypypy

A more Pythonic version of doxypy, a Doxygen filter for Python.

Intent

For now Doxygen has limited support for Python. It recognizes Python comments, but otherwise treats the language as being more or less like Java. It doesn't understand basic Python syntax constructs like docstrings, keyword arguments, generators, nested functions, decorators, or lambda expressions. It likewise doesn't understand conventional constructs like doctests or ZOPE-style interfaces. It does however support inline filters that can be used to make input source code a little more like what it's expecting.
The excellent doxypy makes it possible to embed Doxygen commands in Python docstrings, and have those docstrings converted to Doxygen-recognized comments on the fly per Doxygen's regular input filtering process. It however does not address any of the other previously mentioned areas of difficulty.
This project started off as a fork of doxypy but quickly became quite distinct. It shares little (if any) of the same code at this point (but maintains the original license just in case). It is meant to support all the same command line options as doxypy, but handle additional Python syntax beyond docstrings.

Additional Syntax Supported

Python can have functions and classes within both functions and classes. Doxygen best understands this concept via its notion of namespaces. This filter thus can supply Doxygen tags marking namespaces on every function and class. This addresses the issue of Doxygen merging inner functions' documentation with the documentation of the parent.
Python class members whose names begin with a double-underscore are mangled and kept private by the language. Doxygen does not understand this natively yet, so this filter additionally provides Doxygen tags to label such variables as private.
Python frequently embeds doctests within docstrings. This filter makes it trivial to mark off such sections of the docstring so they get displayed as code.
ZOPE-style interfaces overload class definitions to be interface definitions, use embedded variable assignments to identify attributes, and use specific function calls to indicate interface adherence. Furthermore, they frequently don't have any code beyond their docstrings, so naively removing docstrings would result in broken Python. This filter has basic understanding of these interfaces and treats them accordingly, supplying Doxygen tags as appropriate.
Fundamentally Python docstrings are meant for humans and not machines, and ought not to have special mark-up beyond conventional structured text. This filter heuristically examines Python docstrings, and ones like the sample for complex in PEP 257 or that generally follow the stricter Google Python Style Guide will get appropriate Doxygen tags automatically added.

How It Works

This project takes a radically different approach than doxypy. Rather than use regular expressions tied to a state machine to figure out syntax, Python's own Abstract Syntax Tree module is used to extract items of interest. If the autobrief option is enabled, docstrings are parsed via a set of regular expressions and a producer / consumer pair of coroutines.

Example

This filter will correctly process code like the following working (albeit contrived) example:
def myfunction(arg1, arg2, kwarg='whatever.'):
    """
    Does nothing more than demonstrate syntax.

    This is an example of how a Pythonic human-readable docstring can
    get parsed by doxypypy and marked up with Doxygen commands as a
    regular input filter to Doxygen.

    Args:
        arg1:   A positional argument.
        arg2:   Another positional argument.

    Kwargs:
        kwarg:  A keyword argument.

    Returns:
        A string holding the result.

    Raises:
        ZeroDivisionError, AssertionError, & ValueError.

    Examples:
        >>> myfunction(2, 3)
        '5 - 0, whatever.'
        >>> myfunction(5, 0, 'oops.')
        Traceback (most recent call last):
            ...
        ZeroDivisionError: integer division or modulo by zero
        >>> myfunction(4, 1, 'got it.')
        '5 - 4, got it.'
        >>> myfunction(23.5, 23, 'oh well.')
        Traceback (most recent call last):
            ...
        AssertionError
        >>> myfunction(5, 50, 'too big.')
        Traceback (most recent call last):
            ...
        ValueError
    """
    assert isinstance(arg1, int)
    if arg2 > 23:
        raise ValueError
    return '{0} - {1}, {2}'.format(arg1 + arg2, arg1 / arg2, kwarg)
There are a few points to note:
1. No special tags are used. Best practice human-readable section headers are enough.
2. Some flexibility is allowed. Most common names for sections are accepted, and items and descriptions may be separated by either colons or dashes.
  1. The brief must be the first item and be no longer than one line.
4. Everything thrown into an examples section will be treated as code, so it's the perfect place for doctests.
Additional more comprehensive examples can be found in the test area.

Installing doxypypy

One can use either pip or easy_install for installation. Running either:
pip install doxypypy
or:
easy_install doxypypy
with administrator privileges should do the trick.

Previewing doxypypy Output

After successful installation, doxypypy can be run from the command line to preview the filtered results with:
doxypypy -a -c file.py
Typically you'll want to redirect output to a file for viewing in a text editor:
doxypypy -a -c file.py > file.py.out

Invoking doxypypy from Doxygen

To make Doxygen run your Python code through doxypypy, set the FILTER_PATTERNS tag in your Doxyfile as follows:
FILTER_PATTERNS        = *.py=py_filter
py_filter must be available in your path as a shell script (or Windows batch file). If you wish to run py_filter in a particular directory you can include the full or relative path.
For Unix-like operating systems, py_filter should like something like this:
#!/bin/bash
doxypypy -a -c $1
In Windows, the batch file should be named py_filter.bat, and need only contain the one line:
doxypypy -a -c %1
Running Doxygen as usual should now run all Python code through doxypypy. Be sure to carefully browse the Doxygen output the first time to make sure that Doxygen properly found and executed doxypypy。

from https://github.com/Feneric/doxypypy 
--------------------------------

How To Use Doxygen

環境需求

  • cmake
  • doxygen
  • Windows或是Linux都可以,只要你有裝doxygen和cmake

cmake 的 configure_file指令

configure_file指令最主要的作用就是把目標檔案的特定內容,做修改/替換,然後輸出成另一個檔案
在這個專案中,已事前使用 doxygen -g Doxyfile.in 產生了設定檔
然後針對該檔,只保留想要的內容,並且帶入想要被替換的部分
想要被替換的內容包含 @CMAKE_CURRENT_SOURCE_DIR@@CMAKE_CURRENT_BINARY_DIR@
專案建置完後,你可以比較看看 Doxyfile.inbuild/Doxyfile 這兩檔案的差別

Doxygen的設定檔

Doxygen的設定檔所使用的設定檔,預設名稱為Doxyfile
在此專案中,cmake會透過configure_file指令,讀取設定檔模板 Doxyfile.in
取代掉 INPUT 與 OUTPUT_DIRECTORY 的值之後,輸出為 Doxyfile
之後呼叫 Doxygen 產生說明文件 此專案中最基礎的設定值有兩個,分別為 INPUT 和 OUTPUT_DIRECTORY ,對應輸入和輸出

專案建置流程

mkdir build
cd build
cmake ..
cmake --build . # 等同於執行make,或是Visual Studio的建置按鈕
# 執行完會產生 doc_doxygen 資料夾,輸出的說明文件都會在裡面
# 找到 ./html/index.html ,用瀏覽器打開它就是了 
from https://github.com/bdvstg/HowTo_Doxygen_with_CMake 

cinderella man

tilidom.com

九九艳阳天


Waiting Around(柔和而有力)

 胡耀邦的几个“想不到”(共匪官员就这德性)

1989 年4月15日,73岁的中共前总书记胡耀邦因突发大面积心肌梗塞,骤然逝世。导致他骤逝的间接原因是1987年1月10日,邓小平要求中共政治局连续召开 了六天党内生活会批胡,之后,胡耀邦被迫辞去中共总书记的职位。用李锐的话,“他在某些人精心组织的一场‘雾月十八日’中,黯然告别政治舞台”。


   关于邓小平为何要胡耀邦下台,一直有两个很流行的原因。最具代表性的是赵紫阳在他的《改革历程》中指出的两点,一是胡耀邦反自由化不坚决;二是胡耀邦对 香港《百姓》杂志主编陆铿的谈话。赵紫阳在书中专门有一章《胡耀邦被迫辞职》,谈到这两个原因,非常有说服力。但是,笔者最近又重读了一系列有关胡耀邦的 著作和文章,相信除了这两个原因外,还有一个原因。

  这第三个原因是当时的官方说不出口、现在的官方也说不出口的,但可能是更重要的理由,即胡耀邦赞成邓小平全退,邓小平疑心胡耀邦取而代之。

   这种说法其实早有流传,但始终缺少扎实的论证和严谨的分析。故连赵紫阳也认为,胡下台和是否赞成邓退休没有关系。他在接受杨继绳采访时说:“这不是小平 让耀邦下台的根本原因。邓没有这么狭隘,他还是伟大的嘛!”但是在中南海的大红高墙内,邓小平的手段和手腕,同胡耀邦的良心,赵紫阳的头脑一样,几乎无人 不知,无人不晓。

  笔者认为,在胡耀邦下台的问题上,邓小平是耍了手腕的。对中央委员会全会公开选举出来的总书记,邓小平幕后操纵,和几位元老合计把他搞下了台;胡下台的理由既是反自由化不力,也是陆铿采访引起,更是邓小平疑心胡取代自己。

   邓小平的疑心始于他和胡耀邦86年夏季的一次私人谈话。据张黎群、张定等人的《胡耀邦传》披露,1986年5月,邓小平约胡耀邦到家中谈论十三大人事安 排。胡耀邦说:“我已年过70了,十三大一定要下来。”邓小平说:“我、陈云、先念都全下,你要下就半下,不再当总书记,而再当一届军委主席或国家主席, 到时候再说。”8月22日,邓小平在北戴河过81岁生日的酒席上表示,在两年后的中共十三大上全退。10月,胡耀邦在政治局会议上公开表态,说“今天我就 十分具体和坦白地讲,我赞成小平同志带头退下来,这是一个很好的带头。只要小平同志退,别的老同志的工作就好做。我的总书记任期满了,也下来,充分给年轻 的同志让路。”

  胡耀邦讲话后,邓小平没有任何表示,神情严峻。事后,邓小平曾问万里:“耀邦为何偏要我下?”万里答:“可能是失言。”邓小平说:“不,是要树自己(还有一种说法:要取而代之)。”万里说:“耀邦不是那种人。”

   关于胡耀邦公开赞同邓小平退休一事,赵紫阳显然不以为然。他说,耀邦访问欧洲期间,在答记者时多次讲到邓退不退的问题。他讲这些话是不是刺激了邓小平, 引起小平的猜疑,这我不敢讲。我当时也有些感觉,觉得因为他的身份,有些事应该回避,何必对这个问题议论太多呢?他应该慎重些才好。但是,如果胡耀邦“慎 重”一些,那他就不是胡耀邦了。

  胡耀邦要树自己,要取而代之,已经在邓小平心中种下了猜疑的种子,而磊落的胡耀邦却以为,国家领导人 制度正面临新的突破。据胡耀邦的政治秘书刘崇文的回忆文章“耀邦和我谈下台前后”,胡耀邦在1986年几次提到,小平同志同他谈了,明年党的十三大,他不 再担任总书记了,小平、陈云、先念等几位老同志也都退下来。刘崇文说:“他是作为一个好消息告诉我们的,谈话时流露出一种高兴和欣慰的情绪。”1986年 国庆节后,胡更进一步说,十三大要立个规矩,不搞终身制。小平同志全退,我半退,到了年龄的三分之二全退,三分之一半退,进中顾委、人大、政协等。一定要 立下这个规矩,如果在我们手里不立下这个规矩,中国今后还会动乱。

  那时的胡耀邦不知道,邓小平已经在主导一系列的倒胡动作了。

   事实上,被蒙在鼓里的胡耀邦已经失去了十三大中央人事主导权。1986年10月,中央派了一个由薄一波、杨尚昆、宋任穷、姚依林、王震、伍修权、高扬等 组成的七人小组,分头找有关人员征求十三大中央人事如何安排,尤其征求对胡耀邦的意见,而胡耀邦全不知情。七人小组远到各省收集资料,他们到底收获如何 呢?这些收集的资料到底会怎样影响胡耀邦呢?

  1986年10月30日上午,邓小平和李先念到陈云家中,三人进行了长时间的秘谈。这次 谈话,意义非同寻常。从前后的时间差来看,七人小组的调查结果可能是三人秘密会议的主要内容,也可能成为胡耀邦非下台不可的致命原因。据笔者推测,七人小 组的调查结果无非有两种,一种是胡耀邦威信很高,另一种是下边对胡反响较大,无论哪种结果,对于已经立意要让胡下台的邓小平来说,根本没有区别。

   1986年12月,胡耀邦去上海,听说李先念也在那里,就要去探望李。没想到李自己紧张兮兮地先来拜访,问胡耀邦:“你找我有什么事?你打电话给我,我 很紧张。”胡当时很奇怪,他紧张什么?胡说:“我没什么事,今天中饭后,我就回北京了,就是看看你。”李遂吁了一口气说:“呵!”好像放心了。然后李又 说:“我同小平同志谈过,如果党内再搞斗争,我就不干了。”胡耀邦后来明白了,“当时我不知道要解决我的问题,先念已知道。”

   1986年年底爆发的学运,对邓小平来说,真是天赐良机。12月30日,邓小平在家中召集胡耀邦、赵紫阳、万里、胡启立、李鹏、何东昌等谈话。他态度严厉 地说:“凡是闹得起来的地方,都是因为那里的领导旗帜不鲜明、态度不坚决。这也不是一个两个地方的问题,也不是一年两年的问题,是几年来反对资产阶级自由 化思潮旗帜不鲜明、态度不坚决的结果。”“应该说,从中央到地方,在思想理论战线上是软弱的,丧失了阵地,对于资产阶级自由化是个放任的态度,好人得不到 支持,坏人猖狂得很。”“这些人之所以这么猖狂,传说是因为党中央里面有个保护层。”这就是不点名地批评了胡耀邦。

  经过反复思考,胡 于1987年1月2日,给邓小平写了一封信《向小平同志交心》,提出辞去总书记职务。4日,邓小平在自己家中召集中央政治局常委会议,决定罢黜胡耀邦。胡 耀邦未被邀请参加。6日,邓小平同胡耀邦谈了话。邓小平建议举行一次“解决胡耀邦同志问题的党内生活会议”,对胡的错误进行批评,也要他在这个会议上做出 自我批评。

  胡耀邦事后承认,他有几个想不到。想不到“生活会”用突然袭击的办法要人人表态;想不到邓力群发言长达5个小时要把他批倒 批臭;想不到几十年的挚友,号称桃园三结义的王鹤寿,把他们两人私下的谈话也揭发出来。更想不到的是,他的辞职报告送到中央后,有人趁机落井下石,对他进 行诽谤,诬他想当军委主席,逼小平同志让位,有野心等等。

  

来源: RFA

Ubuntu13.10 64bit 无法安装ia32-libs 的 解决办法

安装新立德软件包管理器:打开终端,输入以下命令:sudo apt-get install synaptic
打开新立德软件包管理器,选择“设置>软件库”
选择“其他软件 > 添加”
在APT行中输入 "deb http://archive.ubuntu.com/ubuntu/ raring main restricted universe multiverse"
选择确定退出新立德软件包管理器
在终端输入“sudo apt-get update”
在终端输入“sudo apt-get install ia32-libs”

两个WPA在线破解网站

有时需要破解Wi-fi密码,留着记录一下。
http://wpa.darkircop.org/
https://www.wpacracker.com/

Friday, 25 April 2014

Processing的资料

Tutorial

Books

Groups

Tools

使用外部编辑器:

  • Windows/Linux: File->Preferences
  • Mac: Processing->Preferences
选中 Use External Editor,将禁用PDE,Run时会重新加载文件内容。

Silverlight的资料

ActionScript/Flash/flex资料

Tools

Slide & Share

Books

系统剪贴板

Player

Upload File

Frameworks

Project

Notes

让Flash位于浮动层之下

1. 将 Flash 设置为透明:
<param name="wmode" value="transparent" />
2. 另有“更专业”的参数值:
<param name="wmode" value="opaque" />
wmode 属性/参数

值 Window | Opaque | Transparent

说明:

(可选)允许使用 Internet Explorer 4.0 中的透明 Flash 内容、绝对定位和分层显示功能。此标记/属性仅在带有 Flash Player ActiveX 控件的 Windows 中有效。

"Window"在 Web 页上用影片自己的矩形窗口来播放应用程序。"Window"表明此 Flash 应用程序与 HTML 层没有任何交互,并且始终位于最顶层。
"Opaque" 使应用程序隐藏页面上位于它后面的所有内容。
"Transparent"使 HTML 页的背景可以透过应用程序的所有透明部分显示出来,并且可能会降低动画性能。
"Opaque windowless"和"Transparent windowless"都可与 HTML 层交互,从而允许 SWF 文件上方的层遮蔽应用程序。

这两种选项之间的差异在于"Transparent"允许透明,因此,如果 SWF 文件的某一部分是透明的,则 SWF 文件下方的 HTML 层可以透过该部分显示出来,而"opaque"则不会显示。
如果忽略此属性,默认值为 Window。仅适用于 object.
-----------------------
flex

Tutorial

Project

Tools

Books

  • 《Flex第一步:基于ActionScript 3.0的Flex 2应用开发》
  • 《Programming Flex 3中文版》
  • 《Flex程序设计》
  • 《Flex 4 Cookbook》
  • 《Adobe Flex高级编程》
  • 《Flex 3权威指南》

搭建开发环境

  1. 下载 Flex SDK, 下载 Free Adobe SDK 而不是 Open Source 的,后者编译 mxml 文件时可能不正常。
  2. 解压到某目录(例如 E:\Adobe\flex_sdk)
  3. 将上面的路径添加到系统环境变量 Path 中:
    FLEX_HOME = E:\Adobe\flex_sdk
    Path = %FLEX_HOME%\bin
    
  4. 安装 Java 开发/运行时环境(Flex SDK 基于 Java)。
  5. 下载 actionscript.vim, mxml.vimdtd.vim 放置到 .vim/syntax/ 目录。
  6. 将如下代码加到 filetype.vim 中:
    au BufNewFile,BufRead *.mxml set filetype=mxml
    au BufNewFile,BufRead *.as set filetype=actionscript
    
  7. 编译:mxmlc test.asmxmlc test.mxml

 

dartlang.org

https://www.dartlang.org/
https://github.com/dart-lang/dartlang.org

erlang-china

http://erlang-china.org/

groovy的资料

perl的资料

python的资料

Project

Books

Framework

Tools

php的资料

scala的资料

java的资料

djangobook

http://djangobook.py3k.cn/

FreeMarker Template Language的资料

Velocity的资料

Tools

Books

手册文档

会议&分享(Slide Share)

-----------------------------------------

搭建 Velocity 开发环境

  1. http://velocity.apache.org/ 的下载页;
  2. 下载 velocity-x.zip (其中 x 是版本号)
  3. 下载 velocity-tools-y.zip (同理,y 也是其对应的版本号)
  4. 解压 velocity-x.jar 到 WEB-INF/lib 目录;
  5. 解压 velocity-tools-y/lib/*.jar 到 WEB-INF/lib 目录。
  6. WEB-INF/web.xml
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
       <servlet>
         <servlet-name>velocityView</servlet-name>
         <servlet-class>org.apache.velocity.tools.view.servlet.VelocityViewServlet</servlet-class>
         <init-param>
           <param-name>org.apache.velocity.toolbox</param-name>
           <param-value>/WEB-INF/toolbox.xml</param-value>
         </init-param>
       </servlet>
       <servlet-mapping>
         <servlet-name>velocityView</servlet-name>
         <url-pattern>*.vm</url-pattern>
       </servlet-mapping>
    </web-app>
    

参考阅读


haml语言

http://haml.info/

reStructuredText的资料

textile的资料

Markdown的资料

Tools

Project

Thursday, 24 April 2014

在国际邮轮工作是怎样的体验?

我在皇家加勒比海洋绿洲号工作了六个月零三个星期(一个合同),今年五月二十五号回国。

去游轮上班无外乎有三个目的:赚钱,增加阅历,赚钱+增加阅历,好像还有个目的,乘机黑在美国,真心不推荐,在陆地上工作也是工作,在船上也是工作,在薪金待遇都差不多的情况下(可能还不如船上呢,美国经济不景气)为什么不选择后者呢?难道整天提心吊胆的生活舒服吗?
目的有了,然后找中介,中介必须有,皇家加勒比公司不会直接贴广告招聘的,中介然后安排面试,面试官都是皇家加勒比公司的HR,面试通过后,中介就开始帮你办各种证,你自己得去船员学校培训,培训大概要一个月左右,从你面试通过后到拿到各种证大概要四个月吧,等证都有了,中介就联系船方,船方就开始安排你的船期了,我从面试通过到上船用了半年时间。

关于费用:中介费+培训费+各种证+机票(去时公司不包的),将近三万块吧,然后基本上就用不到钱了

关于面试:你自己先要想好面试什么职位,各职位薪水中介都有表单,其中酒吧和餐厅服务员工都是没有薪水的,靠拿小费和提成,它们很有钱赚的,最差也有2K刀,好的有5K刀,对,我说的是服务员。面试时一定要穿西装,戴领带,女生OL装。皇家加勒比的面试官来自世界各地,有很多很重的口音,做好准备啊。面试官们最想了解的是你的英语口语水平与工作经验,比重大概是7:3吧,英语太重要了!面试后,面试官会给你相关的职位,职位好坏,不一定与能力有关,与船上需求大小也是有关系的。

关于船上的工作和生活:一天工作十个小时,NO DAYOFF!(次奥!)不过吃住都很不错的,两个人一个房间,很小,但是空调,冰箱,卫生间,电话,应有尽有,甚至我工作的绿洲号上可以申请单人间的!任何人都可以申请!吃的基本上都是西餐,大鱼大肉的,体力工作很需要高蛋白质!在船上用的也什么都有,品牌什么的都免税,员工还八折,购物天堂啊,有木有?船上也有网吧(但很贵,wifi更贵了!五刀一个小时吧)员工酒吧,台球,游戏室都有的,party怎么会没有呢?船上定期举办party,在员工酒吧举办,很high,节假日更是爆了的,附上一小段Party视频oasis party(其中一个娘炮)。和家里人联系我只用寝室里的卫星电话,我从加勒比这边打过去一元一分钟,不是很贵。

关于你的来自全世界70个国家的同事们:不管是上司还是同事们,他们人都很不错,没什么心机,待人很平等,其实一个小事情就反应出来了,每隔一段时间,员工餐厅都会有船上的头头们,甚至船长摆个大桌子,桌子上有各种色拉食料,你选择食料,头头们帮你拌好,微笑的递给你,你说声thank you,他们说声You‘re welcome,多和谐的一幕啊,你能想象在中国这种情况会发生吗?校长在食堂帮你弄煎饼?还有每个船上都有一些中国员工,不用担心时间长了会忘记中文。

皇家加勒比公司有几十艘巨型邮轮,分布在全世界各大洲,都是按路线循环航行的,比如绿洲号她有两条航线,东线和西线,都是一个星期航程,从母港城市迈阿密出发,这个星期跑东线,下个星期就跑西线,循环往复。每条航线都会停靠三个港口,当然都是美丽的岛国,员工只要有时间都可以下船游玩购物什么的。发张我最爱的港口,巴哈马拿骚。晴空万里,湛蓝的海水,干净的街道,还有别样的当地人文风情,这些真的是我非常珍贵的美丽回忆啊!

总的来说,工作虽然辛苦,但是非常值得的,在年轻的时候有这样的经历与回忆多好啊,所以还在犹豫的同学们,别想那么多,上去吧。

能想到的暂时就这么多,想到什么就再加。


还有一个得提及的,我们属于船员,所以申请的是船员签证,这种签证允许你在美国待29天,也就是说,如果你的登船日是12月1号,你可以提前买机票(因为去时的机票是你自己买,不是公司定的),你买11月20号的机票,就可以在美国玩上十天,我是提前三天买的票,在奥兰多(本来在奥兰多的自由号登船,中间临时换到迈阿密的绿洲号)玩了三天,在上船之前又可以穷游美国几天,何乐而不为呢?

中国第一代程序员列传

2011年7月,仅仅47岁的“中国第一程序员”求伯君彻底退隐江湖。这代表着一个时代的过去,在求伯君风光的年代,程序员身上充满着个人英雄主义 的浪漫情怀。而随着时间的不断推移,单个程序员的能力显得越来越渺小,程序员逐渐沦为软件生产流水线上一颗螺丝钉,这让第一代程序员的神话再难重现。

过去的20年,是中国程序员快意恩仇的江湖时代,程序员通过知识实现梦想和财富。历数曾经的数字英雄,名利双收的并不多见。而程序、经营两手抓的更是凤毛麟角。

这些早一代的程序员创造的业绩激励了很多程序员进入软件开发。

我们试图透过他们曾走过的足迹,看到中国软件的前世今生。

过去的20年,是中国程序员快意恩仇的江湖时代,程序员通过知识实现梦想和财富。历数曾经的数字英雄,名利双收的并不多见。而程序、经营两手抓的更是凤毛麟角。

在2000年之前,IT业最耀眼的明星不是柳传志和马云,而是王志东、求伯君、严援朝和朱崇君。数以十万计的程序员,构成了产业的主体。他们身上的技术情结,至今仍然闪耀着光芒。但在商业世界的水土不服,也在他们身上无不应验。

严援朝

::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::0

起步:四通利方联合创始人

现职:新浪网总工程师

他开发第一个中文操作系统CCDOS,参与创办四通利方,掌控最大中文网站新浪网的技术总架构。

他说,做软件就是在不断地明确目标,就是搞清楚你的GO 是什么,所有的软件都逃不出那三句话——IF、THEN、 ELSE。棒的程序员很快能够知道自己的GO是什么,没长进的程序员老也弄不清楚自己到底要干嘛,所以永远处在 学习过程中,手里永远拿着一本书,永远在学,永远也学不会。这是严援朝很经典的一句话,甚至有程序员把这作为自己的座右铭。

CCDOS之外,严援朝还做过许多有意义的事:比方说,主持开发使长城0520成为0520CH的CH显示卡,让汉字能像西文一样实现25行快 速显示;再比方说,主持设计的人民大会堂电子表决系统,是全世界最大的电子表决系统。然而,不管这些成就有多么了不起,也无论严援朝在上面花了多少心血, 却总也无法和他那个只花了5个月时间写就的 CCDOS相提并论。CCDOS实在是太耀眼了,它对中国人使用PC具有里程碑的意义。人们可以不知道严援朝,但无论如何无法越过CCDOS谈论中国PC 事业的起始。

朱崇君
re0_2
起步:中文字表编辑软件CCED

现职:北京乾为天电子技术研究所有限责任公司

“中关村三君子”和“中国程序员五杰”之一,最著名的代表作就是中文字表编辑软件CCED。

CCED卖出第一个Copy的时候,朱崇君还在清华读研究生,天津大学力学系的用户在宿舍找到了他。当时朱崇君完全没有意识到CCED能卖,当 对方试探性地询问价格的时候,朱崇君反而去问对方带了多少钱。当对方表示带了七八百元的时候,朱崇君提出了一个450元的价格。

而CCED2.0和3.0都是联想公司帮助朱崇君做的销售,他分别拿到了3500元的版本费。朱崇君曾表示:“现实环境下的中国程序员不仅要写 好程序,而且还要学会经营。尽管理论上说,写程序的只管写好程序,搞市场的只管搞好市场,这是社会的分工进步。但在目前的中国,如果程序员最后不想落到为 别人打工的地步,还是要学会自己经营。你整天在琢磨程序,而你在公司中却整天被别人琢磨,最终吃亏的必定是你。

朱崇君在众多的程序员中,还算是比较知道如何运用法律手段保护自己权益比如,在和其他公司合作的时候,只签一个版本的合作。这样,主动权就始终 掌握在自己手中,不适宜合作时,可以通过软件升级,解除原来的合作关系。再比如,朱崇君还在信息中心工作的时候,每年都要单位出据证明——CCED是朱崇 君用自己的计算机在业余时间所做的业余发明。因此,朱崇君就没有周志农在离开原单位时关于《自然码》是不是职务发明的麻烦。

王江民

re0_3

起步:江民科技创始人

现职:辞世

“38岁开始学习计算机,两三年之内成为中国最出色的反病毒专家之一;45岁只身一人独闯中关村办公司,产品很快占据反病毒市场的80%以 上。”这些事实已经让我们无法忽视王江民对中国软件开发带来的影响力,在业内被尊称为老师的王江民,凭借坚持而开拓出了杀毒软件市场,这也成为中国软件产 业所仅有的几个亮点之一。

2008年11月12日,在“中国软件20年,知识英雄再聚首”高峰论坛上,五笔字型的创始人王永民说道:“今天可以把这些人召集齐,明年不一定,说不定哪个去八宝山了。”不料一语成谶。

从他走进中关村开始,他便一直是个富有争议的成功者。他创立的江民公司不是联想、方正这样的大公司,他比起王永民、求伯君、王志东、严援朝这些 知名的程序员,成名也较晚。他也从没刻意地包装过自己,更没表述过什么先进的理念。但是,他的产品曾占据中国杀毒市场80%以上的份额,他的杀毒软件曾创 中国正版软件销售量之最。

当王江民离开一线时,杀毒行业已发生巨变,昔日和江民在杀毒软件市场三足鼎立的金山、瑞星也都难再呼风唤雨。他的离去,对当今杀毒行业影响并不大。

他开创了一个江湖,把一个从无到有的行业变成了用户心中不可或缺的行业。在他之前,杀毒软件是官方的,是他开创了杀毒软件的市场。在他开创市场之后,其中各种血雨腥风不断上演,却不关他的事。

他只是个平凡的人,IT业成为他的最爱和归宿。

王江民是中国历史上第一批知识英雄,第一批将知识和经济结合起来的人。不幸的是,他也成了这批人中走得太早的一位。从当年的杀毒先驱到今天的英年早逝,王江民的光芒短暂而明亮。

鲍岳桥

::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::3

起步:联众游戏创始人

现职:投资“一起学习网”

从UCDOS流行的那一天起,鲍岳桥也成为了中国无数程序员的偶像。然而,和很多程序员一样,他也并没有从UCDOS的成功中得到多少具体的物 质利益。接下来,Windows平台开发的巨大冲击到来了,网络的冲击到来了,有谁能同时抓住两个机会?鲍岳桥无疑做了最好的注释。鲍岳桥认为,是否掌握 某项技术不是关键,技术这个东西完全是触类旁通的,当今计算机的发展如此迅速,一个人不可能掌握所有的新技术,一个有经验的程序员应该能够利用自己原有的 知识和经验,很快地掌握新技术和新知识。

虽然联众发展得很迅速,但他们很快遇到了资金问题。鲍岳桥他们不得不四处为联众找投资方。最后中公网以1000万元购买联众79%的股权,三个创始人每人占7%,公司依然由鲍岳桥管理。

作为初创人之一,鲍岳桥于2006年底毅然辞掉联众CEO一职,随后开始转行做天使投资。

“我很喜欢创业的感觉,可以把梦想变成现实。我喜欢新的东西,喜欢发现新的东西。”鲍岳桥说,“天使投资可以实现更多的想象,做更多事情”。相比纯粹的投资人,鲍岳桥的运作方式与众不同,一般都是自己提出思路,再寻找团队合作。

回忆起联众创业的日子,鲍岳桥还是有些感慨:“我自己很适合创业,对后期的运营不太擅长。”

王志东

::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::4

起步:新浪网创始人

现职:点击科技董事长、CEO

不了解王志东的人觉得他放弃了软件,而后又被网络所抛弃;但了解王志东的都知道他最钟爱的还是软件,而且现在他同时拥有了网络。

程序员时代的王志东走过一段辉煌之路。1990年6月,王志东进入北大方正公司负责产品二次开发与新产品研制工作。1991年6月,独立研制并 推出国内第一套实用Windows 3.0汉化系统“北大中文窗口系统BDWin 3.0”。1992年4月创办“新天地电子信息技术研究所”,随后独立研制并推出全球第一套实用Windows3.1中文平台“中文之星(Chinese Star 1.1)”,次年2月研制成功其海外版与升级版“中文之星1.2”。

随后,王志东创办四通利方信息技术有限公司。其主持开发的RichWin是全球第一个跨平台、多内码、高兼容性并全面支持Internet应用的中文系统平台。RichWin曾经取得了国内微机中文平台预装软件市场80%的占有率。

1998年12月,四通利方宣布成功并购位于硅谷的华渊生活资讯网,成立新浪网,王志东出任总裁,1年后兼任CEO。

此前,王志东一直是中国程序员的领军人物。此后,王志东成为中国互联网行业的先驱。但奔跑的新浪始终背着时代的包袱,复杂的股权和管理层结构, 令王志东不得不耗费大量精力试图改造。“我跟董事会在看法上发生了冲突,也跟董事会某些人出现了利益上的冲突,最后被迫离开。”2001年6月,王志东被 解除新浪网的首席执行官和董事职务。

离开新浪后,王志东曾经表示:“我不管是出于什么样的感情,还是实用的需要,我每天都在上新浪网,我都会使用新浪网,到今天还是坚持在上新浪 网。”但显然,在资本运营下,新浪网已经和王志东没有什么关系了,王志东也基本远离新浪,他的新浪博客只在2007年更新了4篇,目前他基本上都在腾讯微 博出没,新浪微博不见踪影。

吴涛

::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::5

起步:易语言创始人

现职:不详

如果说在中文语言编程上,中国有为数不多的开发者还寄托希望的话,那身处湖北省枝江市鑫源村的吴涛无疑是其中之一。这位数年前就开始做易语言的程序员远离了喧嚣的北京,毅然回家做起了中文可视化编程环境。

对于易语言,吴涛是这么形容的﹕易语言是一款能用汉字进行编程的工具,它身上完全没有打上“微软制造”的烙印,它可以说是完全“中国制造”。 “用户不用再去记忆“if”这样用在目前大多数编程工具中的英文单词,只要用“如果”或者“ruguo”就可以达到“if”同样的效果。”

在最近的版本中,吴涛建立了完全的易程序编译器系统,支持全编译,可以直接将程序编译为CPU指令码运行,从而突破了长期以来的速度瓶颈。同 时,他的商业推广也做得不错,从易语言支持论坛的火爆中就可以看出这点。而吴涛一直执著在语言研究和底层编程工具的态度也是很多程序员需要学习的。尽管吴 涛所做的工作不会撼动整个软件开发的大局,但有人执著于这样的工作也应该得到我们的尊敬。

王永民

::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::6

起步:王码五笔创始人

现职:北京王码电脑总公司总裁

他是一个学者,一个发明家,也是一个公司的管理者。

他发明的五笔字型,开创了电脑汉字输入的新纪元,他是“把中国带入信息时代的人”。

这位至今仍自称是“一介书生、半个农民”的名人,始终关注着信息时代的汉阿字命运,并将毕生精力和智慧投入了汉字产业。

王永民,这个被誉为“当代毕升”的五笔字型的发明者,不久前再次口出狂言,发表了一则“耸人听闻”的言论:“拼音输入——汉字文化的掘墓机。”

他认为,在电脑和手机上用拼音输入汉字,实际上是在“用拼音代替汉字”。长此以往,必然使越来越多的人提笔忘字,甚至不会写字,使报纸、书籍、 电视屏幕上的错别字越来越多。他认为,造成这一严重危机的根源,就是人们把“拼音字母”当成了思维和书写的载体,而汉字的灵魂即笔画和结构,却蜕变成了汉 字的“第二层衣服”,亦即成了“拼音字母”的衣服。这种主客易位、本末倒置的做法,是对汉字的自我疏远,对汉字文化的自动阉割。

在他看来,很少有人能理解他所从事的事业,因此,他情愿自己累一点儿,也不愿把公司交给别人管理。

有人曾经评价王永民,说他是一个卓越的发明家、学者,却不是一个优秀的管理者。但是,王永民对于这样的评价并不买账。

廖恒毅
起步:“中文之星”发明人、拼音加加创始人
现职:佳软公司副总经理

廖恒毅从不掩饰自己对微软的喜爱。从中文之星2.0到开发基于.NET的大型企业管理软件,他与微软的关系密不可分。而之前曾经在杜家滨领导下 的微软中国公司担任开发合作部经理的经历,更在他身上打下了深深的微软烙印。尽管廖恒毅很坦率地谈到,他当时所做的工作不如现在的负责人,但作为一个纯粹 的程序员,他利用微软技术创造的价值却无人可及。从中文之星2.0的热卖,到创造的拼音加加输入法带动了输入法技术的创新都是证明,而现在,他用.NET 构架了佳软公司未来超速发展的动力,他说:“今天我更关注我的技术能否给社会而不仅仅是个人带来的价值。”

如果有人说,微软的技术能做什么样的系统呢?廖恒毅一定会毫不迟疑的拿自己的系统举例,利用创建的软件平台,一个人可以在10多天的时间中打造 出一个完整的企业管理系统,这是类似SAP的平台,只是现在中国的软件环境并不适合其拿出来做公开的标准,公司更愿意使用这套系统来面向最终客户。未来, 廖恒毅所创造的这一软件架构给中国企业软件开发带来冲击也并非不可能。当然,技术的领先并不代表市场的领先,这一点他也很清楚。

廖恒毅并不习惯去公司分配给他的办公室办公,他更喜欢扎在公司程序员的房子里面和大家一起工作。有次,聊程序员能做到什么时间,廖恒毅笑着说:“做了程序员,只要活着,就要一直写程序了。”

袁红岗
起步:金蝶财务软件创始人
现职:金蝶中间件有限公司首席架构师

很多JAVA程序员对袁红岗极其佩服,源于他做了很多人不敢想更不敢做的事情,这就是他打造了国产的EJB服务器,很快,金蝶将在国内推出自主产权EJB服务器的3.0版本。

同时,袁红岗还是在Windows平台上开发企业应用软件的最早的一批程序员,当时写出的适合小型企业使用的财务购销存一体化软件KINGDEE 2.7,令IT行业对金蝶刮目相看,使金蝶一举成名,正是这些人才奠定了中国的管理软件的基础。

袁红岗将自己多年的经验以一种朴实的风格写出来,这些帖子在网上也影响深远。

求伯君
起步:金山WPS创始人
现职:退休

1994年,在珠海独立成立珠海金山电脑公司,自任董事长兼总经理,是中国最早的程序员之一。原为金山公司执行董事及董事会主席。7月6日正式公布了其退休计划。

作为一个程序员,谁也没有求伯君影响大。在中国知道求伯君名字的人,可能比知道盖茨名字的人还多。以至于中央电视台《东方时空》要在盖茨来中国的当天把求伯君请去,面对面地谈民族软件以及WPS97如何抗击Word。在很多人眼里,求伯君是民族软件的一种象征。

求伯君十年不倒,原因在于他一直走着一条和一般程序员不同的路。大多数优秀程序员大都选择了自己创业或者合伙创业的道路,而求伯君则一出道就碾转于四通、 金山、方正这样的大公司,这些经历使求伯君具备了大公司的眼界和胸怀。这是求伯君高于同时代程序员的本质原因。

千奇百怪的网站

写给未来的信 Futureme
http://futureme.org
其实很多邮箱服务都会提供定时发送的功能,但是Futureme把此功能单独放出来,更加的强调赋予了他特殊的意义。你想过未来某天收到一封过去的自己发 来的电子邮件吗?FutureMe网站便是提供这种未来邮件服务,最感人的一封邮件来自一名阿兹海默症患者,他希望保存自己可能会逐渐失去的记忆。而最多 的邮件则来自于将要出发去前线的军人,他们无法确定自己还能否活着回来。
IQ测试
http://iqtest.dk/
以图形测试为主题,题目本身很有意思,满分为140,正常为100,共三十九道题。aRui手机上还保留着一个很经典的类似游戏《BrainChallenge》,感兴趣的朋友有可以试试。
内衣商城 knickerpicker
http://www.knickerpicker.com/
英国的一家在线购买内衣的网站,你可以挑选你喜欢的内衣内裤,然后女模特儿会穿上它们走来走去,并且你可以让她们转身,或者是再走近一点以便你更直观的观察内衣裤的着身效果,对这才是真正的用户体验。
一次性便签 Privnote
https://privnote.com/ 
很简单的一个网站,犹如他的功能,甚至是不需要注册,并且有中文支持。你只需要在首页输入框内写上你要发送的信息,点击下面的“创建新标签”按钮,会得到 一个链接,将此链接通过email或者qq给你的朋友。当他一读信息,你即刻会得到通报,同时此链接只有一次有效,阅读后即刻自动销毁。
我要和你生小孩 Makemebabies
http://www.makemebabies.com/ 
上传你和他/她的照片,你们就可以生小孩了,当然只是照片。对方可以是自己喜欢的人、同事、上司,甚至是可以选择当红明星大腕,友情提示:结果纯属虚构,如有雷同纯属故意。
藏宝寻宝 KDDI
http://www.kddi.com/smile/takara/
一个日本小站,你可以挑选一个自己喜欢的玩具,用铁锹把它藏在树林或公园里面,如果被别人找到系统将会通知你。在你藏好自己的宝藏之后,如果被5个人发现,可以继续藏下个宝藏了。在寻宝首页可以查找别人的宝藏,如果找到别人的宝贝之后,会有礼物哦。
最小的网站 guimp
http://www.guimp.com/ 
确实是很小,网页有效区域只有1平方厘米,里面包含游戏、相册、博客,甚至是区分了html和flash版本,麻雀虽小五章俱全啊,不过很累,眼睛很累~~
女性网 wowOwow
http://www.wowowow.com/ 
三个女人一台戏,一群女人呢???这个网站可想而知,Joni Evans创建了一家面向四十岁以上女性的网站,是一个女人们的谈论文化政治、分享趣闻轶事的网站,嗯,应该很热闹,必然很热闹。
预测死亡时间 The Death Clock
http://www.deathclock.com/
http://www.forclear.com/life/deathclock/(非官方中文)
输入出生日期,选择性别、BMI范围(可以通过页面下方输入身高、体重计算出)、生活态度和是否抽烟,点击查看按钮就可以死亡时间,并且还以倒计时读秒的形式展示。结果并不可信,但是提醒珍惜时间,珍视生命,提醒人们生命是如此的短暂。

中国移动“飞聊”据称比同类产品省流量50%

作为一款具备沟通能力的聊天软件——飞聊不仅将在节省流量及耗电量方面优于其他竞品,同时还具有如支持实时变音语聊、最快语音对讲、消息状态实时呈现,群聊与单聊分页管理以及独有的群发功能等优势。
打通飞信好友关系
据了解,飞聊“测试版”将通过捆绑飞信好友关系,实现与飞信消息互转、互发的功能。沟通双方在互为飞信好友的前提下,即使一方未安装飞聊客户端,或 飞聊不在线,消息也可以12520短信形式下发到手机上,确保用户信息的及时到达,同时,用飞聊给离线的飞信好友下发短信也是免费的(使用飞信平台下发短 信)。
省电70%,省流量50%
之前曾有报道称“飞聊”无论在节省流量还是节省耗电量方面都优于其他竞品。据有关人士测算,在流量方面,飞聊将比其他同类软件节省近50%,而在耗电量方面更是达到了70%的节省率。与此同时,还具备准实时语音传送功能且支持多种语音变音功能。
另外,为了满足用户的使用需求,飞聊在产品界面方面也进行了优化,群聊与单聊分页管理,专为国人设计的群发消息、图片和语音等功能。
对此信息,相关人士解释称,飞聊的跨平台发送是指跨操作系统平台,使用飞聊时将按GPRS 流量收费。9月28日飞聊率先推出安卓、塞班两大操作系统版本,10月份还将推广iOS操作系统版本。届时用户可登录飞信官网即可下载

乔布斯

史蒂夫·乔布斯Steve Jobs
苹果公司创始人CEO
独裁指数★★★★★ 成功指数★★★★★ 危险指数★★★★★
作为有史以来最成功的CEO,史蒂夫。乔布斯除了是个天才,也是个魔鬼。他傲慢、孤僻、暴躁、一意孤行、唯我独尊,但无论人们对他的性格有再多分析,或许一切都起源于一个原点——他是一个被领养的私生子,被亲生父母抛弃的创伤,让他不得不始终面对一个终极问题:我是谁?
这个问题,一直追随着他,改变着他,塑造着他。年轻时的乔布斯曾留着披肩长发和络腮胡须,狂放不羁。他生命中的第一个女孩,是在中学时结识的克丽 丝。安。布鲁南(Chris An Brunan)。他欣赏她最主要的原因就在于她的叛逆和坚强——她是全校第一个也是唯一一个敢于翻墙逃学的女孩,这让乔布斯着迷。他们一起散步、喝酒、吸 食大麻。乔布斯后来甚至说,有一天,他们甚至特意到一块麦田吸迷幻药,突然间,他感觉整块麦田都在演奏巴赫的小步舞曲,而自己就好像在指挥一支交响乐队。
但乔布斯并没有永远在叛逆中迷失自我的方向。1974年8月,19岁的乔布斯光着脚、穿着破烂衣服在印度南部游历。在南亚次大陆最炎热的时节,他的心灵被佛教彻底征服了。印度之行让乔布斯开始思考很多问题,关于“我是谁”,关于他的“自我”,关于如何遵从自己的内心。
回来之后,他几乎变成了另一个人,整天穿着黄色外袍,剃光头发,沉默寡言,对人冷漠。在他早期开发Macintosh电脑时,每当遇到问题,他总要带着大家去静修,一群人躲进一个房间,和外界断绝来往,在万籁寂静中,默默沉思,听从遥远神秘的声音。
乔布斯相信,学佛修禅,可以使人心灵平静,领悟事情的本质。1982年,他让著名摄影师安娜。沃克尔为其拍摄了一张禅修的照片,他亲自为这张照片写 了题词:“这是一个经典的时刻。我独自一人,所需要的不过是一杯茶、一盏台灯和一台音响。你知道,这就是我的全部。”乔布斯开始深信来自内心的力量,相信 通过内心的修炼、直觉和顿悟来获得真谛,并以一种不同寻常的方式行事人间。
事实上,禅道的“不立文字,直指人心”,不仅仅成了乔布斯的个人信条,也变成了苹果所有产品设计的精髓——世间的产品并不缺乏设计,而是缺乏领悟,就像生活中并不缺少美,而是缺少发现。
但如果你认为皈依禅道的乔布斯从此会摆出一副慈眉善目,那就大错特错了。正相反,在乔布斯1997年重回苹果任CEO后,在短短数周之内就终止了苹 果一直在做的几乎所有慈善项目,而他给出的理由仅仅是“削减支出以获得利润”。那些项目再也没有恢复,苹果也因此被称为“美国最不慈善的公司之一”。但乔 布斯一点也不在乎,他只在乎如何让苹果起死回生。
禅道的顿悟让乔布斯始终遵循自己的内心行事,不避旁人侧目,这也令他拥有了一种强悍的精神力量,能把任何惊世骇俗之举统一到自己内心的安宁之中。或许,这也正是他成为一个伟大商业独裁者的根源。
地狱来的老板
对很多人来说,做乔布斯的员工是件非常痛苦的事情。“地狱来的老板”是苹果员工送给乔布斯的外号——他对团队成员的要求极高,并且无法忍受不够聪明 的员工。据说苹果公司的员工都非常害怕和乔布斯乘坐同一部电梯——他会向你发出尖锐的问题,而如果你的回答不合他的心意,可能没下电梯就被开除了。
或许这样的传闻有些妖魔化的嫌疑,但乔布斯确实喜欢一种智力上的角斗——有时候就是与人大吵一顿——但这往往也是直达问题核心最有效的办法。只不过对大多数人来说,这不亚于一场烈火中的考验——乔布斯的态度往往并不友好,甚至可以说,那是相当的粗鲁。
他总是强迫别人听从自己的意见,如果别人足够坚定,就会用强大的论据来捍卫自己的想法——或许,也正是通过这方式,乔布斯在检验人们是否真正了解自 己的想法,这是个检验真正人才的时刻。正如曾在苹果公司任职程序员的霍迪所说:“如果你是一个唯唯诺诺的人,你注定要死在乔布斯手里,因为他对他所知的事 情非常自信,所以他需要别人能挑战他。”
而他挑选人才的方式也“酷得令人发指”。1982年,他在招聘Macintosh设计师时一般只问两个问题:1.你吸过毒品吗?2.你是多大失去童贞的?其实乔布斯并不在乎这些问题的答案,他更在乎对方是如何思考这些问题的,以及他们在思考这些问题时的态度。
但如果你在回答他的问题时想耍什么花样,那也几乎是不可能的。有一次,霍迪和乔布斯争论一个英特尔正在开发的最新芯片技术。在一场没有结论的争辩之 后,乔布斯给当时英特尔的董事长安迪。 格鲁夫打了个电话,询问霍迪所提到的新技术,然后他又再次堵住霍迪继续理论。这一点尤其让乔布斯的下属们敬畏,想想吧,你能唬住一个随时可以拿起电话和安 迪。格鲁夫通话的人吗?
不过,尽管乔布斯和比尔。盖茨都是让手下人害怕得要死的暴君,盖茨最喜欢挂在嘴边的一句话是“这是我听过的最傻的事儿”,而乔布斯在一场咆哮后却会对那个可怜虫说,“你终于证明了这家公司还有智商超过3位数的生物”——这种话有时候尤其能激发起员工的斗志。
 乔布斯标准
当然,苹果公司的员工不愿与乔布斯同乘一部电梯的另一个理由则更加确凿:乔布斯认为自己常年吃素身上不会有异味,所以他极少洗澡——他从不会因为这 件事而感到尴尬,他理所当然地认为,自己所深信的他的员工们也要相信。而且无论是员工还是消费者,如果你的感受和体验不符合他所深信的东西,那一定不是乔 布斯的错,而是你自己的感觉出了问题。
事实上,乔布斯坚信“用户不知道自己要什么,而我知道”。他甚至不愿意在用户调查上多花费钱财,而相信自己就是最优秀的用户体验专家。他曾对美国 《商业周刊》说:“你很难通过用户调查来确定自己的设计,人们并不知道自己想要什么,直到你把成品放到他们面前。”这听上去正如十九世纪末亨利。福特所 言,如果你问人们要什么,他们绝不会说“汽车”,而会说“我要一匹跑得更快的马”。
身处前沿的科技行业,乔布斯已经把电脑先锋艾伦。凯(Alan Kay)的那句名言发挥到了极致——“预测未来唯一的办法就是发明未来”。苹果总是毫无悬念地剥夺用户的选择自由,只因为乔布斯认为,他已经给了人们最方 便的产品和最好的使用体验,用户实在没有必要再为了权衡各种技术而操心,只不过,这可能价格不菲……
你想在iPod上播放任何格式的音乐?算了吧,何必操心音乐格式?iTunes商店里多的是,反正你的信用卡已经挂在上面了。你想有一部可换电池的iPhone?可那会破坏它背后完美的曲线,反正等到电池寿终正寝的时候,下一代iPhone也早就出来了,欢迎升级哦……
而对于行业内的制造商们聚在一起讨论如何制订各种标准这样的事情,乔布斯更是没有丝毫兴趣——他更醉心于躲在自己的小角落里面,搞出各种各样的“小 玩意儿”——乔布斯深知自己,也知世人。惊奇才是人类的瑰宝,消费者不购买平台,不购买标准,也不购买战略,只购买自己钟意的产品,也正是因为这一点,他 的苹果只为自己立法,只按自己的标准去制造。
但这种“乔布斯标准”有时候看上去非常粗暴。在iPhone问世之前,苹果公司的很多员工都为这款划时代手机的包装设计感到兴奋。但是,在某一个周 一的清晨,乔布斯走进办公室直截了当地说了句让所有人感到沮丧的话:“我就是不喜欢这个东西,我无法说服我自己爱上这个玩意儿。”当时,距离iPhone 上市的日期已经非常临近,但乔布斯还是坚持必须重新设计iPhone的包装——对很多苹果公司的员工而言,这个过程不比去地狱转一遭好多少。但正是在这样 的高压下,简洁的新包装大获成功。事后有分析师总结说:“好产品不能靠民主,得靠有能力的暴君。”
众王之王
2010年,乔布斯曾因在iPhone4天线问题上的傲慢,使得苹果市值一度蒸发了182亿美元。苹果不得不因此召开发布会,但乔布斯却把这场“道歉会”当成了“批判会”,对几家竞争对手挨个数落。
但经历了“天线门”之后的iPhone 4依然步步为营,正如苹果COO库克所说:“iPhone4造多少,就卖多少。”但它竞争对手的产品则因为乔布斯的“揭短”而面临市场压力。
乔布斯从来就不吝于对竞争对手的攻击。当1997年回归苹果后不久,他在一次接受《纽约时报》的采访时称:“我倒真希望盖茨是最出色的人,真的!但我认为他和微软都有点狭隘,如果他能够少些尖酸刻薄,或者年轻的时候能够找个地方修行,那么盖茨会变成一个心胸开阔的人。”
不过,在随后和微软的谈判中,乔布斯又半开玩笑地对盖茨说:“比尔,我们共同控制了100%的电脑桌面操作系统。”事实上,在历经了10年的衰退 后,苹果当时的全球市场份额已经从9.4%下降到2.3%——骄傲的盖茨对此报以沉默,或许他心里在想:你还不到我的一个零头,我基本上是独自控制了整个 产业。但在谈判之后,盖茨私下里告诉朋友,自己一直惧怕乔布斯的光芒,“这家伙太可怕了。”
就连甲骨文公司的CEO拉里。埃里森这种玩世不恭的花花公子都不得不承认,自己一直嫉妒乔布斯——即使后者的财富远远不及自己,他还是无法在影响力上超越乔布斯。
的确,在个人财富上,盖茨盖过了乔布斯很多,但在财富所不能控制的其他领域,乔布斯是盖茨永远都无法战胜的——就像无论《指环王》里的魔王索隆多么 强大,他都无法在阿拉贡面前讨得便宜,而且,阿拉贡才是人们心中永远的众王之王——它不仅仅是苹果的创始人,还是全球最酷最特立独行的企业家、IT产业的 艺术家、商界与文化界的时尚先锋,以及黑客们不朽的偶像。
来自:http://www.jshaitian.net/bbs/read.php?tid=7607

阿里云的网站监控 服务

阿里云现在提供的服务非常之多,但大多数是我们普通站长不仅用不到的,而且还是用不起的,但是阿里云提供的阿里云云监控却是完全免费的,而且这项服 务对大 多数博主或者站长来说都是非常实用的,所以值得推荐一下。阿里云云监控允许创建无数个监控项目,这点比监控宝做得好,好像监控宝只能允许免费用户创建5个 监控项目。阿里云支持的监控类型:URL监控、Ping监控、TCP端口监控、UDP端口监控、DNS监控、SMTP监控、FTP监控、CPU利用率监 控、内存利用率监控、磁盘空间利用率监控等等,完全满足我们的需求了。阿里云监控最多一个月只能发送1000条警报信息,不过一般也完全够用了。
马上使用阿里云云监控:http://jiankong.aliyun.com/

spiceworks

Spiceworks' free PC inventory software lets you scan your network and get detailed info about every network device. Download now, and view your entire network inventory in just minutes.
Download Now  

from http://www.spiceworks.com/download-free-pc-network-inventory-software/

ChinaNet无线WiFi免费帐号使用有线连接的后缀

首先百度一下号码的开户地,然后查看https://wlan.ct10000.com/style/portalv4/index.jsp源代码可得知开户地的缩写,如:江苏的缩写就是js。
<select name="prov" id="prov" class="logintableselect">
 <option value="zx">全国中心</option>
 <option value="bj">北京</option>
 <option value="tj">天津</option>
 <option value="he">河北</option>
 <option value="sx">山西</option>
 <option value="nm">内蒙古</option>
 <option value="ln">辽宁</option>
 <option value="jl">吉林</option>
 <option value="hl">黑龙江</option>
 <option value="hb">湖北</option>
 <option value="hn">湖南</option>
 <option value="ha">河南</option>
 <option value="js">江苏</option>
 <option value="sd">山东</option>
 <option value="ah">安徽</option>
 <option value="sh">上海</option>
 <option value="zj">浙江</option>
 <option value="fj">福建</option>
 <option value="jx">江西</option>
 <option value="gd">广东</option>
 <option value="hi">海南</option>
 <option value="gx">广西</option>
 <option value="sc">四川</option>
 <option value="cq">重庆</option>
 <option value="gz">贵州</option>
 <option value="yn">云南</option>
 <option value="xz">西藏</option>
 <option value="sn">陕西</option>
 <option value="gs">甘肃</option>
 <option value="qh">青海</option>
 <option value="nx">宁夏</option>
 <option value="xj">新疆</option>
 <option value="am">澳门</option>
 <option value="qg">全国</option>
</select>
然后查看https://wlan.ct10000.com/js/certify.js的源代码,通过查找开户地缩写js可得知后缀是:@wlan.js.chntel.com或@cw.js.chntel.com,自己选一个试一下,看哪个能上.

免费将在线视频转成GIF动画

有时候我们在QQ群上总是能见到一些GIF动画图片,其中有很多来自是某个电影搞笑的剪辑片段,如果我们要截取某个搞笑视频片段转换为GIF动画,都必须要通过软件才能实现,而且还麻烦很多。

Qooye酷耶网可以很轻松的将在线视频转换成GIF动画,而且无需下载和安装任何插件,打开浏览器就能使用,制作速度非常快,非常方便快捷!支持 优酷/ 土豆/QQ/酷六/乐视/搜狐等视频网站在线转换成GIF动画,可以设置截取时间,最长支持15秒,可以选择GIF动画品质,可以选择图片区域。
传送门:http://www.qooye.com/

网页版红色警戒(html5)

自从有了html5,生活原来可以这么美好。
1. HTML5并非是一整块;2. 你不需要丢弃现有的任何东西;3. 非常容易开始;4.HTML5已经在工作了;5. HTML5就是未来
于是,我们有了html5版本的红色警戒。
地址:http://www.adityaravishankar.com/projects/games/command-and-conquer/
在Chrome和firefox浏览器中效果最佳,需要等待一段时间.

在linux vps上搭建基于python的静态博客程序-voldemort

git clone https://github.com/semk/voldemort
cd voldemort
pip install -r requirements.txt
python setup.py install

as3:~/voldemort# git clone https://github.com/semk/foobarnbaz.com foobarnbaz.com-site
as3:~/voldemort# cd foobarnbaz.com-site
as3:~/voldemort/foobarnbaz.com-site# ls
about.markdown  games.html  javascripts         posts          stylesheets
archive.html    images      lab.html            robots.txt     tag.html
atom.xml        include     layout              settings.yaml 
fonts           index.html  not-found-404.html  sitemap.xml
as3:~/voldemort/foobarnbaz.com-site# voldemort -h
Usage: voldemort [options]
Options:
  -h, --help            show this help message and exit
  -s, --serve           Start the HTTP Server
  -p PORT, --port=PORT  Port inwhich the HTTPServer should run
as3:~/voldemort/foobarnbaz.com-site# voldemort (这个就是生成/更新静态网站的命令)
as3:~/voldemort/foobarnbaz.com-site# ls
about.markdown  games.html    javascripts         Pushing        stylesheets
Adding          images        lab.html            robots.txt     tag.html
archive.html    include       layout              settings.yaml  Voldemort
atom.xml        index.html    not-found-404.html  _site          voldemort.log
fonts           Initializing  posts               sitemap.xml
(新出现了_site目录)
as3:~/voldemort/foobarnbaz.com-site# cd _site
as3:~/voldemort/foobarnbaz.com-site/_site# ls
2010   Adding    index.html     page2  Pushing        Voldemort
2011   archive   Initializing   page3  robots.txt     voldemort.log
2012   atom.xml  javascripts    page4  settings.yaml
2013   fonts     lab            page5  sitemap.xml
2014   games     not-found-404  page6  stylesheets
about  images    page1          page7  tag
(可见~/voldemort/foobarnbaz.com-site/_site就是静态网站的根目录。)
as3:~/voldemort/foobarnbaz.com-site/_site# nohup Rwebserver 45382 > /dev/null &
访问http://as3.brite.biz:45382即可看到网站效果。

发贴方法:
as3:~/voldemort/foobarnbaz.com-site# cd posts
as3:~/voldemort/foobarnbaz.com-site/posts# nano test1.markdown
按~/voldemort/foobarnbaz.com-site/posts/里面某个markdown文件的格式,新建帖子

test1.markdown,格式如下:
---
title: test1
date: '20-04-2014'
time: '17:36'
tags: ['misc1', 'misc2']
layout: 'post.html'
---

这是测试1.

然后,
as3:~/voldemort/foobarnbaz.com-site/posts# cd ..
as3:~/voldemort/foobarnbaz.com-site# voldemort

演示站点:http://as3.brite.biz:45382/,http://vdm.brite.biz.st
程序作者的示范站点:http://foobarnbaz.com
项目地址:https://github.com/semk/voldemort
https://github.com/semk/foobarnbaz.com

梁文道:突破底線的中國人



有些東西如此污穢如此低賤,例如在充滿便泄物與不知名生物的死屍的地溝污水裏提煉出來的地溝油,也還是被我們中國人吃進肚裏了;那又有沒有一些神聖得不可觸碰的物事被我們當成食物呢?有的,人肉。
廖亦武在《洞洞舞女和川菜廚子》裏頭還訪問了一個無所不吃的美食家遲福,他的故事要比餐館老闆蔣福清所說的地溝油歷史還駭人。
「第一次吃我根本不曉得,朋友帶去,稠稠的一鍋湯上來,白得晃眼睛,取調羮一嘗,鮮得耳門子嗡地一響,我感到渾身都是舌頭,在一伸一縮地舔。……吃上兩次,我就有些上癮。我走南闖北做生意,山珍海味嘗遍,沒想到最鮮最嫩最上檔次的還是人肉。」
這 裏所講的人肉,全是胎兒,來自醫院做墮胎的婦女。人工流產有晚有早,所以胎兒也有大小之分,斤両不同,價錢也就不一樣了:「一両六十元,遇上不足月的,最 多三両重,算一百八十元。……這樣一鍋吃下來,三四個人,輕輕鬆鬆就耗掉四、五百。當然,運氣好也可能撈着個大的,六個月以上才想起流產的儍婆娘,呼天喊 地張開血胯,任醫生從那洞中一鋤接一鋤地挖出包袱來,耳朵、鼻子、嘴都齊了,連手腳指甲都有了,這種貨,少說也一兩斤,弄得不好,撞上臨盆流產的,三、四 斤也打不住。這麼大一塊,一鍋要不完,就分成兩、三鍋。秤斤両,我再怕看,也要去監督,因為秤星子偏一顆米,就是好幾十元。分肉也有講究,遇特別大的,誰 都想要屁股和大腿,但胎兒腦殼最大,有的佔全身的一半,有的佔三分之一。張老闆只好把胎髮刮乾淨,一家切一塊,管他肉多肉少的部位,絕對平均主義,然後再 分開下鍋。」
張老闆就是這家人肉黑店的主持人,店就開在成都郊外,隱藏在一列賣鰱魚的「農家樂」當中,飲食之外,麻將耍樂卡拉 OK一應俱全。想嘗人肉,便得來句「切口」,說自己要試「羊羔肉」,一說人家就明白了。有意思的是,這等見不得光的買賣,居然也被他做到遠近馳名、熱熱鬧 鬧。政府知不知道很難講,但遲福說偶爾也有警察開車去吃就是了。
我們大部分人都會和廖亦武一樣,好奇那些胎兒流至此處的渠道,那應該是個 非法的黑暗世界吧。沒想到遲福答得正大光明,言之成理:「全中國有多少女人?至少五億吧?就算每個女人在一生中只打過一次胎,這筆財富,過去都白白扔了; 現在的計劃生育愈搞愈厲害,白白扔掉的就更是天文數字了。胎盤值錢,每個醫生都搶,可死胎沒人要。張胖子(亦即開人肉店的張老闆)的老婆是衞生院的,知道 這個性生活隨便的年頭,只要收費稍低,早孕打胎的就踢破門檻。城鎮的衞生院和個體診所(還不包括遊醫和黑店)比天上的星星還密,只要訂貨,到時候打個電 話,就派人去收購。愈新鮮,收購價愈高。你真是個豬腦殼,還提這種蠢問題!
---------------------------------
我操。真恶心,吃死胎。中国历史上发生的吃人肉是因为饥荒,现在没饥荒了,仍然吃人肉,really disgusting

在同一套WordPress程序下,建立多个博客

首先要别名指向某个域名,CP、DA面板有所不同,绑定后,解析域名后方可正确指向域名目录。
打开wp-config.php,用下面替换相应的代码
if($_SERVER["HTTP_HOST"]=="www.urdomain1.com" || $_SERVER["HTTP_HOST"]=="www.urdomain2.com"){
define('DB_NAME', '数据库');
define('DB_USER', '用户名');
define('DB_PASSWORD', '密码');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
$table_prefix = '前缀_';
define ('WPLANG', 'zh_CN');
}else if($_SERVER["HTTP_HOST"]=="www.urdomain2.com" || $_SERVER["HTTP_HOST"]=="www.urdomain1.com"){
define('DB_NAME', '数据库');
define('DB_USER', '用户名');
define('DB_PASSWORD', '密码');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
$table_prefix = '前缀_';
define ('WPLANG', 'zh_CN');
}


打开相应的域名就会自动调用相应的数据库配置。
这就实现了,一个Wordpress建立多个博客,相互之间使用不同的主题插件,互不妨碍.

微信IFTTT,用微信同步照片或信息到facebook和twitter

微信IFTTT是什么

微信IFTTT,基于 微信公众平台 和 IFTTT.com ,可以在不翻墙的情况下,同步图片到facebook和twitter。

IFTTT是什么

IFTTT 是“if this then that”的缩写,事实上是让你的网络行为能够引发连锁反应、让你使用更为方便,其宗旨是“Put the internet to work for you”(让互联网为你服务)。ifttt旨在帮助人们利用各网站的开放API,将Facebook、Twitter等各个网站或应用衔接,完成任务,使“每个人都可以成为整个互联网不用编程的程序员”。ifttt通过流程将各种信息串联起来,然后再集中把你要的信息呈现给你。解决了信息的冗杂,收取或关注重要信息的问题。
使用步骤:

1.关注IFTTT公众平台

2.回复 "give me rss"

IFTTT公众平台会自动回复并分配给你一个IFTTT地址 : http://plugs.sinaapp.com/ifttt/rss/***** ,星号部分是你的唯一ID,这个地址是你与FACEBOOK和TWITTER同步消息的关键,如果忘记可以输入“give me rss”重新获取。

3.注册 IFTTT 账号,如果已有IFTTT账号可以跳过

注册地址: https://ifttt.com/join

4.在IFTTT绑定FB账号,如果已绑定可以跳过

绑定地址: https://ifttt.com/facebook 这一步需要越狱。

5.配置FACEBOOK同步

点我去配置页面: https://ifttt.com/recipes/94660


注意: Feed URL里的 #id# 换成第二步里你自己的ID


6.给微信IFTTT公众平台,发一个或多个图片,过5-15分钟就可以在FACEBOOK相册里看到了
常见问题:

为什么我的照片无法同步

将照片同步到微信服务器需要1-2分钟时间,微信服务器同步到IFTTT需要5-10分钟时间,请耐心等待。若长时间没有同步,请查看错误日志:查看错误信息: https://ifttt.com/logs

为什么会出来两张相同的照片

点我- https://ifttt.com/myrecipes/personal, 看看是不是多配置了一条IFTTT规则。

from http://www.zhaoyuhao.com/work/show/90

支持传真邮件附件的免费邮箱

cntv不知道什么时候也出邮箱了,不过他有一个特色功能,而且这个功能在网易邮箱是收费的。
特色功能:传真邮件,注册信箱后,自动获得免费的传真号码,形如:(010)950507 转 ××××××,或者 (010)80115555 转 ××××××,这里××××××为随机分配的六位数字分机号。
其他功能就不介绍了,和其他邮箱一样的。
地址:http://mail.cntv.cn/

Instagram 备份工具-instaport

Instaport可以将Instagram 的文件导出,方便你备份到本地,或者网盘。
工具:http://instaport.me

You-Get是一个基于Python 3的音频/视频下载工具

之所以写它的主要原因是,找不到一个现成的下载工具能够同时支持YouTube和优酷;而且,几乎所有以前的视频下载程序都是基于Python 2的。
项目主页:http://www.soimort.org/you-get
GitHub地址:https://github.com/soimort/you-get

支持的站点(截至目前)

已实现对以下站点的支持,以后会陆续增加。
  • YouTube http://www.youtube.com
  • Vimeo http://vimeo.com
  • Coursera https://www.coursera.org
  • Blip http://blip.tv
  • Dailymotion http://dailymotion.com
  • Facebook http://facebook.com
  • Google+ http://plus.google.com
  • Google Drive http://docs.google.com
  • Tumblr http://www.tumblr.com
  • Vine http://vine.co
  • SoundCloud http://soundcloud.com
  • Mixcloud http://www.mixcloud.com
  • Freesound http://www.freesound.org
  • JPopsuki http://jpopsuki.tv
  • VID48 http://vid48.com
  • NICONICO动画 http://www.nicovideo.jp
  • 优酷 http://www.youku.com
  • 土豆 http://www.tudou.com
  • 音悦台 http://www.yinyuetai.com
  • AcFun http://www.acfun.tv
  • bilibili http://www.bilibili.tv
  • CNTV http://www.cntv.cn
  • 豆瓣 http://douban.com
  • 凤凰视频 http://v.ifeng.com
  • 爱奇艺 http://www.iqiyi.com
  • 激动网 http://www.joy.cn
  • 酷6网 http://www.ku6.com
  • MioMio http://www.miomio.tv
  • 网易视频 http://v.163.com
  • PPTV http://www.pptv.com
  • 腾讯视频 http://v.qq.com
  • 新浪视频 http://video.sina.com.cn
  • 搜狐视频 http://tv.sohu.com
  • 56网 http://www.56.com
  • 虾米 http://www.xiami.com
  • 百度音乐 http://music.baidu.com
  • 百度网盘 http://pan.baidu.com
  • SongTaste http://www.songtaste.com
----------------------

为什么你要好好的用 You-get:

你欢喜于互联网上的富媒体内容,并为个人寻欢而储存
你喜悦观看的视频,然而不得保存;对个人设备无从控制,此乃违背开放互联网之行为
你寻求解脱于闭源软件或 JavaScript 代码,并禁止 Flash 运行
你为黑客精神与自由软件而欣喜

you-get 之功用:

下载流行网站之音视频,例如 YouTube, Youku 以及更多. (查看下方完整支持列表)
于您心仪的媒体播放器中观看在线视频,脱离浏览器与广告
下载您喜欢网页上的图片
下载任何非 HTML 内容,例如二进制文件

you-get 下载

Windows 下载
其他系统下载

使用方法

如你有 URL,可以直接使用如: you-get http://music.163.com/song?id=461301534
you-get http://kopasas.tumblr.com/post/69361932517
Site:       Tumblr.com
Title:      kopasas
Type:       Unknown type (None)
Size:       0.51 MiB (536583 Bytes)

Site:       Tumblr.com
Title:      tumblr_mxhg13jx4n1sftq6do1_1280
Type:       Portable Network Graphics (image/png)
Size:       0.51 MiB (536583 Bytes)

Downloading tumblr_mxhg13jx4n1sftq6do1_1280.png ...
100.0% (  0.5/0.5  MB) ├████████████████████████████████████████┤[1/1]   22 MB/s

暂停与恢复下载

可以使用 Ctrl+C 暂停下载.
临时的. download 文件将保存于输出目录。下次使用 you-get 传入相同参数时,下载将从上次继续开始. 如果下载已经完成 (临时的. download 扩展名消失), you-get 将忽略下载.
用 --force/-f 强行重下载. (注意: 将覆盖同名文件或临时文件!)

设置输出文件名或路径

使用 --output-dir/-o 设定路径, --output-filename/-O 设定输出文件名:
$ you-get -o ~/Videos -O zoo.webm 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
-----------
You-Get is a tiny command-line utility to download media contents (videos, audios, images) from the Web, in case there is no other handy way to do it.
Here's how you use you-get to download a video from this web page:
$ you-get http://www.fsf.org/blogs/rms/20140407-geneva-tedx-talk-free-software-free-society
Site:       fsf.org
Title:      TEDxGE2014_Stallman05_LQ
Type:       WebM video (video/webm)
Size:       27.12 MiB (28435804 Bytes)

Downloading TEDxGE2014_Stallman05_LQ.webm ...
100.0% ( 27.1/27.1 MB) ├████████████████████████████████████████┤[1/1]   12 MB/s
And here's why you might want to use it:
  • You enjoyed something on the Internet, and just want to download them for your own pleasure.
  • You watch your favorite videos online from your computer, but you are prohibited from saving them. You feel that you have no control over your own computer. (And it's not how an open Web is supposed to work.)
  • You want to get rid of any closed-source technology or proprietary JavaScript code, and disallow things like Flash running on your computer.
  • You are an adherent of hacker culture and free software.
What you-get can do for you:
  • Download videos / audios from popular websites such as YouTube, Youku, Niconico, and a bunch more. (See the full list of supported sites)
  • Stream an online video in your media player. No web browser, no more ads.
  • Download images (of interest) by scraping a web page.
  • Download arbitrary non-HTML contents, i.e., binary files.
Interested? Install it now and get started by examples.
Are you a Python programmer? Then check out the source and fork it!

Installation

Prerequisites

The following dependencies are required and must be installed separately, unless you are using a pre-built package on Windows:

Option 1: Install via pip

The official release of you-get is distributed on PyPI, and can be installed easily from a PyPI mirror via the pip package manager. Note that you must use the Python 3 version of pip:
$ pip3 install you-get

Option 2: Install via Antigen

Add the following line to your .zshrc:
antigen bundle soimort/you-get

Option 3: Use a pre-built package (Windows only)

Download the exe (standalone) or 7z (all dependencies included) from: https://github.com/soimort/you-get/releases/latest.

Option 4: Download from GitHub

You may either download the stable (identical with the latest release on PyPI) or the develop (more hotfixes, unstable features) branch of you-get. Unzip it, and put the directory containing the you-get script into your PATH.
Alternatively, run
$ [sudo] python3 setup.py install
Or
$ python3 setup.py install --user
to install you-get to a permanent path.

Option 5: Git clone

This is the recommended way for all developers, even if you don't often code in Python.
$ git clone git://github.com/soimort/you-get.git
Then put the cloned directory into your PATH, or run ./setup.py install to install you-get to a permanent path.

Upgrading

Based on which option you chose to install you-get, you may upgrade it via:
$ pip3 install --upgrade you-get
or download the latest release via:
$ you-get https://github.com/soimort/you-get/archive/master.zip

Getting Started

iDownload a video

(用法示例:you-get --socks-proxy 127.0.0.1:7058 https://youtu.be/NLmvu_wPn28 ,127.0.0.1:7058是本地的一个socks proxy.上面这条命令把视频下载下来后,得到的格式是webm格式的视频,可以用https://convertio.co/在线转换为mp4格式
When you get a video of interest, you might want to use the --info/-i option to see all available quality and formats:
$ you-get -i 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
site:                YouTube
title:               Me at the zoo
streams:             # Available quality and codecs
    [ DEFAULT ] _________________________________
    - itag:          43
      container:     webm
      quality:       medium
      size:          0.5 MiB (564215 bytes)
    # download-with: you-get --itag=43 [URL]

    - itag:          18
      container:     mp4
      quality:       medium
    # download-with: you-get --itag=18 [URL]

    - itag:          5
      container:     flv
      quality:       small
    # download-with: you-get --itag=5 [URL]

    - itag:          36
      container:     3gp
      quality:       small
    # download-with: you-get --itag=36 [URL]

    - itag:          17
      container:     3gp
      quality:       small
    # download-with: you-get --itag=17 [URL]
The format marked with DEFAULT is the one you will get by default. If that looks cool to you, download it:
$ you-get 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
site:                YouTube
title:               Me at the zoo
stream:
    - itag:          43
      container:     webm
      quality:       medium
      size:          0.5 MiB (564215 bytes)
    # download-with: you-get --itag=43 [URL]

Downloading zoo.webm ...
100.0% (  0.5/0.5  MB) ├████████████████████████████████████████┤[1/1]    7 MB/s

Saving Me at the zoo.en.srt ...Done.
(If a YouTube video has any closed captions, they will be downloaded together with the video file, in SubRip subtitle format.)
Or, if you prefer another format (mp4), just use whatever the option you-get shows to you:
$ you-get --itag=18 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
Note:
  • At this point, format selection has not been generally implemented for most of our supported sites; in that case, the default format to download is the one with the highest quality.
  • ffmpeg is a required dependency, for downloading and joining videos streamed in multiple parts (e.g. on some sites like Youku), and for YouTube videos of 1080p or high resolution.
  • If you don't want you-get to join video parts after downloading them, use the --no-merge/-n option.

Download anything else

If you already have the URL of the exact resource you want, you can download it directly with:
$ you-get https://stallman.org/rms.jpg
Site:       stallman.org
Title:      rms
Type:       JPEG Image (image/jpeg)
Size:       0.06 MiB (66482 Bytes)

Downloading rms.jpg ...
100.0% (  0.1/0.1  MB) ├████████████████████████████████████████┤[1/1]  127 kB/s
Otherwise, you-get will scrape the web page and try to figure out if there's anything interesting to you:
$ you-get http://kopasas.tumblr.com/post/69361932517
Site:       Tumblr.com
Title:      kopasas
Type:       Unknown type (None)
Size:       0.51 MiB (536583 Bytes)

Site:       Tumblr.com
Title:      tumblr_mxhg13jx4n1sftq6do1_1280
Type:       Portable Network Graphics (image/png)
Size:       0.51 MiB (536583 Bytes)

Downloading tumblr_mxhg13jx4n1sftq6do1_1280.png ...
100.0% (  0.5/0.5  MB) ├████████████████████████████████████████┤[1/1]   22 MB/s
Note:
  • This feature is an experimental one and far from perfect. It works best on scraping large-sized images from popular websites like Tumblr and Blogger, but there is really no universal pattern that can apply to any site on the Internet.

Search on Google Videos and download

You can pass literally anything to you-get. If it isn't a valid URL, you-get will do a Google search and download the most relevant video for you. (It might not be exactly the thing you wish to see, but still very likely.)
$ you-get "Richard Stallman eats"

Pause and resume a download

You may use Ctrl+C to interrupt a download.
A temporary .download file is kept in the output directory. Next time you run you-get with the same arguments, the download progress will resume from the last session. In case the file is completely downloaded (the temporary .downloadextension is gone), you-get will just skip the download.
To enforce re-downloading, use the --force/-f option. (Warning: doing so will overwrite any existing file or temporary file with the same name!)

Set the path and name of downloaded file

Use the --output-dir/-o option to set the path, and --output-filename/-O to set the name of the downloaded file:
$ you-get -o ~/Videos -O zoo.webm 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
Tips:
  • These options are helpful if you encounter problems with the default video titles, which may contain special characters that do not play well with your current shell / operating system / filesystem.
  • These options are also helpful if you write a script to batch download files and put them into designated folders with designated names.

Proxy settings

You may specify an HTTP proxy for you-get to use, via the --http-proxy/-x option:
$ you-get -x 127.0.0.1:8087 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
However, the system proxy setting (i.e. the environment variable http_proxy) is applied by default. To disable any proxy, use the --no-proxy option.
Tips:
  • If you need to use proxies a lot (in case your network is blocking certain sites), you might want to use you-get withproxychains and set alias you-get="proxychains -q you-get" (in Bash).
  • For some websites (e.g. Youku), if you need access to some videos that are only available in mainland China, there is an option of using a specific proxy to extract video information from the site: --extractor-proxy/-y.

Watch a video

Use the --player/-p option to feed the video into your media player of choice, e.g. mplayer or vlc, instead of downloading it:
$ you-get -p vlc 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
Or, if you prefer to watch the video in a browser, just without ads or comment section:
$ you-get -p chromium 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
Tips:
  • It is possible to use the -p option to start another download manager, e.g., you-get -p uget-gtk 'https://www.youtube.com/watch?v=jNQXAC9IVRw', though they may not play together very well.

Load cookies

Not all videos are publicly available to anyone. If you need to log in your account to access something (e.g., a private video), it would be unavoidable to feed the browser cookies to you-get via the --cookies/-c option.
Note:
  • As of now, we are supporting two formats of browser cookies: Mozilla cookies.sqlite and Netscape cookies.txt.

Reuse extracted data

Use --url/-u to get a list of downloadable resource URLs extracted from the page. Use --json to get an abstract of extracted data in the JSON format.
Warning:
  • For the time being, this feature has NOT been stabilized and the JSON schema may have breaking changes in the future.

Supported Sites

SiteURLVideos?Images?Audios?
YouTubehttps://www.youtube.com/
Twitterhttps://twitter.com/
VKhttp://vk.com/
Vinehttps://vine.co/
Vimeohttps://vimeo.com/
Vidtohttp://vidto.me/
Videomegahttp://videomega.tv/
Veohhttp://www.veoh.com/
Tumblrhttps://www.tumblr.com/
TEDhttp://www.ted.com/
SoundCloudhttps://soundcloud.com/
Pinteresthttps://www.pinterest.com/
MusicPlayOnhttp://en.musicplayon.com/
MTV81http://www.mtv81.com/
Mixcloudhttps://www.mixcloud.com/
Metacafehttp://www.metacafe.com/
Magistohttp://www.magisto.com/
Khan Academyhttps://www.khanacademy.org/
JPopsuki TVhttp://www.jpopsuki.tv/
Internet Archivehttps://archive.org/
Instagramhttps://instagram.com/
Imgurhttp://imgur.com/
Heavy Music Archivehttp://www.heavy-music.ru/
Google+https://plus.google.com/
Freesoundhttp://www.freesound.org/
Flickrhttps://www.flickr.com/
FC2 Videohttp://video.fc2.com/
Facebookhttps://www.facebook.com/
eHowhttp://www.ehow.com/
Dailymotionhttp://www.dailymotion.com/
CBShttp://www.cbs.com/
Bandcamphttp://bandcamp.com/
AliveThaihttp://alive.in.th/
interest.mehttp://ch.interest.me/tvn
755
ナナゴーゴー
http://7gogo.jp/
niconico
ニコニコ動画
http://www.nicovideo.jp/
163
网易视频
网易云音乐
http://v.163.com/
http://music.163.com/
56网http://www.56.com/
AcFunhttp://www.acfun.tv/
Baidu
百度贴吧
http://tieba.baidu.com/
爆米花网http://www.baomihua.com/
bilibili
哔哩哔哩
http://www.bilibili.com/
Dilidilihttp://www.dilidili.com/
豆瓣http://www.douban.com/
斗鱼http://www.douyutv.com/
凤凰视频http://v.ifeng.com/
风行网http://www.fun.tv/
iQIYI
爱奇艺
http://www.iqiyi.com/
激动网http://www.joy.cn/
酷6网http://www.ku6.com/
酷狗音乐http://www.kugou.com/
酷我音乐http://www.kuwo.cn/
乐视网http://www.letv.com/
荔枝FMhttp://www.lizhi.fm/
秒拍http://www.miaopai.com/
MioMio弹幕网http://www.miomio.tv/
痞客邦https://www.pixnet.net/
PPTV聚力http://www.pptv.com/
齐鲁网http://v.iqilu.com/
QQ
腾讯视频
http://v.qq.com/
阡陌视频http://qianmo.com/
THVideohttp://thvideo.tv/
Sina
新浪视频
微博秒拍视频
http://video.sina.com.cn/
http://video.weibo.com/
Sohu
搜狐视频
http://tv.sohu.com/
天天动听http://www.dongting.com/
Tudou
土豆
http://www.tudou.com/
虾米http://www.xiami.com/
阳光卫视http://www.isuntv.com/
音悦Taihttp://www.yinyuetai.com/
Youku
优酷
http://www.youku.com/
战旗TVhttp://www.zhanqi.tv/lives
央视网http://www.cntv.cn/
For all other sites not on the list, the universal extractor will take care of finding and downloading interesting resources from the page.

Known bugs

If something is broken and you-get can't get you things you want, don't panic. (Yes, this happens all the time!)
Check if it's already a known problem on https://github.com/soimort/you-get/wiki/Known-Bugs, and search on the list of open issues. If it has not been reported yet, open a new issue, with detailed command-line output attached.

Getting Involved

You can reach us on the Gitter channel #soimort/you-get (here's how you set up your IRC client for Gitter). If you have a quick question regarding you-get, ask it there.
All kinds of pull requests are welcome. However, there are a few guidelines to follow:
  • The develop branch is where your pull request should go.
  • Remember to rebase.
  • Document your PR clearly, and if applicable, provide some sample links for reviewers to test with.
  • Write well-formatted, easy-to-understand commit messages. If you don't know how, look at existing ones.
  • We will not ask you to sign a CLA, but you must assure that your code can be legally redistributed (under the terms of the MIT license).
from https://github.com/soimort/you-get
 (示例:
you-get http://www.fsf.org/blogs/rms/20140407-geneva-tedx-talk-free-software-free-society )
----------------------

安装步骤

安装依赖

You-Get 安装依赖:
  1. Python3(Python2 不支持)
  2. FFmpeg(用于合并视频与音频,一些1080P以上的视频与音频是分开的)
为了避免安装出错,请确保你是ROOT管理员用户,或拥有ROOT权限,如果你不是ROOT用户,请使用 sudo su 来获取ROOT权限(执行后会让你输入一遍当前用户的密码)。

首先为了确保依赖安装正常、完整,我们需要更换系统 软件包源为最新的稳定源 jessie (本步骤必做)
默认下面的代码是 美国的镜像源,可以更换下面代码 us.sources.list 中的 us.
  1. mv /etc/apt/sources.list /etc/apt/sources.list.bak && wget -N --no-check-certificate -O "/etc/apt/sources.list" "https://softs.pw/Bash/sources/us.sources.list"
然后我们更新软件包列表,并开始安装依赖。
  1. apt-get update
  2. apt-get install python3 python3-setuptools ffmpeg unzip -y
安装后,使用下面的命令查看 python3 和 ffmpeg 是否安装正常。
  1. python3 -V
  2. ffmpeg -version
  3. # 输出版本号属于正常,如果提示命令不存在 -bash: xxx: command not found ,即代表安装失败
确定依赖安装正常后(如果出错请不要继续),我们就可以安装 You-Get 了。

安装 You-Get

  1. wget -N --no-check-certificate https://github.com/soimort/you-get/archive/master.zip
  2. # 下载 You-Get文件
  3. unzip master.zip
  4. # 解压压缩包
  5. cd you-get-master
  6. # 进入解压后的文件夹
  7. python3 setup.py install
  8. # 使用 python3 安装 You-Get,注意安装的时候,正常情况下是没有反应的。
安装后如果没有报错,那么查看一下 You-Get 的版本,确保安装正常。
  1. you-get -V
  2. # 提示类似于:you-get: version 0.x.xxxx, a tiny downloader that scrapes the web.
如果 You-Get 安装正常,那么就可以把安装用的文件删除了。
注意:如果你想要卸载 You-Get ,那么你还需要这些文件用于卸载,那么你就不能执行下面的删除安装文件步骤,如果不在意那么可以删除。
  1. cd ..
  2. rm -rf master.zip && rm -rf you-get-master

使用方法

我们以这个 Youtube视频为例:
  1. https://www.youtube.com/watch?v=TJlwPUo7-T8
使用须知:You-Get 的参数命令格式必须是 you-get [参数] [网址URL] 网址URL 必须放在最后面,各参数 必须放在 网址URL的前面,否则参数会被 You-Get 忽略!

下载视频

下载视频前,我们可以加上 -i 参数,可以显示出视频的所有的格式,示例如下:
  1. you-get -i https://www.youtube.com/watch?v=TJlwPUo7-T8
然后我们可以看到一大串的输出,其中标明了视频名称、下载ID、视频/音频/图像格式、视频分辨率、文件大小等信息。
其中我们可以看到下列示例中有两部分,上面是视频,最下面没有写视频分辨率是音频(默认不用选)。在一些视频网站中通常1080P及以上分辨率的视频为了方便,会把视频和音频分离开,所以我们才需要 ffmpeg来最后合并视频与音频。
在格式列表中 [ DASH ] 指的是质量最高的视频(音频/图像),而 [ DEFAULT ] 则是默认下载的视频(音频/图像),如果不指定要下载的格式ID,那么会下载 [ DEFAULT ] 视频。
注意:经过测试,目前支持HTML5的浏览器,只能播放 webm和mp4格式的视频,但是 ffmpeg只能合并 mp4格式的视频,
所以建议下载 mp4格式的视频

下载任何文件

You-Get 除了可以下载视频以外,音频、图像都是可以下载的,如下载网页中的图片链接:
  1. you-get https://stallman.org/rms.jpg
  2. # 输出如下:
  3. Site: stallman.org
  4. Title: rms
  5. Type: JPEG Image (image/jpeg)
  6. Size: 0.06 MiB (66482 Bytes)
  7. ...
当然如果你不想一个个去指定下载,那么可以直接写网页地址即可,You-Get 会把页面内的所有可下载的 视频/音频/图像 都下载下来,如:
  1. you-get -u http://kopasas.tumblr.com/post/69361932517
  2. # 输出如下:
  3. Site: Tumblr.com
  4. Title: kopasas
  5. Type: Unknown type (None)
  6. Size: 0.51 MiB (536583 Bytes)
  7.  
  8. Site: Tumblr.com
  9. Title: tumblr_mxhg13jx4n1sftq6do1_1280
  10. Type: Portable Network Graphics (image/png)
  11. Size: 0.51 MiB (536583 Bytes)
  12. ...
我们可以看到这个网页里包含一个可下载的 png 图片文件, You-Get 会自动去下载这个图片文件。
但是如果你不想把这个页面里的所有 视频/音频/图像 都下载下来怎么办?
没事,我们可以用 -u 参数来先把指定网页内的可下载资源全都提取显示出来

提取可下载资源

加上 -u 参数后,You-Get 不会直接开始下载网页内的可下载资源,而是会把可以下载的资源信息及URL列出来,我们可以根据需求来下载。
  1. you-get -u http://kopasas.tumblr.com/post/69361932517
  2. # 输出如下:
  3. Site: Tumblr.com
  4. Title: kopasas
  5. Type: Unknown type (None)
  6. Size: 0.51 MiB (536583 Bytes)
  7.  
  8. Site: Tumblr.com
  9. Title: tumblr_mxhg13jx4n1sftq6do1_1280
  10. Type: Portable Network Graphics (image/png)
  11. Size: 0.51 MiB (536583 Bytes)
  12.  
  13. Real URLs:
  14. http://68.media.tumblr.com/7a69c1fb277d8d37bd9e84cd453fd28c/tumblr_mxhg13jx4n1sftq6do1_1280.png

暂停和继续下载

当我们需要暂停下载怎么办?
我们只需要在下载过程中按 Ctrl + C 键,即可暂停You-Get的下载。当然下载暂停时,文件会以 xxxx.xxx.download 命名保存。
即使你是在下载过程中,SSH断开 导致下载中断,也会以 .download 后缀格式保存下载信息。
当你想要继续下载的时候,只需要执行和一开始下载的时候一模一样的命令即可,当文件下载完成后,就不再会以 .download 格式结尾命名了,这时候如果再去下载这个文件会提示文件已存在,从而跳过下载。
当你想要强制覆盖/强制重新下载文件的时候,可以加上 -f 参数,如:
  1. you-get -f https://www.youtube.com/watch?v=TJlwPUo7-T8

设置下载文件的目录和文件名

默认You-Get会把要下载的文件统统下载到当前目录中,但是你想要下载到指定目录中,那么可以用 -o 参数,或者需要自定义下载后的文件名,那么可以用 -O 参数,如:
  1. you-get --itag=137 -o /home/www/xxx.xxx/Videos -O "Videos.mp4" https://www.youtube.com/watch?v=TJlwPUo7-T8
上面代码的意思是把 我下载的视频文件(格式ID 137),保存到 /home/www/xxx.xxx/Videos 目录,并以 Videos.mp4 命名文件名。
视频下载目录路径支持 绝对路径和相对路径,不过如果搞不懂的话,还是建议使用绝对路径,避免下载位置乱套。

支持的网站

注意:虽然 You-Get 支持国内的视频/音频网站,但是国内的视频/音频网站需要用国内服务器
或使用国内代理才能下载,否则会被版权阻拦。同时对于一些VIP视频支持并不好,
毕竟国内视频网站的“VIP视频防盗和广告防屏蔽技术是一流的”。
网站

URL 支持视频 ? 支持图像 ? 支持音频 ?
YouTube https://www.youtube.com/

Twitter https://twitter.com/
VK http://vk.com/
Vine https://vine.co/

Vimeo https://vimeo.com/

Vidto http://vidto.me/

Videomega http://videomega.tv/

Veoh http://www.veoh.com/

Tumblr https://www.tumblr.com/
TED http://www.ted.com/

SoundCloud https://soundcloud.com/

SHOWROOM https://www.showroom-live.com/

Pinterest https://www.pinterest.com/

MusicPlayOn http://en.musicplayon.com/

MTV81 http://www.mtv81.com/

Mixcloud https://www.mixcloud.com/

Metacafe http://www.metacafe.com/

Magisto http://www.magisto.com/

Khan Academy https://www.khanacademy.org/

Internet Archive https://archive.org/

Instagram https://instagram.com/
InfoQ http://www.infoq.com/presentations/

Imgur http://imgur.com/

heavy Music Archive http://www.heavy-music.ru/

Google+ https://plus.google.com/
Freesound http://www.freesound.org/

Flickr https://www.flickr.com/
FC2 Video http://video.fc2.com/

Facebook https://www.facebook.com/

eHow http://www.ehow.com/

Dailymotion http://www.dailymotion.com/

CBS http://www.cbs.com/

Bandcamp http://bandcamp.com/

AliveThai http://alive.in.th/

interest.me http://ch.interest.me/tvn

755
ナナゴーゴー
http://7gogo.jp/
niconico
ニコニコ動画
http://www.nicovideo.jp/

163
网易视频
网易云音乐
http://v.163.com/
http://music.163.com/

56网 http://www.56.com/

AcFun http://www.acfun.tv/

Baidu
百度贴吧
http://tieba.baidu.com/
爆米花网 http://www.baomihua.com/

bilibili
哔哩哔哩
http://www.bilibili.com/

Dilidili http://www.dilidili.com/

豆瓣 http://www.douban.com/
斗鱼 http://www.douyutv.com/

Panda
熊猫
http://www.panda.tv/

凤凰视频 http://v.ifeng.com/

风行网 http://www.fun.tv/

iQIYI
爱奇艺
http://www.iqiyi.com/

激动网 http://www.joy.cn/

酷6网 http://www.ku6.com/

酷狗音乐 http://www.kugou.com/

酷我音乐 http://www.kuwo.cn/

乐视网 http://www.le.com/

荔枝FM http://www.lizhi.fm/

秒拍 http://www.miaopai.com/

MioMio弹幕网 http://www.miomio.tv/

痞客邦 https://www.pixnet.net/

PPTV聚力 http://www.pptv.com/

齐鲁网 http://v.iqilu.com/

QQ
腾讯视频
http://v.qq.com/

企鹅直播 http://live.qq.com/

Sina
新浪视频
微博秒拍视频
http://video.sina.com.cn/
http://video.weibo.com/


Sohu
搜狐视频
http://tv.sohu.com/

Tudou
土豆
http://www.tudou.com/

虾米 http://www.xiami.com/

阳光卫视 http://www.isuntv.com/

音悦Tai http://www.yinyuetai.com/

Youku
优酷
http://www.youku.com/

战旗TV http://www.zhanqi.tv/lives

央视网 http://www.cntv.cn/

花瓣 http://huaban.com/

Naver
네이버
http://tvcast.naver.com/

芒果TV http://www.mgtv.com/

火猫TV http://www.huomao.com/

全民Tv http://www.quanmin.tv/

更新 You-Get

只需要执行下面这个命令,You-Get 就会自动检测升级。
  1. you-get https://github.com/soimort/you-get/archive/master.zip

卸载 You-Get

卸载 You-Get 还需要当初安装 You-Get的文件,如果你已经删除了,那么你按照上面的步骤重新下载解压文件即可。
我们进入文件夹并运行卸载命令。
  1. cd you-get-master
  2. python3 setup.py uninstall
----------------

Music-Get

Build Status golang.org Latest Release License GPL-3.0

网易云音乐 | QQ音乐 下载助手,支持一键下载单曲/专辑/歌单以及歌手热门歌曲,并自动更新音乐标签。

下载安装

你可以前往 Releases 标签下载程序的最新版本,或者克隆项目源码自行编译。

如何使用?

直接将音乐地址作为命令行参数传入即可,如:

  • 下载单曲:
$ music-get https://music.163.com/#/song?id=553310243
$ music-get https://y.qq.com/n/yqq/song/002Zkt5S2z8JZx.html
  • 下载专辑:
$ music-get https://music.163.com/#/album?id=38373053
$ music-get https://y.qq.com/n/yqq/song/002Zkt5S2z8JZx.html
  • 下载歌单:
$ music-get https://music.163.com/#/playlist?id=156934569
$ music-get https://y.qq.com/n/yqq/album/002fRO0N4FftzY.html
  • 下载歌手热门歌曲:
$ music-get https://music.163.com/#/artist?id=13193
$ music-get https://y.qq.com/n/yqq/singer/000Sp0Bz4JXH0o.html

命令选项:

  • -br:优先下载音质,可选128/192/320,默认128。
  • -o:下载保存目录,默认为 /home/用户名/Music-Get (Windows为 C:\\Users\\用户名\\Music-Get )。
  • -n:并发下载任务数,最大值16,默认1,即单任务下载。
  • -h:获取命令帮助。

注: 命令选项必须先于其它命令行参数输入。

运行截图

  • 单任务下载:

  • 多任务同时下载:

  • 自动更新音乐标签(效果预览):

致谢

from  https://github.com/872409/music-get