排名 | 学院名称 | 国家 |
1 | 哈佛大学 | 美国 |
2 | 麻省理工学院 | 美国 |
3 | 斯坦福大学 | 美国 |
4 | 加州大学伯克利分校 | 美国 |
5 | 牛津大学 | 英国 |
6 | 加州理工大学 | 美国 |
7 | 剑桥大学 | 英国 |
8 | 哥伦比亚大学 | 美国 |
9 | 普林斯顿大学 | 美国 |
10 | 华盛顿大学 | 美国 |
10 | 耶鲁大学 | 美国 |
10 | 约翰霍普金斯大学 | 美国 |
13 | 加州大学洛杉矶分校 | 美国 |
14 | 芝加哥大学 | 美国 |
15 | 加州大学旧金山分校 | 美国 |
16 | 加州大学圣地亚哥分校 | 美国 |
17 | 密歇根大学安娜堡分校 | 美国 |
17 | 帝国理工学院 | 英国 |
19 | 宾夕法尼亚大学 | 美国 |
20 | 多伦多大学 | 加拿大 |
21 | 杜克大学 | 美国 |
22 | 伦敦大学学院 | 英国 |
23 | 康奈尔大学 | 美国 |
24 | 西北大学 | 美国 |
25 | 瑞士联邦理工学院苏黎世 | 瑞士 |
26 | 墨尔本大学 | 澳大利亚 |
27 | 不列颠哥伦比亚大学 | 加拿大 |
28 | 加州大学圣巴巴拉分校 | 美国 |
28 | 纽约大学 | 美国 |
30 | 爱丁堡大学 | 英国 |
31 | 威斯康星大学 | 美国 |
32 | 华盛顿大学-圣路易斯 | 美国 |
32 | 德州大学奥斯汀分校 | 美国 |
34 | 北卡罗来纳大学教堂山分校 | 美国 |
34 | 悉尼大学 | 澳大利亚 |
36 | 洛桑联邦理工学院 | 瑞士 |
37 | 哥本哈根大学 | 丹麦 |
38 | 巴黎第六大学 | 法国 |
39 | 波士顿大学 | 美国 |
40 | 慕尼黑大学 | 德国 |
41 | 伦敦大学国王学院 | 英国 |
42 | 明尼苏达大学双城分校 | 美国 |
43 | 新加坡国立大学 | 新加坡 |
44 | 科罗拉多大学 | 美国 |
45 | 澳大利亚昆士兰大学 | 澳大利亚 |
46 | 俄亥俄州立大学 | 美国 |
47 | 加州大学圣克鲁兹分校 | 美国 |
48 | 匹兹堡大学 | 美国 |
49 | 麦克吉尔大学 | 加拿大 |
50 | 马里兰大学帕克分校 | 美国 |
51 | 伊利诺伊大学香槟分校 | 美国 |
52 | 洛克菲勒大学 | 美国 |
52 | 加州大学戴维斯分校 | 美国 |
52 | 卡罗林斯卡学院 | 瑞典 |
55 | 南洋理工大学 | 新加坡 |
55 | 阿姆斯特丹大学 | 荷兰 |
57 | 荷兰乌得勒支大学 | 荷兰 |
57 | 东京大学 | 日本 |
59 | 曼彻斯特大学 | 英国 |
59 | 苏黎世大学 | 瑞士 |
59 | 德国海德堡大学 | 德国 |
62 | 南加州大学 | 美国 |
63 | 天主教鲁汶大学 | 比利时 |
64 | 清华大学 | 中国 |
65 | 北京大学 | 中国 |
66 | 宾州州立大学 | 美国 |
67 | 范德堡大学 | 美国 |
68 | 莫纳什大学 | 澳大利亚 |
69 | 新南威尔士大学 | 澳大利亚 |
69 | 澳大利亚国立大学 | 澳大利亚 |
71 | 埃默里大学 | 美国 |
71 | 乔治亚理工学院 | 美国 |
73 | 布里斯托大学 | 英国 |
73 | 鹿特丹伊拉斯姆斯大学 | 荷兰 |
75 | 加州大学欧文分校 | 美国 |
75 | 伦敦卫生和热带医学院 | 英国 |
77 | 亚利桑那大学 | 美国 |
77 | 卡内基梅隆大学 | 美国 |
79 | 莱顿大学 | 荷兰 |
80 | 慕尼黑工业大学 | 德国 |
81 | 莱斯大学 | 美国 |
81 | 密歇根州立大学 | 美国 |
81 | 巴塞罗那大学 | 西班牙 |
81 | 赫尔辛基大学 | 芬兰 |
85 | 瑞典隆德大学 | 瑞典 |
85 | 阿姆斯特丹自由大学 | 荷兰 |
87 | 柏林洪堡特大学 | 德国 |
88 | 日内瓦大学 | 瑞士 |
88 | 瓦赫宁根大学 | 荷兰 |
88 | 根特大学 | 比利时 |
88 | 西澳大利亚大学 | 澳大利亚 |
92 | 布朗大学 | 美国 |
93 | 巴黎第十一大学 | 法国 |
94 | 格罗宁根大学 | 荷兰 |
95 | 佛罗里达大学 | 美国 |
95 | 奥胡斯大学 | 丹麦 |
97 | 罗格斯大学新布朗斯维克校区 | 美国 |
97 | 南安普敦大学 | 英国 |
99 | 瑞典乌普萨拉大学 | 瑞典 |
100 | 巴黎第七大学 | 法国 |
101 | 内梅亨大学 | 荷兰 |
102 | 格拉斯哥大学 | 英国 |
103 | 普渡大学西拉法叶分校 | 美国 |
104 | 奥斯陆大学 | 挪威 |
104 | 魏茨曼科学研究所 | 以色列 |
104 | 波恩大学 | 德国 |
107 | 弗吉尼亚大学 | 美国 |
107 | 伯明翰大学 | 英国 |
109 | 香港大学 | 中国香港 |
110 | 阿卜杜拉国王科技大学 | 阿拉伯 |
111 | 罗切斯特大学 | 美国 |
112 | 柏林自由大学 | 德国 |
113 | 开普敦大学 | 南非 |
114 | 京都大学 | 日本 |
115 | 西奈山医学院 | 美国 |
116 | 伦敦玛丽王后大学 | 英国 |
116 | 瑞士伯尔尼大学 | 瑞士 |
118 | 德克萨斯农机大学――学院站 | 美国 |
119 | 丹麦科技大学 | 丹麦 |
120 | 伯尔尼大学 | 瑞士 |
121 | 德州大学西南医学中心 | 美国 |
122 | 阿得雷德大学 | 澳大利亚 |
123 | 国立首尔大学 | 韩国 |
124 | 罗马大学 | 意大利 |
124 | 鲁汶天主教大学 | 比利时 |
126 | 贝勒医学院 | 美国 |
126 | 麻州大学阿默斯特分校 | 美国 |
128 | 麦克马斯特大学 | 加拿大 |
129 | 犹他大学 | 美国 |
129 | 印第安纳大学 | 美国 |
129 | 利物普大学 | 英国 |
129 | 斯德哥尔摩大学 | 瑞典 |
129 | 蒙特利尔大学 | 加拿大 |
134 | 亚利桑那州国家大学-坦佩 | 美国 |
134 | 利兹大学 | 英国 |
134 | 汉堡大学 | 德国 |
134 | 艾伯塔大学 | 加拿大 |
138 | 奥克兰大学 | 新西兰 |
138 | 波罗尼亚大学 | 意大利 |
140 | 帕多瓦大学 | 意大利 |
141 | 加州大学河滨分校 | 美国 |
142 | 哥廷根大学 | 德国 |
143 | 雪菲尔大学 | 英国 |
143 | 诺丁汉大学 | 英国 |
145 | 中国科技大学 | 中国 |
146 | 凯斯西储大学 | 美国 |
146 | 格勒诺布尔大学 | 法国 |
148 | 华威大学 | 英国 |
148 | 香港中文大学 | 中国香港 |
148 | 弗莱堡大学 | 德国 |
148 | 复旦大学 | 中国 |
152 | 香港科技大学 | 中国香港 |
153 | 艾奥瓦大学 | 美国 |
153 | 圣保罗大学 | 巴西 |
155 | 蒂宾根大学 | 德国 |
156 | 纽约州立大学石溪分校 | 美国 |
156 | 上海交通大学 | 中国 |
158 | 米兰大学 | 意大利 |
159 | 卡蒂夫大学 | 英国 |
159 | 马赛大学 | 法国 |
159 | 浙江大学 | 中国 |
162 | 阿拉巴马伯明翰大学 | 美国 |
163 | 埃克塞特大学 | 英国 |
164 | 巴塞罗那自治大学 | 西班牙 |
164 | 代尔夫特理工大学 | 荷兰 |
166 | 台湾大学 | 中国台湾 |
167 | 马斯特里赫特大学 | 荷兰 |
167 | 卡尔斯鲁厄理工学院 | 德国 |
167 | 柏林医科大学 | 德国 |
167 | 亚琛工业大学大学 | 德国 |
171 | 俄勒冈健康与科学大学 | 美国 |
171 | 迈阿密大学 | 美国 |
173 | 塔夫斯大学 | 美国 |
173 | 杜伦大学 | 英国 |
173 | 特拉维夫大学 | 以色列 |
176 | 哥德堡大学 | 瑞典 |
176 | 庞培法布拉大学 | 西班牙 |
176 | 法兰克福歌德大学沃尔夫冈 | 德国 |
179 | 洛桑大学 | 瑞士 |
180 | 挪威卑尔根大学 | 挪威 |
181 | 圣母大学 | 美国 |
181 | 耶路撒冷希伯来大学 | 以色列 |
183 | 阿卜杜拉国王科技大学 | 阿拉伯 |
183 | 德累斯顿工科大学 | 德国 |
183 | 卡尔加里大学 | 加拿大 |
186 | 香港城市大学 | 中国香港 |
187 | 纽卡斯尔大学 | 英国 |
187 | 斯特拉斯堡大学 | 法国 |
187 | 维也纳大学 | 奥地利 |
190 | 佛罗里达州立大学 | 美国 |
投稿者: 周 光明
2017 US News世界大学TOP100中英文榜
20
排名 | 学校名称 | 学校英文名 | 国家/地区 |
1 | 哈佛大学 | Harvard University | 美国 |
2 | 麻省理工学院 | Massachusetts Institute of Technology | 美国 |
3 | 斯坦福大学 | Stanford University | 美国 |
4 | 加州大学伯克利分校 | University of California, Berkeley | 美国 |
5 | 加州理工学院 | California Institute of Technology | 美国 |
6 | 牛津大学 | University of Oxford | 英国 |
7 | 剑桥大学 | University of Cambridge | 英国 |
8 | 普林斯顿大学 | Princeton University | 美国 |
9 | 哥伦比亚大学 | Columbia University | 美国 |
10 | 加州大学洛杉矶分校 | University of California, Los Angeles | 美国 |
11 | 约翰霍普金斯大学 | Johns Hopkins University | 美国 |
11 | 华盛顿大学 | University of Washington | 美国 |
13 | 芝加哥大学 | University of Chicago | 美国 |
14 | 耶鲁大学 | Yale University | 美国 |
15 | 加州大学圣地亚哥分校 | University of California, San Diego | 美国 |
16 | 加州大学旧金山分校 | University of California, San Francisco | 美国 |
17 | 密歇根大学安娜堡分校 | University of Michigan | 美国 |
17 | 宾夕法尼亚大学 | University of Pennsylvania | 美国 |
19 | 杜克大学 | Duke University | 美国 |
19 | 帝国理工学院 | Imperial College London | 英国 |
21 | 多伦多大学 | University of Toronto | 加拿大 |
22 | 康奈尔大学 | Cornell University | 美国 |
23 | 伦敦大学学院 | University College London | 英国 |
24 | 加州大学圣塔芭芭拉分校 | University of California, Santa Barbara | 美国 |
25 | 西北大学 | Northwestern University | 美国 |
26 | 圣路易斯华盛顿大学 | Washington University in St. Louis | 美国 |
27 | 纽约大学 | New York University | 美国 |
27 | 加州大学圣克鲁兹分校 | University of California, Santa Cruz | 美国 |
29 | 威斯康辛大学麦迪逊分校 | University of Wisconsin, Madison | 美国 |
30 | 德克萨斯大学奥斯汀分校 | University of Texas, Austin | 美国 |
31 | 英属哥伦比亚大学 | University of British Columbia | 加拿大 |
32 | 波士顿大学 | Boston University | 美国 |
32 | 科罗拉多大学博尔德分校 | University of Colorado, Boulder | 美国 |
32 | 北卡罗来纳大学教堂山分校 | University of North Carolina, Chapel Hill | 美国 |
35 | 苏黎世联邦理工学院 | Swiss Federal Institute of Technology Zurich | 瑞士 |
36 | 爱丁堡大学 | University of Edinburgh | 英国 |
37 | 墨尔本大学 | University of Melbourne | 澳大利亚 |
38 | 明尼苏达大学双城分校 | University of Minnesota, Twin Cities | 美国 |
39 | 洛克菲勒大学 | Rockefeller University | 美国 |
40 | 洛桑联邦理工学院 | Ecole Polytechnique Federal of Lausanne | 瑞士 |
40 | 马里兰大学学帕克分校 | University of Maryland, College Park | 美国 |
42 | 加州大学戴维斯分校 | University of California, Davis | 美国 |
43 | 俄亥俄州立大学 | Ohio State University | 美国 |
44 | 东京大学 | University of Tokyo | 日本 |
45 | 伦敦大学国王学院 | King’s College London | 英国 |
45 | 悉尼大学 | University of Sydney | 澳大利亚 |
47 | 伊利诺伊大学厄本那-香槟分校 | University of Illinois, Urbana-Champaign | 美国 |
47 | 匹兹堡大学 | University of Pittsburgh | 美国 |
49 | 哥本哈根大学 | University of Copenhagen | 丹麦 |
50 | 麦吉尔大学 | McGill University | 加拿大 |
50 | 新加坡国立大学 | National University of Singapore | 新加坡 |
52 | 昆士兰大学 | University of Queensland Australia | 澳大利亚 |
53 | 北京大学 | Peking University | 中国 |
53 | 南加州大学 | University of Southern California | 美国 |
55 | 鲁汶大学(荷语) | KU Leuven | 比利时 |
56 | 宾州州立大学公园分校 | Pennsylvania State University | 美国 |
57 | 清华大学 | Tsinghua University | 中国 |
57 | 慕尼黑大学 | University of Munich | 德国 |
59 | 曼彻斯特大学 | University of Manchester | 英国 |
59 | 乌得勒支大学 | Utrecht University | 荷兰 |
61 | 莱斯大学 | Rice University | 美国 |
62 | 巴黎第六大学 | Pierre and Marie Curie University – Paris 6 | 法国 |
63 | 阿姆斯特丹大学 | University of Amsterdam | 荷兰 |
63 | 范德堡大学 | Vanderbilt University | 美国 |
65 | 加州大学欧文分校 | University of California, Irvine | 美国 |
66 | 佐治亚理工学院 | Georgia Institute of Technology | 美国 |
67 | 卡耐基梅隆大学 | Carnegie Mellon University | 美国 |
68 | 海德堡大学 | Heidelberg University | 德国 |
69 | 卡罗琳医学院 | Karolinska Institute | 瑞典 |
70 | 埃默里大学 | Emory University | 美国 |
70 | 伦敦大学热带医学院 | London School of Hygiene & Tropical Medicine | 英国 |
70 | 苏黎世大学 | University of Zurich | 瑞士 |
73 | 亚利桑那大学 | University of Arizona | 美国 |
74 | 南洋理工大学 | Nanyang Technological University | 新加坡 |
75 | 鹿特丹伊拉斯姆斯大学 | Erasmus University Rotterdam | 荷兰 |
76 | 布里斯托大学 | University of Bristol | 英国 |
77 | 莱顿大学 | Leiden University | 荷兰 |
78 | 密歇根州立大学 | Michigan State University | 美国 |
79 | 莫纳什大学 | Monash University | 澳大利亚 |
80 | 澳洲国立大学 | Australian National University | 澳大利亚 |
80 | 新南威尔士大学 | University of New South Wales | 澳大利亚 |
82 | 罗格斯大学 | Rutgers State University | 美国 |
82 | 佛罗里达大学 | University of Florida | 美国 |
84 | 巴黎第十一大学 | Université Paris-Sud | 法国 |
85 | 布朗大学 | Brown University | 美国 |
86 | 慕尼黑工业大学 | Technical University of Munich | 德国 |
86 | 巴塞罗那大学 | University of Barcelona | 西班牙 |
86 | 格罗宁根大学 | University of Groningen | 荷兰 |
86 | 阿姆斯特丹自由大学 | VU University Amsterdam | 荷兰 |
90 | 普渡大学西拉法叶分校 | Purdue University | 美国 |
90 | 塔夫斯大学 | Tufts University | 美国 |
91 | 日内瓦大学 | University of Geneva | 瑞士 |
91 | 赫尔辛基大学 | University of Helsinki | 芬兰 |
93 | 柏林洪堡大学 | Humboldt-Universität zu Berlin | 德国 |
94 | 隆德大学 | Lund University | 瑞典 |
95 | 罗彻斯特大学 | University of Rochester | 美国 |
95 | 西澳大学 | University of Western Australia | 澳大利亚 |
97 | 内梅亨大学 | Radboud University Nijmegen | 荷兰 |
98 | 根特大学 | Ghent University | 比利时 |
99 | 弗吉尼亚大学 | University of Virginia | 美国 |
99 | 巴黎第七大学 | Université Paris Diderot – Paris 7 | 法国 |
2018-2019中国大学排名800强完整榜单
排名 | 学校名称 | 综合得分 | 星级排名 | 办学层次 |
1 | 北京大学 | 100 | 8星级 | 世界一流大学 |
2 | 清华大学 | 97.68 | 8星级 | 世界一流大学 |
3 | 中国科学院大学 | 86.77 | 8星级 | 世界一流大学(特色) |
4 | 复旦大学 | 82.94 | 8星级 | 世界一流大学 |
5 | 中国人民大学 | 82.48 | 8星级 | 世界一流大学(特色) |
5 | 浙江大学 | 82.48 | 8星级 | 世界一流大学 |
7 | 上海交通大学 | 82.24 | 7星级 | 世界知名高水平大学(前列) |
8 | 南京大学 | 81.83 | 7星级 | 世界知名高水平大学(前列) |
9 | 武汉大学 | 81.51 | 7星级 | 世界知名高水平大学(前列) |
10 | 中山大学 | 78.7 | 7星级 | 世界知名高水平大学(前列) |
11 | 吉林大学 | 77.84 | 7星级 | 世界知名高水平大学 |
12 | 华中科技大学 | 76.99 | 7星级 | 世界知名高水平大学 |
13 | 天津大学 | 76.18 | 7星级 | 世界知名高水平大学 |
14 | 四川大学 | 76.13 | 7星级 | 世界知名高水平大学 |
15 | 中国科学技术大学 | 75.78 | 8星级 | 世界一流大学(特色) |
16 | 南开大学 | 75.58 | 7星级 | 世界知名高水平大学 |
17 | 北京师范大学 | 75.55 | 7星级 | 世界知名高水平大学 |
18 | 西安交通大学 | 75.08 | 7星级 | 世界知名高水平大学(前列) |
19 | 哈尔滨工业大学 | 75.03 | 7星级 | 世界知名高水平大学(前列) |
20 | 中南大学 | 74.96 | 7星级 | 世界知名高水平大学 |
20 | 山东大学 | 74.96 | 7星级 | 世界知名高水平大学 |
22 | 厦门大学 | 74.61 | 7星级 | 世界知名高水平大学 |
23 | 同济大学 | 74.43 | 7星级 | 世界知名高水平大学 |
24 | 东南大学 | 73.99 | 7星级 | 世界知名高水平大学 |
25 | 北京航空航天大学 | 71.87 | 7星级 | 世界知名高水平大学 |
26 | 东北大学 | 70.65 | 6星级 | 世界高水平大学 |
27 | 西北工业大学 | 70.62 | 6星级 | 世界高水平大学 |
28 | 华东师范大学 | 70.59 | 6星级 | 世界高水平大学 |
29 | 北京理工大学 | 70.52 | 6星级 | 世界高水平大学 |
30 | 华南理工大学 | 70.49 | 6星级 | 世界高水平大学 |
31 | 大连理工大学 | 70.43 | 6星级 | 世界高水平大学 |
32 | 湖南大学 | 69.68 | 6星级 | 世界高水平大学 |
33 | 重庆大学 | 69.63 | 6星级 | 世界高水平大学 |
34 | 中国农业大学 | 69.2 | 6星级 | 世界高水平大学(特色) |
35 | 兰州大学 | 68.46 | 6星级 | 世界高水平大学 |
36 | 华中师范大学 | 68.25 | 5星级 | 中国一流大学(特色) |
37 | 电子科技大学 | 68.18 | 6星级 | 世界高水平大学(特色) |
38 | 西南大学 | 67.67 | 5星级 | 中国一流大学(特色) |
39 | 河海大学 | 67.38 | 6星级 | 世界高水平大学(特色) |
40 | 武汉理工大学 | 67.16 | 5星级 | 中国一流大学(特色) |
41 | 西南交通大学 | 67.1 | 5星级 | 中国一流大学(特色) |
42 | 北京科技大学 | 66.8 | 5星级 | 中国一流大学(特色) |
43 | 华中农业大学 | 66.59 | 5星级 | 中国一流大学(特色) |
44 | 北京交通大学 | 66.57 | 5星级 | 中国一流大学(特色) |
45 | 西北大学 | 66.51 | 5星级 | 中国一流大学(特色) |
46 | 郑州大学 | 66.5 | 5星级 | 中国一流大学(特色) |
47 | 南京农业大学 | 66.4 | 5星级 | 中国一流大学(特色) |
48 | 华东理工大学 | 66.37 | 5星级 | 中国一流大学(特色) |
49 | 苏州大学 | 66.36 | 5星级 | 中国一流大学(特色) |
50 | 南京理工大学 | 66.28 | 5星级 | 中国一流大学(特色) |
51 | 西安电子科技大学 | 66.25 | 5星级 | 中国一流大学(特色) |
52 | 东北师范大学 | 66.24 | 5星级 | 中国一流大学(特色) |
53 | 南京师范大学 | 66.07 | 5星级 | 中国一流大学(特色) |
54 | 中国海洋大学 | 66.05 | 6星级 | 世界高水平大学(特色) |
55 | 中国地质大学(武汉) | 66 | 6星级 | 世界高水平大学(特色) |
56 | 西北农林科技大学 | 65.73 | 5星级 | 中国一流大学(特色) |
57 | 南京航空航天大学 | 65.69 | 5星级 | 中国一流大学(特色) |
58 | 北京邮电大学 | 65.6 | 6星级 | 世界高水平大学(特色) |
59 | 湖南师范大学 | 65.59 | 4星级 | 中国高水平大学 |
59 | 上海大学 | 65.59 | 4星级 | 中国高水平大学 |
61 | 暨南大学 | 65.48 | 5星级 | 中国一流大学(特色) |
62 | 合肥工业大学 | 65.31 | 5星级 | 中国一流大学(特色) |
63 | 哈尔滨工程大学 | 65.27 | 5星级 | 中国一流大学(特色) |
64 | 南昌大学 | 65.2 | 4星级 | 中国高水平大学 |
65 | 陕西师范大学 | 65.16 | 5星级 | 中国一流大学(特色) |
66 | 华南师范大学 | 65.14 | 5星级 | 中国一流大学(特色) |
67 | 昆明理工大学 | 65.12 | 5星级 | 中国一流大学(特色) |
68 | 东华大学 | 65.01 | 5星级 | 中国一流大学(特色) |
69 | 中南财经政法大学 | 64.97 | 6星级 | 世界高水平大学(特色) |
70 | 云南大学 | 64.93 | 5星级 | 中国一流大学(特色) |
71 | 北京协和医学院 | 64.89 | 6星级 | 世界高水平大学(特色) |
72 | 上海财经大学 | 64.88 | 6星级 | 世界高水平大学(特色) |
73 | 福州大学 | 64.84 | 4星级 | 中国高水平大学 |
74 | 中国矿业大学 | 64.83 | 6星级 | 世界高水平大学(特色) |
74 | 中国政法大学 | 64.83 | 6星级 | 世界高水平大学(特色) |
76 | 江南大学 | 64.6 | 5星级 | 中国一流大学(特色) |
77 | 北京化工大学 | 64.57 | 5星级 | 中国一流大学(特色) |
78 | 中国石油大学(华东) | 64.56 | 6星级 | 世界高水平大学(特色) |
79 | 华南农业大学 | 64.52 | 5星级 | 中国一流大学(特色) |
80 | 燕山大学 | 64.45 | 5星级 | 中国一流大学(特色) |
81 | 河南大学 | 64.43 | 4星级 | 中国高水平大学 |
82 | 宁波大学 | 64.42 | 4星级 | 中国高水平大学 |
83 | 首都师范大学 | 64.41 | 4星级 | 中国高水平大学 |
83 | 福建师范大学 | 64.41 | 4星级 | 中国高水平大学 |
85 | 浙江工业大学 | 64.39 | 4星级 | 中国高水平大学 |
86 | 深圳大学 | 64.37 | 4星级 | 中国高水平大学 |
87 | 浙江师范大学 | 64.36 | 4星级 | 中国高水平大学 |
88 | 江苏大学 | 64.35 | 4星级 | 中国高水平大学 |
89 | 广西大学 | 64.34 | 4星级 | 中国高水平大学 |
89 | 上海理工大学 | 64.34 | 4星级 | 中国高水平大学 |
91 | 长安大学 | 64.33 | 4星级 | 中国高水平大学 |
92 | 杭州电子科技大学 | 64.27 | 4星级 | 中国高水平大学 |
92 | 北京工业大学 | 64.27 | 4星级 | 中国高水平大学 |
94 | 扬州大学 | 64.25 | 4星级 | 中国高水平大学 |
95 | 对外经济贸易大学 | 64.22 | 5星级 | 中国一流大学(特色) |
96 | 天津师范大学 | 64.21 | 4星级 | 中国高水平大学 |
97 | 山西大学 | 64.2 | 4星级 | 中国高水平大学 |
98 | 齐鲁工业大学 | 64.18 | 4星级 | 中国高水平大学 |
98 | 中央民族大学 | 64.18 | 6星级 | 世界高水平大学(特色) |
100 | 太原理工大学 | 64.15 | 4星级 | 中国高水平大学 |
100 | 河北大学 | 64.15 | 4星级 | 中国高水平大学 |
100 | 西南财经大学 | 64.15 | 5星级 | 中国一流大学(特色) |
103 | 南京工业大学 | 64.06 | 4星级 | 中国高水平大学 |
104 | 安徽大学 | 63.96 | 4星级 | 中国高水平大学 |
105 | 北京林业大学 | 63.95 | 5星级 | 中国一流大学(特色) |
106 | 辽宁大学 | 63.82 | 4星级 | 中国高水平大学 |
107 | 黑龙江大学 | 63.74 | 4星级 | 中国高水平大学 |
108 | 首都医科大学 | 63.72 | 5星级 | 中国一流大学(特色) |
108 | 贵州大学 | 63.72 | 4星级 | 中国高水平大学 |
110 | 新疆大学 | 63.68 | 5星级 | 中国一流大学(特色) |
111 | 上海师范大学 | 63.65 | 4星级 | 中国高水平大学 |
112 | 内蒙古大学 | 63.6 | 4星级 | 中国高水平大学 |
113 | 中央财经大学 | 63.57 | 5星级 | 中国一流大学(特色) |
114 | 东北林业大学 | 63.46 | 4星级 | 中国高水平大学 |
115 | 东北财经大学 | 63.36 | 5星级 | 中国一流大学(特色) |
116 | 广东工业大学 | 63.28 | 4星级 | 中国高水平大学 |
117 | 中国石油大学(北京) | 63.27 | 5星级 | 中国一流大学(特色) |
118 | 华北电力大学 | 63.26 | 4星级 | 中国高水平大学 |
119 | 福建农林大学 | 63.23 | 4星级 | 中国高水平大学 |
120 | 南方医科大学 | 63.2 | 4星级 | 中国高水平大学 |
121 | 湘潭大学 | 63.16 | 4星级 | 中国高水平大学 |
122 | 东北农业大学 | 63.08 | 4星级 | 中国高水平大学 |
123 | 南京邮电大学 | 63.06 | 4星级 | 中国高水平大学 |
124 | 西南政法大学 | 63.04 | 5星级 | 中国一流大学(特色) |
125 | 广东外语外贸大学 | 63.02 | 4星级 | 中国高水平大学 |
126 | 山东师范大学 | 63 | 4星级 | 中国高水平大学 |
127 | 华侨大学 | 62.98 | 3星级 | 区域一流大学 |
128 | 四川农业大学 | 62.92 | 4星级 | 中国高水平大学 |
129 | 长沙理工大学 | 62.89 | 4星级 | 中国高水平大学 |
129 | 西北师范大学 | 62.89 | 4星级 | 中国高水平大学 |
131 | 哈尔滨医科大学 | 62.88 | 4星级 | 中国高水平大学 |
132 | 安徽师范大学 | 62.85 | 4星级 | 中国高水平大学 |
132 | 山东农业大学 | 62.85 | 4星级 | 中国高水平大学 |
132 | 广西师范大学 | 62.85 | 3星级 | 区域一流大学 |
135 | 大连海事大学 | 62.83 | 4星级 | 中国高水平大学 |
135 | 海南大学 | 62.83 | 3星级 | 区域一流大学 |
135 | 江西师范大学 | 62.83 | 3星级 | 区域一流大学 |
138 | 北京语言大学 | 62.8 | 5星级 | 中国一流大学(特色) |
138 | 南京医科大学 | 62.8 | 4星级 | 中国高水平大学 |
140 | 广州大学 | 62.76 | 3星级 | 区域一流大学 |
141 | 河北工业大学 | 62.75 | 4星级 | 中国高水平大学 |
142 | 中国药科大学 | 62.71 | 5星级 | 中国一流大学(特色) |
143 | 山东科技大学 | 62.67 | 3星级 | 区域一流大学 |
143 | 河南科技大学 | 62.67 | 3星级 | 区域一流大学 |
145 | 天津医科大学 | 62.66 | 4星级 | 中国高水平大学 |
146 | 北京中医药大学 | 62.65 | 6星级 | 世界高水平大学(特色) |
147 | 天津工业大学 | 62.63 | 4星级 | 中国高水平大学 |
147 | 河北师范大学 | 62.63 | 3星级 | 区域一流大学 |
149 | 湖南农业大学 | 62.61 | 3星级 | 区域一流大学 |
150 | 江西财经大学 | 62.58 | 4星级 | 中国高水平大学 |
150 | 浙江工商大学 | 62.58 | 4星级 | 中国高水平大学 |
152 | 青岛大学 | 62.57 | 3星级 | 区域一流大学 |
153 | 中国医科大学 | 62.55 | 4星级 | 中国高水平大学 |
154 | 西安理工大学 | 62.54 | 3星级 | 区域一流大学 |
155 | 河南师范大学 | 62.53 | 3星级 | 区域一流大学 |
155 | 湖北大学 | 62.53 | 3星级 | 区域一流大学 |
157 | 上海中医药大学 | 62.52 | 6星级 | 世界高水平大学(特色) |
157 | 成都理工大学 | 62.52 | 4星级 | 中国高水平大学 |
157 | 重庆邮电大学 | 62.52 | 3星级 | 区域一流大学 |
160 | 南京信息工程大学 | 62.51 | 4星级 | 中国高水平大学 |
161 | 南京林业大学 | 62.49 | 4星级 | 中国高水平大学 |
161 | 长春理工大学 | 62.49 | 3星级 | 区域一流大学 |
163 | 西安建筑科技大学 | 62.47 | 4星级 | 中国高水平大学 |
163 | 云南师范大学 | 62.47 | 3星级 | 区域一流大学 |
163 | 浙江理工大学 | 62.47 | 3星级 | 区域一流大学 |
166 | 汕头大学 | 62.46 | 3星级 | 区域一流大学 |
167 | 中南民族大学 | 62.43 | 5星级 | 中国一流大学(特色) |
167 | 中国地质大学(北京) | 62.43 | 4星级 | 中国高水平大学 |
169 | 云南民族大学 | 62.42 | 5星级 | 中国一流大学(特色) |
170 | 哈尔滨师范大学 | 62.41 | 3星级 | 区域一流大学 |
171 | 武汉科技大学 | 62.4 | 3星级 | 区域一流大学 |
172 | 杭州师范大学 | 62.37 | 3星级 | 区域一流大学 |
173 | 延边大学 | 62.35 | 3星级 | 区域一流大学 |
174 | 石河子大学 | 62.34 | 3星级 | 区域一流大学 |
175 | 重庆医科大学 | 62.33 | 3星级 | 区域一流大学 |
176 | 南方科技大学 | 62.32 | 5星级 | 中国一流大学(特色) |
176 | 河南农业大学 | 62.32 | 3星级 | 区域一流大学 |
178 | 大连大学 | 62.29 | 3星级 | 区域一流大学 |
178 | 温州医科大学 | 62.29 | 3星级 | 区域一流大学 |
180 | 哈尔滨理工大学 | 62.26 | 3星级 | 区域一流大学 |
181 | 首都经济贸易大学 | 62.23 | 4星级 | 中国高水平大学 |
182 | 河北农业大学 | 62.22 | 4星级 | 中国高水平大学 |
182 | 四川师范大学 | 62.22 | 3星级 | 区域一流大学 |
182 | 中国计量大学 | 62.22 | 3星级 | 区域一流大学 |
185 | 兰州交通大学 | 62.21 | 3星级 | 区域一流大学 |
186 | 南京中医药大学 | 62.19 | 4星级 | 中国高水平大学 |
186 | 东北电力大学 | 62.19 | 3星级 | 区域一流大学 |
188 | 东莞理工学院 | 62.18 | 3星级 | 区域一流大学 |
189 | 山东财经大学 | 62.17 | 4星级 | 中国高水平大学 |
190 | 上海海事大学 | 62.16 | 4星级 | 中国高水平大学 |
191 | 河南理工大学 | 62.15 | 3星级 | 区域一流大学 |
192 | 宁夏大学 | 62.14 | 3星级 | 区域一流大学 |
193 | 桂林电子科技大学 | 62.13 | 3星级 | 区域一流大学 |
193 | 湖北工业大学 | 62.13 | 3星级 | 区域一流大学 |
193 | 济南大学 | 62.13 | 3星级 | 区域一流大学 |
193 | 江苏师范大学 | 62.13 | 3星级 | 区域一流大学 |
197 | 沈阳农业大学 | 62.12 | 3星级 | 区域一流大学 |
198 | 湖南科技大学 | 62.11 | 3星级 | 区域一流大学 |
198 | 辽宁工程技术大学 | 62.11 | 3星级 | 区域一流大学 |
198 | 重庆交通大学 | 62.11 | 3星级 | 区域一流大学 |
201 | 华东政法大学 | 62.1 | 4星级 | 中国高水平大学 |
201 | 青岛科技大学 | 62.1 | 3星级 | 区域一流大学 |
201 | 曲阜师范大学 | 62.1 | 2星级 | 区域高水平大学 |
204 | 云南农业大学 | 62.09 | 3星级 | 区域一流大学 |
205 | 天津理工大学 | 62.08 | 3星级 | 区域一流大学 |
206 | 辽宁师范大学 | 62.06 | 3星级 | 区域一流大学 |
207 | 兰州理工大学 | 62.04 | 3星级 | 区域一流大学 |
207 | 天津科技大学 | 62.04 | 3星级 | 区域一流大学 |
209 | 长江大学 | 62.03 | 3星级 | 区域一流大学 |
210 | 西南石油大学 | 62.01 | 4星级 | 中国高水平大学 |
210 | 中北大学 | 62.01 | 3星级 | 区域一流大学 |
212 | 广州中医药大学 | 61.99 | 5星级 | 中国一流大学(特色) |
213 | 成都中医药大学 | 61.98 | 4星级 | 中国高水平大学 |
213 | 天津中医药大学 | 61.98 | 4星级 | 中国高水平大学 |
215 | 重庆师范大学 | 61.97 | 2星级 | 区域高水平大学 |
216 | 三峡大学 | 61.95 | 3星级 | 区域一流大学 |
216 | 山东理工大学 | 61.95 | 3星级 | 区域一流大学 |
218 | 天津财经大学 | 61.93 | 4星级 | 中国高水平大学 |
218 | 温州大学 | 61.93 | 3星级 | 区域一流大学 |
220 | 西南民族大学 | 61.88 | 4星级 | 中国高水平大学 |
220 | 贵州师范大学 | 61.88 | 2星级 | 区域高水平大学 |
222 | 东北石油大学 | 61.82 | 4星级 | 中国高水平大学 |
222 | 安徽农业大学 | 61.82 | 3星级 | 区域一流大学 |
222 | 沈阳工业大学 | 61.82 | 3星级 | 区域一流大学 |
225 | 华东交通大学 | 61.79 | 3星级 | 区域一流大学 |
225 | 上海工程技术大学 | 61.79 | 3星级 | 区域一流大学 |
227 | 大连医科大学 | 61.77 | 3星级 | 区域一流大学 |
228 | 黑龙江中医药大学 | 61.76 | 5星级 | 中国一流大学(特色) |
228 | 上海海洋大学 | 61.76 | 4星级 | 中国高水平大学 |
230 | 广西民族大学 | 61.74 | 4星级 | 中国高水平大学 |
230 | 中国矿业大学(北京) | 61.74 | 4星级 | 中国高水平大学 |
230 | 江西理工大学 | 61.74 | 2星级 | 区域高水平大学 |
233 | 浙江农林大学 | 61.73 | 3星级 | 区域一流大学 |
234 | 南通大学 | 61.71 | 2星级 | 区域高水平大学 |
234 | 重庆工商大学 | 61.71 | 2星级 | 区域高水平大学 |
236 | 中南林业科技大学 | 61.7 | 3星级 | 区域一流大学 |
237 | 广州医科大学 | 61.69 | 3星级 | 区域一流大学 |
237 | 河南工业大学 | 61.69 | 3星级 | 区域一流大学 |
239 | 内蒙古农业大学 | 61.68 | 3星级 | 区域一流大学 |
239 | 南昌航空大学 | 61.68 | 3星级 | 区域一流大学 |
239 | 新疆师范大学 | 61.68 | 2星级 | 区域高水平大学 |
242 | 浙江财经大学 | 61.67 | 3星级 | 区域一流大学 |
242 | 青岛理工大学 | 61.67 | 2星级 | 区域高水平大学 |
244 | 吉林农业大学 | 61.66 | 3星级 | 区域一流大学 |
244 | 大连工业大学 | 61.66 | 2星级 | 区域高水平大学 |
246 | 青海大学 | 61.65 | 3星级 | 区域一流大学 |
246 | 山西财经大学 | 61.65 | 3星级 | 区域一流大学 |
248 | 广西医科大学 | 61.64 | 3星级 | 区域一流大学 |
248 | 石家庄铁道大学 | 61.64 | 3星级 | 区域一流大学 |
248 | 西南科技大学 | 61.64 | 2星级 | 区域高水平大学 |
251 | 北京工商大学 | 61.63 | 3星级 | 区域一流大学 |
252 | 西藏大学 | 61.62 | 3星级 | 区域一流大学 |
252 | 沈阳建筑大学 | 61.62 | 3星级 | 区域一流大学 |
254 | 江西农业大学 | 61.61 | 3星级 | 区域一流大学 |
254 | 山西医科大学 | 61.61 | 3星级 | 区域一流大学 |
256 | 哈尔滨商业大学 | 61.6 | 3星级 | 区域一流大学 |
256 | 河北科技大学 | 61.6 | 2星级 | 区域高水平大学 |
256 | 集美大学 | 61.6 | 2星级 | 区域高水平大学 |
259 | 内蒙古师范大学 | 61.58 | 2星级 | 区域高水平大学 |
259 | 新疆医科大学 | 61.58 | 2星级 | 区域高水平大学 |
261 | 中国民航大学 | 61.57 | 3星级 | 区域一流大学 |
261 | 景德镇陶瓷大学 | 61.57 | 2星级 | 区域高水平大学 |
263 | 上海对外经贸大学 | 61.56 | 3星级 | 区域一流大学 |
263 | 新疆农业大学 | 61.56 | 3星级 | 区域一流大学 |
263 | 西安科技大学 | 61.56 | 2星级 | 区域高水平大学 |
266 | 云南财经大学 | 61.55 | 3星级 | 区域一流大学 |
267 | 桂林理工大学 | 61.54 | 2星级 | 区域高水平大学 |
267 | 南华大学 | 61.54 | 2星级 | 区域高水平大学 |
267 | 沈阳师范大学 | 61.54 | 2星级 | 区域高水平大学 |
267 | 烟台大学 | 61.54 | 2星级 | 区域高水平大学 |
271 | 浙江海洋大学 | 61.53 | 3星级 | 区域一流大学 |
272 | 武汉纺织大学 | 61.52 | 2星级 | 区域高水平大学 |
273 | 沈阳药科大学 | 61.5 | 4星级 | 中国高水平大学 |
273 | 安徽工业大学 | 61.5 | 3星级 | 区域一流大学 |
273 | 安徽医科大学 | 61.5 | 3星级 | 区域一流大学 |
273 | 海南师范大学 | 61.5 | 2星级 | 区域高水平大学 |
277 | 北华大学 | 61.49 | 2星级 | 区域高水平大学 |
278 | 重庆理工大学 | 61.48 | 2星级 | 区域高水平大学 |
279 | 河北医科大学 | 61.47 | 3星级 | 区域一流大学 |
280 | 福建医科大学 | 61.46 | 3星级 | 区域一流大学 |
280 | 南京财经大学 | 61.46 | 3星级 | 区域一流大学 |
282 | 陕西科技大学 | 61.45 | 2星级 | 区域高水平大学 |
283 | 沈阳航空航天大学 | 61.43 | 3星级 | 区域一流大学 |
283 | 北京信息科技大学 | 61.43 | 2星级 | 区域高水平大学 |
283 | 长春工业大学 | 61.43 | 2星级 | 区域高水平大学 |
283 | 鲁东大学 | 61.43 | 2星级 | 区域高水平大学 |
283 | 山西师范大学 | 61.43 | 2星级 | 区域高水平大学 |
288 | 江西中医药大学 | 61.42 | 3星级 | 区域一流大学 |
288 | 宁夏医科大学 | 61.42 | 2星级 | 区域高水平大学 |
290 | 甘肃农业大学 | 61.41 | 3星级 | 区域一流大学 |
290 | 安徽理工大学 | 61.41 | 2星级 | 区域高水平大学 |
292 | 安徽建筑大学 | 61.4 | 3星级 | 区域一流大学 |
293 | 北京建筑大学 | 61.39 | 4星级 | 中国高水平大学 |
294 | 浙江中医药大学 | 61.38 | 4星级 | 中国高水平大学 |
294 | 常州大学 | 61.38 | 3星级 | 区域一流大学 |
296 | 天津职业技术师范大学 | 61.37 | 2星级 | 区域高水平大学 |
297 | 湖南中医药大学 | 61.36 | 4星级 | 中国高水平大学 |
298 | 安徽财经大学 | 61.35 | 2星级 | 区域高水平大学 |
298 | 聊城大学 | 61.35 | 2星级 | 区域高水平大学 |
300 | 辽宁科技大学 | 61.32 | 2星级 | 区域高水平大学 |
301 | 西北民族大学 | 61.31 | 4星级 | 中国高水平大学 |
301 | 大连交通大学 | 61.31 | 3星级 | 区域一流大学 |
301 | 内蒙古科技大学 | 61.31 | 2星级 | 区域高水平大学 |
304 | 青岛农业大学 | 61.3 | 3星级 | 区域一流大学 |
304 | 河北经贸大学 | 61.3 | 2星级 | 区域高水平大学 |
304 | 内蒙古工业大学 | 61.3 | 2星级 | 区域高水平大学 |
307 | 福建中医药大学 | 61.28 | 3星级 | 区域一流大学 |
307 | 山西农业大学 | 61.28 | 3星级 | 区域一流大学 |
309 | 江苏科技大学 | 61.27 | 2星级 | 区域高水平大学 |
310 | 昆明医科大学 | 61.25 | 3星级 | 区域一流大学 |
310 | 辽宁中医药大学 | 61.25 | 3星级 | 区域一流大学 |
310 | 东华理工大学 | 61.25 | 2星级 | 区域高水平大学 |
313 | 泰山医学院 | 61.24 | 3星级 | 区域一流大学 |
313 | 渤海大学 | 61.24 | 2星级 | 区域高水平大学 |
313 | 天津商业大学 | 61.24 | 2星级 | 区域高水平大学 |
316 | 西北政法大学 | 61.23 | 4星级 | 中国高水平大学 |
316 | 山东中医药大学 | 61.23 | 3星级 | 区域一流大学 |
318 | 西安石油大学 | 61.22 | 3星级 | 区域一流大学 |
319 | 广西师范学院 | 61.21 | 2星级 | 区域高水平大学 |
320 | 山东建筑大学 | 61.2 | 3星级 | 区域一流大学 |
320 | 北京联合大学 | 61.2 | 2星级 | 区域高水平大学 |
322 | 湖南商学院 | 61.19 | 2星级 | 区域高水平大学 |
323 | 佛山科学技术学院 | 61.18 | 2星级 | 区域高水平大学 |
323 | 赣南师范大学 | 61.18 | 2星级 | 区域高水平大学 |
323 | 华北理工大学 | 61.18 | 2星级 | 区域高水平大学 |
326 | 广东财经大学 | 61.17 | 3星级 | 区域一流大学 |
326 | 河南中医药大学 | 61.17 | 3星级 | 区域一流大学 |
328 | 北方工业大学 | 61.16 | 2星级 | 区域高水平大学 |
329 | 西华大学 | 61.15 | 2星级 | 区域高水平大学 |
329 | 浙江科技学院 | 61.15 | 2星级 | 区域高水平大学 |
331 | 吉林师范大学 | 61.14 | 2星级 | 区域高水平大学 |
331 | 武汉工程大学 | 61.14 | 2星级 | 区域高水平大学 |
333 | 西南林业大学 | 61.13 | 3星级 | 区域一流大学 |
333 | 西华师范大学 | 61.13 | 2星级 | 区域高水平大学 |
335 | 大连海洋大学 | 61.12 | 3星级 | 区域一流大学 |
335 | 沈阳化工大学 | 61.12 | 2星级 | 区域高水平大学 |
335 | 太原科技大学 | 61.12 | 2星级 | 区域高水平大学 |
338 | 吉首大学 | 61.11 | 2星级 | 区域高水平大学 |
339 | 辽宁石油化工大学 | 61.1 | 3星级 | 区域一流大学 |
339 | 湖南工业大学 | 61.1 | 2星级 | 区域高水平大学 |
341 | 湖北中医药大学 | 61.09 | 3星级 | 区域一流大学 |
342 | 西安工业大学 | 61.08 | 2星级 | 区域高水平大学 |
343 | 南京审计大学 | 61.06 | 3星级 | 区域一流大学 |
344 | 华北水利水电大学 | 61.05 | 3星级 | 区域一流大学 |
344 | 青海民族大学 | 61.05 | 2星级 | 区域高水平大学 |
344 | 青海师范大学 | 61.05 | 2星级 | 区域高水平大学 |
344 | 西安工程大学 | 61.05 | 2星级 | 区域高水平大学 |
348 | 贵州医科大学 | 61.04 | 2星级 | 区域高水平大学 |
348 | 河南财经政法大学 | 61.04 | 2星级 | 区域高水平大学 |
350 | 广东海洋大学 | 61.03 | 3星级 | 区域一流大学 |
350 | 贵州民族大学 | 61.03 | 3星级 | 区域一流大学 |
350 | 成都信息工程大学 | 61.03 | 2星级 | 区域高水平大学 |
350 | 河北工程大学 | 61.03 | 2星级 | 区域高水平大学 |
354 | 长春中医药大学 | 61.02 | 3星级 | 区域一流大学 |
354 | 广西中医药大学 | 61.02 | 3星级 | 区域一流大学 |
356 | 北京服装学院 | 61 | 2星级 | 区域高水平大学 |
356 | 齐齐哈尔大学 | 61 | 2星级 | 区域高水平大学 |
356 | 上海电力学院 | 61 | 2星级 | 区域高水平大学 |
359 | 天津城建大学 | 60.99 | 3星级 | 区域一流大学 |
360 | 湖南理工学院 | 60.98 | 2星级 | 区域高水平大学 |
360 | 武汉轻工大学 | 60.98 | 2星级 | 区域高水平大学 |
362 | 沈阳理工大学 | 60.97 | 2星级 | 区域高水平大学 |
362 | 郑州轻工业学院 | 60.97 | 2星级 | 区域高水平大学 |
364 | 贵州财经大学 | 60.96 | 2星级 | 区域高水平大学 |
365 | 新疆财经大学 | 60.95 | 3星级 | 区域一流大学 |
365 | 临沂大学 | 60.95 | 2星级 | 区域高水平大学 |
367 | 吉林财经大学 | 60.94 | 3星级 | 区域一流大学 |
367 | 福建工程学院 | 60.94 | 2星级 | 区域高水平大学 |
367 | 佳木斯大学 | 60.94 | 2星级 | 区域高水平大学 |
367 | 延安大学 | 60.94 | 2星级 | 区域高水平大学 |
367 | 遵义医学院 | 60.94 | 2星级 | 区域高水平大学 |
372 | 北方民族大学 | 60.93 | 2星级 | 区域高水平大学 |
372 | 辽宁工业大学 | 60.93 | 2星级 | 区域高水平大学 |
374 | 西安邮电大学 | 60.92 | 3星级 | 区域一流大学 |
374 | 信阳师范学院 | 60.92 | 2星级 | 区域高水平大学 |
374 | 中原工学院 | 60.92 | 2星级 | 区域高水平大学 |
374 | 湖州师范学院 | 60.92 | 1星级 | 区域知名大学 |
378 | 黑龙江科技大学 | 60.9 | 2星级 | 区域高水平大学 |
378 | 上海立信会计金融学院 | 60.9 | 2星级 | 区域高水平大学 |
380 | 贵阳中医学院 | 60.89 | 3星级 | 区域一流大学 |
381 | 南京工程学院 | 60.88 | 2星级 | 区域高水平大学 |
382 | 五邑大学 | 60.87 | 2星级 | 区域高水平大学 |
382 | 西藏民族大学 | 60.87 | 2星级 | 区域高水平大学 |
382 | 徐州医科大学 | 60.87 | 2星级 | 区域高水平大学 |
385 | 大连民族大学 | 60.86 | 3星级 | 区域一流大学 |
385 | 内蒙古民族大学 | 60.86 | 3星级 | 区域一流大学 |
385 | 塔里木大学 | 60.86 | 2星级 | 区域高水平大学 |
388 | 湖北师范大学 | 60.85 | 2星级 | 区域高水平大学 |
388 | 苏州科技大学 | 60.85 | 2星级 | 区域高水平大学 |
388 | 重庆科技学院 | 60.85 | 1星级 | 区域知名大学 |
391 | 河北地质大学 | 60.84 | 3星级 | 区域一流大学 |
391 | 陕西中医药大学 | 60.84 | 3星级 | 区域一流大学 |
391 | 安徽工程大学 | 60.84 | 2星级 | 区域高水平大学 |
391 | 合肥学院 | 60.84 | 2星级 | 区域高水平大学 |
395 | 河南科技学院 | 60.83 | 2星级 | 区域高水平大学 |
396 | 长春大学 | 60.82 | 2星级 | 区域高水平大学 |
396 | 广东金融学院 | 60.82 | 2星级 | 区域高水平大学 |
396 | 江汉大学 | 60.82 | 2星级 | 区域高水平大学 |
396 | 上海应用技术大学 | 60.82 | 2星级 | 区域高水平大学 |
396 | 厦门理工学院 | 60.82 | 2星级 | 区域高水平大学 |
401 | 海南医学院 | 60.81 | 2星级 | 区域高水平大学 |
401 | 锦州医科大学 | 60.81 | 2星级 | 区域高水平大学 |
401 | 成都学院 | 60.81 | 1星级 | 区域知名大学 |
404 | 安徽中医药大学 | 60.79 | 3星级 | 区域一流大学 |
404 | 上海政法学院 | 60.79 | 3星级 | 区域一流大学 |
404 | 天津农学院 | 60.79 | 3星级 | 区域一流大学 |
404 | 嘉兴学院 | 60.79 | 1星级 | 区域知名大学 |
404 | 绍兴文理学院 | 60.79 | 1星级 | 区域知名大学 |
409 | 广东药科大学 | 60.78 | 3星级 | 区域一流大学 |
409 | 湖北经济学院 | 60.78 | 2星级 | 区域高水平大学 |
411 | 黑龙江八一农垦大学 | 60.76 | 3星级 | 区域一流大学 |
411 | 井冈山大学 | 60.76 | 2星级 | 区域高水平大学 |
413 | 广西科技大学 | 60.75 | 2星级 | 区域高水平大学 |
413 | 山东工商学院 | 60.75 | 2星级 | 区域高水平大学 |
413 | 浙江万里学院 | 60.75 | 1星级 | 区域知名大学 |
416 | 长春师范大学 | 60.73 | 2星级 | 区域高水平大学 |
416 | 江西科技师范大学 | 60.73 | 2星级 | 区域高水平大学 |
416 | 内蒙古财经大学 | 60.73 | 2星级 | 区域高水平大学 |
419 | 北京农学院 | 60.72 | 3星级 | 区域一流大学 |
419 | 北京印刷学院 | 60.72 | 3星级 | 区域一流大学 |
419 | 安庆师范大学 | 60.72 | 2星级 | 区域高水平大学 |
419 | 广东技术师范学院 | 60.72 | 2星级 | 区域高水平大学 |
419 | 沈阳大学 | 60.72 | 2星级 | 区域高水平大学 |
424 | 闽南师范大学 | 60.71 | 2星级 | 区域高水平大学 |
424 | 大理大学 | 60.71 | 1星级 | 区域知名大学 |
424 | 宁波工程学院 | 60.71 | 1星级 | 区域知名大学 |
427 | 西南医科大学 | 60.7 | 3星级 | 区域一流大学 |
427 | 内蒙古医科大学 | 60.7 | 2星级 | 区域高水平大学 |
427 | 宁夏师范学院 | 60.7 | 2星级 | 区域高水平大学 |
427 | 广西财经学院 | 60.7 | 1星级 | 区域知名大学 |
427 | 淮北师范大学 | 60.7 | 1星级 | 区域知名大学 |
427 | 闽江学院 | 60.7 | 1星级 | 区域知名大学 |
427 | 南昌工程学院 | 60.7 | 1星级 | 区域知名大学 |
427 | 重庆文理学院 | 60.7 | 1星级 | 区域知名大学 |
435 | 广东医科大学 | 60.69 | 2星级 | 区域高水平大学 |
435 | 江苏理工学院 | 60.69 | 1星级 | 区域知名大学 |
437 | 淮阴师范学院 | 60.68 | 1星级 | 区域知名大学 |
437 | 九江学院 | 60.68 | 1星级 | 区域知名大学 |
437 | 四川理工学院 | 60.68 | 1星级 | 区域知名大学 |
440 | 兰州财经大学 | 60.67 | 3星级 | 区域一流大学 |
440 | 广东石油化工学院 | 60.67 | 2星级 | 区域高水平大学 |
440 | 新乡医学院 | 60.67 | 2星级 | 区域高水平大学 |
440 | 盐城师范学院 | 60.67 | 1星级 | 区域知名大学 |
Linux 常用command
linux目录架构
/ 根目录
/bin 常用的命令 binary file 的目錄
/boot 存放系统启动时必须读取的档案,包括核心 (kernel) 在内
/boot/grub/menu.lst GRUB设置
/boot/vmlinuz 内核
/boot/initrd 核心解壓縮所需 RAM Disk
/dev 系统周边设备
/etc 系统相关设定文件
/etc/DIR_COLORS 设定颜色
/etc/HOSTNAME 设定用户的节点名
/etc/NETWORKING 只有YES标明网络存在
/etc/host.conf 文件说明用户的系统如何查询节点名
/etc/hosts 设定用户自已的IP与名字的对应表
/etc/hosts.allow 设置允许使用inetd的机器使用
/etc/hosts.deny 设置不允许使用inetd的机器使用
/etc/hosts.equiv 设置远端机不用密码
/etc/inetd.conf 设定系统网络守护进程inetd的配置
/etc/gateways 设定路由器
/etc/protocols 设定系统支持的协议
/etc/named.boot 设定本机为名字服务器的配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0 设置IP
/etc/resolv.conf 设置DNS
/etc/X11 X Window的配置文件,xorg.conf 或 XF86Config 這兩個 X Server 的設定檔
/etc/fstab 记录开机要mount的文件系统
/etc/inittab 设定系统启动时init进程将把系统设置成什么样的runlevel
/etc/issue 记录用户登录前显示的信息
/etc/group 设定用户的组名与相关信息
/etc/passwd 帐号信息
/etc/shadow 密码信息
/etc/sudoers 可以sudo命令的配置文件
/etc/securetty 设定哪些终端可以让root登录
/etc/login.defs 所有用户登录时的缺省配置
/etc/exports 设定NFS系统用的
/etc/init.d/ 所有服務的預設啟動 script 都是放在這裡的,例如要啟動或者關閉
/etc/xinetd.d/ 這就是所謂的 super daemon 管理的各項服務的設定檔目錄
/etc/modprobe.conf 内核模块额外参数设定
/etc/syslog.conf 日志设置文件
/home 使用者家目录
/lib 系统会使用到的函数库
/lib/modules kernel 的相关模块
/var/lib/rpm rpm套件安装处
/lost+found 系統不正常產生錯誤時,會將一些遺失的片段放置於此目錄下
/mnt 外设的挂载点
/media 与/mnt类似
/opt 主机额外安装的软件
/proc 虚拟目录,是内存的映射
/proc/version 内核版本
/proc/sys/kernel 系统内核功能
/root 系统管理员的家目录
/sbin 系统管理员才能执行的指令
/srv 一些服務啟動之後,這些服務所需要取用的資料目錄
/tmp 一般使用者或者是正在執行的程序暫時放置檔案的地方
/usr 最大的目录,存许应用程序和文件
/usr/X11R6: X-Window目录
/usr/src: Linux源代码
/usr/include:系统头文件
/usr/openwin 存放SUN的OpenWin
/usr/man 在线使用手册
/usr/bin 使用者可執行的 binary file 的目錄
/usr/local/bin 使用者可執行的 binary file 的目錄
/usr/lib 系统会使用到的函数库
/usr/local/lib 系统会使用到的函数库
/usr/sbin 系统管理员才能执行的指令
/usr/local/sbin 系统管理员才能执行的指令
/var 日志文件
/var/log/secure 記錄登入系統存取資料的檔案,例如 pop3, ssh, telnet, ftp 等都會記錄在此檔案中
/var/log/wtmp 記錄登入者的訊息資料, last
/var/log/messages 幾乎系統發生的錯誤訊息
/var/log/boot.log 記錄開機或者是一些服務啟動的時候,所顯示的啟動或關閉訊息
/var/log/maillog 紀錄郵件存取或往來( sendmail 與 pop3 )的使用者記錄
/var/log/cron 記錄 crontab 這個例行性服務的內容
/var/log/httpd, /var/log/news, /var/log/mysqld.log, /var/log/samba, /var/log/procmail.log:
分別是幾個不同的網路服務的記錄檔 一些常用的基本命令:
uname -a 查看内核版本
ls -al 显示所有文件的属性
pwd 显示当前路径
cd – 返回上一次目录 cd ~ 返回主目录
date s 设置时间、日期
cal 显示日历 cal 2006
bc 计算器具
man & info 帮助手册
locale 显示当前字体 locale -a 所有可用字体 /etc/sysconfig/i18n设置文件
LANG=en 使用英文字体
sync 将数据同步写入硬盘
shutdonw -h now & half & poweroff 关机
reboot 重启
startx & init 5 进入图形介面
/work & ?work 向上、下查找文档内容
chgrp 改变档案群组 chgrp testing install.log
chown 改变所属人 chown root:root install.log
chmod 改变属性 chmod 777 install.log read=4 write=2 execute=1
cp 复制 cp filename
rm 删除文件 rm -rf filename 强制删除文件
rmdir 删除文件夹
mv 移动 mv 123.txt 222.txt 重命名
mkdir 创建文件夹
touch 创建文件 更新当前时间
cat 由第一行开始显示 cat |more 分页
nl 在内容前加行号
more & less 一面一面翻动
head -n filename 显示第N行内容
tail -n filename 显示后N行内容
od 显示非纯文档
df -h 显示分区空间
du 显示目录或文件的大小
fdisk 分区设置 fdisk -l /dev/hda 显示硬盘分区状态
mkfs 建立各种文件系统 mkfs -t ext3 /dev/ram15
fsck 检查和修复LINUX档案
ln 硬链接 ln -s 软件链接
whereis 查找命令
locate 查找
find 查找 find / -name “***.***”
which 查看工具
whoami 显示当前用户
gcc -v 查看GCC版本
chattr +i filename 禁止删除 chattr -i filename 取消禁止
lsattr 显示隐藏档属性
updatedb 更新资料库
mke2fs 格式化 mkfs -t ext3
dd if=/etc/passwd of=/tmp/passwd.bak 备份
mount 列出系统所有的分区
mount -t iso9660 /dev/cdrom /mnt/cdrom 挂载光盘
mount -t vfat /dev/fd0 /mnt/floppy 挂载软盘
mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/hda2 挂载fat32分区
mount -t ntfs -o nls=utf8,umask=000 /dev/hda3 /mnt/hda3 挂载ntfs分区
Linux-NTFS Project: http://linux-ntfs.sourceforge.net/
umount /mnt/hda3 缷载
ifconfig 显示或设置网络设备
service network restart 重启网卡
ifdown eth0 关闭网卡
ifup eth0 开启网卡
clear 清屏
history 历史记录 !55 执行第55个指令
stty 设置终端 stty -a
fdisk /mbr 删除GRUB
at 僅進行一次的工作排程
crontab 循環執行的例行性命令 [e]编辑,[l]显示,[r]删除任务
& 后台运行程序 tar -zxvf 123.tar.gz & ———>后台运行
jobs 观看后台暂停的程序 jobs -l
fg 将后台程序调到前台 fg n ——>n是数字,可以指定进行那个程序
bg 让工作在后台运行
kill 结束进程 kill -9 PID [9]强制结束,[15]正常结束,[l]列出可用的kill信号
ps aux 查看后台程序
top 查看后台程序 top -d 2 每两秒更新一次 top -d 2 -p10604 观看某个PID
top -b -n 2 > /tmp/top.txt —–>將 top 的資訊進行 2 次,然後將結果輸出到 /tmp/top.txt
pstree 以树状图显示程序 [A]以 ASCII 來連接, [u]列出PID, [p]列出帐号
killall 要刪除某個服務 killall -9 httpd
free 显示内存状态 free -m ——–>以M为单位显示
uptime 显示目前系统开机时间
netstat 显示网络状态 netstat -tulnp——>找出目前系統上已在監聽的網路連線及其 PID
dmesg 显示开机信息 demsg | more
nice 设置优先权 nice -n -5 vi & —–>用 root 給一個 nice 植為 -5 ,用於執行 vi
renice 调整已存在优先权
runlevel 显示目前的runlevel
depmod 分析可载入模块的相依性
lsmod 显示已载入系统的模块
modinfo 显示kernel模块的信息
insmod 载入模块
modprobe 自动处理可载入模块
rmmod 删除模块
chkconfig 检查,设置系统的各种服务 chkconfig –list —–>列出各项服务状态
ntsysv 设置系统的各种服务
cpio 备份文件
压缩命令:
*.Z compress 程式壓縮的檔案;
*.bz2 bzip2 程式壓縮的檔案;
*.gz gzip 程式壓縮的檔案;
*.tar tar 程式打包的資料,並沒有壓縮過;
*.tar.gz tar 程式打包的檔案,其中並且經過 gzip 的壓縮
compress filename 压缩文件 加[-d]解压 uncompress
gzip filename 压缩 加[-d]解压 zcat 123.gz 查看压缩文件内容
bzip2 -z filename 压缩 加[-d]解压 bzcat filename.bz2 查看压缩文件内容
tar -cvf /home/123.tar /etc 打包,不压缩
tar -xvf 123.tar 解开包
tar -zxvf /home/123.tar.gz 以gzip解压
tar -jxvf /home/123.tar.bz2 以bzip2解压
tar -ztvf /tmp/etc.tar.gz 查看tar内容
cpio -covB > [file|device] 份份
cpio -icduv < [file|device] 还原 vi一般用法
一般模式 编辑模式 指令模式
h 左 a,i,r,o,A,I,R,O :w 保存
j 下 进入编辑模式 :w! 强制保存
k 上 dd 删除光标当前行 :q! 不保存离开
l 右 ndd 删除n行 :wq! 保存后离开
0 移动到行首 yy 复制当前行 :e! 还原原始档
$ 移动到行尾 nyy 复制n行 :w filename 另存为
H 屏幕最上 p,P 粘贴 :set nu 设置行号
M 屏幕中央 u 撤消 :set nonu 取消行号
L 屏幕最下 [Ctrl]+r 重做上一个动作 ZZ 保存离开
G 档案最后一行 [ctrl]+z 暂停退出 :set nohlsearch 永久地关闭高亮显示
/work 向下搜索 :sp 同时打开两个文档
?work 向上搜索 [Ctrl]+w 两个文档设换
gg 移动到档案第一行 :nohlsearch 暂时关闭高亮显示 认识SHELL
alias 显示当前所有的命令别名 alias lm=”ls -al” 命令别名 unalias lm 取消命令别名
type 类似which
exprot 设置或显示环境变量
exprot PATH=”$PATH”:/sbin 添加/sbin入PATH路径
echo $PATH 显示PATH路径
bash 进入子程序
name=yang 设定变量
unset name 取消变量
echo $name 显示变量的内容
myname=”$name its me” & myname=’$name its me’ 单引号时$name失去变量内容
ciw=/etc/sysconfig/network-scripts/ 设置路径
env 列出所有环境变量
echo $RANDOM 显示随意产生的数
set 设置SHELL
PS1='[/u@/h /w /A #/#]/$ ‘ 提示字元的設定
[root@linux ~]# read [-pt] variable ———–读取键盘输入的变量
參數:
-p :後面可以接提示字元!
-t :後面可以接等待的『秒數!』
declare 声明 shell 变量
ulimit -a 显示所有限制资料
ls /tmp/yang && echo “exist” || echo “not exist”
意思是說,當 ls /tmp/yang 執行後,若正確,就執行echo “exist” ,若有問題,就執行echo “not exist”
echo $PATH | cut -d ‘:’ -f 5 以:为分隔符,读取第5段内容
export | cut -c 10-20 读取第10到20个字节的内容
last | grep ‘root’ 搜索有root的一行,加[-v]反向搜索
cat /etc/passwd | sort 排序显示
cat /etc/passwd | wc 显示『行、字数、字节数』正规表示法
[root@test root]# grep [-acinv] ‘搜尋字串’ filename
參數說明:
-a :將 binary 檔案以 text 檔案的方式搜尋資料
-c :計算找到 ‘搜尋字串’ 的次數
-i :忽略大小寫的不同,所以大小寫視為相同
-n :順便輸出行號
-v :反向選擇,亦即顯示出沒有 ‘搜尋字串’ 內容的那一行!
grep -n ‘the’ 123.txt 搜索the字符 ———–搜尋特定字串
grep -n ‘t[ea]st’ 123.txt 搜索test或taste两个字符———利用 [] 來搜尋集合字元
grep -n ‘[^g]oo’ 123.txt 搜索前面不为g的oo———–向選擇 [^]
grep -n ‘[0-9]’ 123.txt 搜索有0-9的数字
grep -n ‘^the’ 123.txt 搜索以the为行首———–行首搜索^
grep -n ‘^[^a-zA-Z]’ 123.txt 搜索不以英文字母开头
grep -n ‘[a-z]$’ 123.txt 搜索以a-z结尾的行———- 行尾搜索$
grep -n ‘g..d’ 123.txt 搜索开头g结尾d字符———-任意一個字元 .
grep -n ‘ooo*’ 123.txt 搜索至少有两个oo的字符———重複字元 *
sed 文本流编辑器 利用脚本命令来处理文本文件
awd 模式扫描和处理语言
nl 123.txt | sed ‘2,5d’ 删除第二到第五行的内容
diff 比较文件的差异
cmp 比较两个文件是否有差异
patch 修补文件
pr 要打印的文件格式化
帐号管理
/etc/passwd 系统帐号信息
/etc/shadow 帐号密码信息 经MD5 32位加密
在密码栏前面加『 * 』『 ! 』禁止使用某帐号
/etc/group 系统群组信息
/etc/gshadow
newgrp 改变登陆组
useradd & adduser 建立新用户 ———> useradd -m test 自动建立用户的登入目录
useradd -m -g pgroup test ———>指定所属级
/etc/default/useradd 相关设定
/etc/login.defs UID/GID 有關的設定
passwd 更改密码 ———–> passwd test
usermod 修改用户帐号
userdel 删除帐号 ———–>userdel -r test
chsh 更换登陆系统时使用的SHELL [-l]显示可用的SHELL;[-s]修改自己的SHELL
chfn 改变finger指令显示的信息
finger 查找并显示用户信息
id 显示用户的ID ———–> id test
groupadd 添加组
groupmod 与usermod类似
groupdel 删除组
su test 更改用户 su – 进入root,且使用root的环境变量
sudo 以其他身份来执行指令
visudo 编辑/etc/sudoers 加入一行『 test ALL=(ALL) ALL 』
%wheel ALL = (ALL) ALL 系统里所有wheel群组的用户都可用sudo
%wheel ALL = (ALL) NOPASSWD: ALL wheel群组所有用户都不用密码NOPASSWD
User_Alias ADMPW = vbird, dmtsai, vbird1, vbird3 加入ADMPW组
ADMPW ALL = NOPASSWD: !/usr/bin/passwd, /usr/bin/passwd [A-Za-z]*, /
!/usr/bin/passwd root 可以更改使用者密码,但不能更改root密码 (在指令前面加入 ! 代表不可)
PAM (Pluggable Authentication Modules, 嵌入式模組)
who & w 看谁在线
last 最近登陆主机的信息
lastlog 最近登入的時間 读取 /var/log/lastlog
talk 与其他用户交谈
write 发送信息 write test [ctrl]+d 发送
mesg 设置终端机的写入权限 mesg n 禁止接收 mesg y
wall 向所有用户发送信息 wall this is q test
mail 写mail
/etc/default/useradd 家目录默认设置quota 显示磁盘已使用的空间与限制 quota -guvs —–>秀出目前 root 自己的 quota 限制值
quota -vu 查询
quotacheck 检查磁盘的使用空间与限制 quotacheck -avug —–>將所有的在 /etc/mtab 內,含有 quota 支援的 partition 進行掃瞄
[-m] 强制扫描
quota一定要是独立的分区,要有quota.user和quota.group两件文件,在/etc/fstab添加一句:
/dev/hda3 /home ext3 defaults,usrquota,grpquota 1 2
chmod 600 quota* 设置完成,重启生效
edquota 编辑用户或群组的quota [u]用户,[g]群组,[p]复制,[t]设置宽限期限
edquota -a yang edquota -p yang -u young —–>复制
quotaon 开启磁盘空间限制 quotaon -auvg ——–>啟動所有的具有 quota 的 filesystem
quotaoff 关闭磁盘空间限制 quotaoff -a ——–>關閉了 quota 的限制
repquota -av 查閱系統內所有的具有 quota 的 filesystem 的限值狀態Quota 從開始準備 filesystem 的支援到整個設定結束的主要的步驟大概是:
1、設定 partition 的 filesystem 支援 quota 參數:
由於 quota 必須要讓 partition 上面的 filesystem 支援才行,一般來說, 支援度最好的是 ext2/ext3 ,
其他的 filesystem 類型鳥哥我是沒有試過啦! 啟動 filesystem 支援 quota 最簡單就是編輯 /etc/fstab ,
使得準備要開放的 quota 磁碟可以支援 quota 囉;
2、建立 quota 記錄檔:
剛剛前面講過,整個 quota 進行磁碟限制值記錄的檔案是 aquota.user/aquota.group,
要建立這兩個檔案就必須要先利用 quotacheck 掃瞄才行喔!
3、編輯 quota 限制值資料:
再來就是使用 edquota 來編輯每個使用者或群組的可使用空間囉;
4、重新掃瞄與啟動 quota :
設定好 quota 之後,建議可以再進行一次 quotacheck ,然後再以 quotaon 來啟動吧!
开机流程简介
1、載入 BIOS 的硬體資訊,並取得第一個開機裝置的代號;
2、讀取第一個開機裝置的 MBR 的 boot Loader (亦即是 lilo, grub, spfdisk 等等) 的開機資訊;
3、載入 Kernel 作業系統核心資訊, Kernel 開始解壓縮,並且嘗試驅動所有硬體裝置;
4、Kernel 執行 init 程式並取得 run-level 資訊;
5、init 執行 /etc/rc.d/rc.sysinit 檔案;
6、啟動核心的外掛模組 (/etc/modprobe.conf);
7、init 執行 run-level 的各個批次檔( Scripts );
8、init 執行 /etc/rc.d/rc.local 檔案;
9、執行 /bin/login 程式,並等待使用者登入;
10、登入之後開始以 Shell 控管主機。在/etc/rc.d/rc3.d內,以S开头的为开机启动,以K开头的为关闭,接着的数字代表执行顺序GRUB vga设定
彩度/解析度 640×480 800×600 1024×768 1280×1024 bit
256 769 771 773 775 8 bit
32768 784 787 790 793 15 bit
65536 785 788 791 794 16 bit
16.8M 786 789 792 795 32 bit
./configure 检查系统信息 ./configure –help | more 帮助信息
make clean 清除之前留下的文件
make 编译
make install 安装rpm -q —–>查询是否安装 rpm -ql ——>查询该套件所有的目录
rpm -qi —–>查询套件的说明资料 rpm -qc[d] —–>设定档与说明档
rpm -ivh —->安装 rpm -V ——–>查看套件有否更动过
rpm -e ——>删除 rpm -Uvh ——->升级安装
–nodeps —–>强行安装 –test —–>测试安装
Linux Shell Command
Linux-shell-完全詳解命令
一、 Shell簡介:什麽是Shell,Shell命令的兩種執行方式1
二、 幾種常見的Shell1
三、 Shell腳本語言與編譯型語言的差異2
四、什麽時候使用Shell3
五、 第一個Shell腳本3
六、Shell變量:Shell變量的定義、刪除變量、只讀變量、變量類型5
七、Shell特殊變量:Shell $0, $#, $*, $@, $?, $$和命令行參數6
八、 Shell替換:Shell變量替換,命令替換,轉義字符9
九、 Shell運算符:Shell算數運算符、關系運算符、布爾運算符、字符串運算符12
十、 Shell註釋20
十一、 Shell字符串20
十二、Shell數組:shell數組的定義、數組長度21
十三、 Shell echo命令23
十四、 shell printf命令:格式化輸出語句24
十五、Shell if else語句25
十六、Shell case esac語句28
十七、Shell for循環30
十八、Shell while循環31
十九、Shell until循環32
二十、Shell break和continue命令33
二十一、Shell函數:Shell函數返回值、刪除函數、在終端調用函數35
二十二、Shell函數參數37
二十三、Shell輸入輸出重定向:Shell Here Document,/dev/null文件38
二十四、Shell文件包含41
Linux-shell-完全詳解(1)
一、Shell簡介:什麽是Shell,Shell命令的兩種執行方式
Shell本身是一個用C語言編寫的程序,它是用戶使用Unix/Linux的橋梁,用戶的大部分工作都是通過Shell完成的。Shell既是一種命令語言,又是一種程序設計語言。作為命令語言,它交互式地解釋和執行用戶輸入的命令;作為程序設計語言,它定義了各種變量和參數,並提供了許多在高級語言中才具有的控制結構,包括循環和分支。
它雖然不是Unix/Linux系統內核的一部分,但它調用了系統核心的大部分功能來執行程序、建立文件並以並行的方式協調各個程序的運行。因此,對於用戶來說,shell是最重要的實用程序,深入了解和熟練掌握shell的特性極其使用方法,是用好Unix/Linux系統的關鍵。
Shell有兩種執行命令的方式:
1、交互式(Interactive):解釋執行用戶的命令,用戶輸入一條命令,Shell就解釋執行一條。
2、批處理(batch):用戶事先寫一個Shell腳本(Script),其中有很多條命令,讓Shell一次把這些命令執行完,而不必一條一條地敲命令。
Shell腳本和編程語言很相似,也有變量和流程控制語句,但Shell腳本是解釋執行的,不需要編譯,Shell程序從腳本中一行一行讀取並執行這些命令,相當於一個用戶把腳本中的命令一行一行敲到Shell提示符下執行。
Shell初學者請註意,在平常應用中,建議不要用 root 帳號運行 Shell 。作為普通用戶,不管您有意還是無意,都無法破壞系統;但如果是 root,那就不同了,只要敲幾個字母,就可能導致災難性後果。
二、幾種常見的Shell
上面提到過,Shell是一種腳本語言,那麽,就必須有解釋器來執行這些腳本。
Unix/Linux上常見的Shell腳本解釋器有bash、sh、csh、ksh等,習慣上把它們稱作一種Shell。我們常說有多少種Shell,其實說的是Shell腳本解釋器。
bash
bash是Linux標準默認的shell,本教程也基於bash講解。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的縮寫,內部命令一共有40個。
Linux使用它作為默認的shell是因為它有諸如以下的特色:
可以使用類似DOS下面的doskey的功能,用方向鍵查閱和快速輸入並修改命令。
1、自動通過查找匹配的方式給出以某字符串開頭的命令。
2、包含了自身的幫助功能,你只要在提示符下面鍵入help就可以得到相關的幫助。
sh
sh
由Steve Bourne開發,是Bourne Shell的縮寫,sh 是Unix 標準默認的shell。
ash
ash shell 是由Kenneth Almquist編寫的,Linux中占用系統資源最少的一個小shell,它只包含24個內部命令,因而使用起來很不方便。
csh
csh 是Linux比較大的內核,它由以William Joy為代表的共計47位作者編成,共有52個內部命令。該shell其實是指向/bin/tcsh這樣的一個shell,也就是說,csh其實就是tcsh。
ksh
ksh 是Korn shell的縮寫,由Eric Gisin編寫,共有42條內部命令。該shell最大的優點是幾乎和商業發行版的ksh完全兼容,這樣就可以在不用花錢購買商業版本的情況下嘗試商業版本的性能了。
註意:bash是 Bourne Again Shell 的縮寫,是linux標準的默認shell ,它基於Bourne shell,吸收了C shell和Korn shell的一些特性。bash完全兼容sh,也就是說,用sh寫的腳本可以不加修改的在bash中執行。
三、Shell腳本語言與編譯型語言的差異
大體上,可以將程序設計語言可以分為兩類:編譯型語言和解釋型語言。
編譯型語言
很多傳統的程序設計語言,例如Fortran、Ada、Pascal、C、C++和Java,都是編譯型語言。這類語言需要預先將我們寫好的源代碼(source code)轉換成目標代碼(object code),這個過程被稱作“編譯”。
運行程序時,直接讀取目標代碼(object code)。由於編譯後的目標代碼(object code)非常接近計算機底層,因此執行效率很高,這是編譯型語言的優點。
但是,由於編譯型語言多半運作於底層,所處理的是字節、整數、浮點數或是其他機器層級的對象,往往實現一個簡單的功能需要大量復雜的代碼。例如,在C++裏,就很難進行“將一個目錄裏所有的文件復制到另一個目錄中”之類的簡單操作。
解釋型語言
解釋型語言也被稱作“腳本語言”。執行這類程序時,解釋器(interpreter)需要讀取我們編寫的源代碼(source code),並將其轉換成目標代碼(object code),再由計算機運行。因為每次執行程序都多了編譯的過程,因此效率有所下降。
使用腳本編程語言的好處是,它們多半運行在比編譯型語言還高的層級,能夠輕易處理文件與目錄之類的對象;缺點是它們的效率通常不如編譯型語言。不過權衡之下,通常使用腳本編程還是值得的:花一個小時寫成的簡單腳本,同樣的功能用C或C++來編寫實現,可能需要兩天,而且一般來說,腳本執行的速度已經夠快了,快到足以讓人忽略它性能上的問題。腳本編程語言的例子有awk、perl、Python、Ruby與Shell。
四、什麽時候使用Shell
因為Shell似乎是各UNIX系統之間通用的功能,並且經過了POSIX的標準化。因此,Shell腳本只要“用心寫”一次,即可應用到很多系統上。因此,之所以要使用Shell腳本是基於:
1、簡單性:Shell是一個高級語言;通過它,你可以簡潔地表達復雜的操作。
2、可移植性:使用POSIX所定義的功能,可以做到腳本無須修改就可在不同的系統上執行。
3、開發容易:可以在短時間內完成一個功能強大又妤用的腳本
但是,考慮到Shell腳本的命令限制和效率問題,下列情況一般不使用Shell:
1、資源密集型的任務,尤其在需要考慮效率時(比如,排序,hash等等)。
2、需要處理大任務的數學操作,尤其是浮點運算,精確運算,或者復雜的算術運算(這種情況一般使用C++或FORTRAN 來處理)。
3、有跨平臺(操作系統)移植需求(一般使用C 或Java)。
4、復雜的應用,在必須使用結構化編程的時候(需要變量的類型檢查,函數原型,等等)。
5、對於影響系統全局性的關鍵任務應用。
6、對於安全有很高要求的任務,比如你需要一個健壯的系統來防止入侵、破解、惡意破壞等等。
7、項目由連串的依賴的各個部分組成。
8、需要大規模的文件操作。
9、需要多維數組的支持。
10、需要數據結構的支持,比如鏈表或數等數據結構。
11、需要產生或操作圖形化界面 GUI。
12、需要直接操作系統硬件。
13、需要 I/O 或socket 接口。
14、需要使用庫或者遺留下來的老代碼的接口。
15、私人的、閉源的應用(shell 腳本把代碼就放在文本文件中,全世界都能看到)。
如果你的應用符合上邊的任意一條,那麽就考慮一下更強大的語言吧——或許是Perl、Tcl、Python、Ruby——或者是更高層次的編譯語言比如C/C++,或者是Java。即使如此,你會發現,使用shell來原型開發你的應用,在開發步驟中也是非常有用的。
五、第一個Shell腳本
打開文本編輯器,新建一個文件,擴展名為sh(sh代表shell),擴展名並不影響腳本執行,見名知意就好,如果你用php寫shell 腳本,擴展名就用php好了。
輸入一些代碼:
#!/bin/bash
echo “Hello World !”
“#!” 是一個約定的標記,它告訴系統這個腳本需要什麽解釋器來執行,即使用哪一種Shell。echo命令用於向窗口輸出文本。
運行Shell腳本有兩種方法。
作為可執行程序
chmod +x ./test.sh #使腳本具有執行權限./test.sh #執行腳本
註意,一定要寫成./test.sh,而不是test.sh。運行其它二進制的程序也一樣,直接寫test.sh,linux系統會去PATH裏尋找有沒有叫test.sh的,而只有/bin, /sbin, /usr/bin,/usr/sbin等在PATH裏,你的當前目錄通常不在PATH裏,所以寫成test.sh是會找不到命令的,要用./test.sh告訴系統說,就在當前目錄找。
通過這種方式運行bash腳本,第一行一定要寫對,好讓系統查找到正確的解釋器。
這裏的”系統”,其實就是shell這個應用程序(想象一下Windows Explorer),但我故意寫成系統,是方便理解,既然這個系統就是指shell,那麽一個使用/bin/sh作為解釋器的腳本是不是可以省去第一行呢?是的。
作為解釋器參數
這種運行方式是,直接運行解釋器,其參數就是shell腳本的文件名,如:
/bin/sh test.sh/bin/php test.php
這種方式運行的腳本,不需要在第一行指定解釋器信息,寫了也沒用。
再看一個例子。下面的腳本使用 read 命令從 stdin 獲取輸入並賦值給 PERSON 變量,最後在 stdout 上輸出:
#!/bin/bash
# Author : mozhiyan
# Copyright (c) http://see.xidian.edu.cn/cpp/linux/
# Script follows here:
echo “What is your name?”
read PERSON
echo “Hello, $PERSON”
運行腳本:
chmod +x ./test.sh$./test.shWhat is your name?mozhiyanHello, mozhiyan$
六、Shell變量:Shell變量的定義、刪除變量、只讀變量、變量類型
Shell支持自定義變量。
定義變量
定義變量時,變量名不加美元符號($),如:
variableName=”value”
註意,變量名和等號之間不能有空格,這可能和你熟悉的所有編程語言都不一樣。同時,變量名的命名須遵循如下規則:
1、首個字符必須為字母(a-z,A-Z)。
2、中間不能有空格,可以使用下劃線(_)。
3、不能使用標點符號。
4、不能使用bash裏的關鍵字(可用help命令查看保留關鍵字)。
變量定義舉例:
myUrl=”http://see.xidian.edu.cn/cpp/linux/”
myNum=100
使用變量
使用一個定義過的變量,只要在變量名前面加美元符號($)即可,如:
your_name=”mozhiyan”
echo $your_name
echo ${your_name}
變量名外面的花括號是可選的,加不加都行,加花括號是為了幫助解釋器識別變量的邊界,比如下面這種情況:
for skill in Ada Coffe Action Java
do
echo “I am good at ${skill}Script”
done
如果不給skill變量加花括號,寫成echo “I am good at $skillScript”,解釋器就會把$skillScript當成一個變量(其值為空),代碼執行結果就不是我們期望的樣子了。
推薦給所有變量加上花括號,這是個好的編程習慣。
重新定義變量
已定義的變量,可以被重新定義,如:
myUrl=”http://see.xidian.edu.cn/cpp/linux/”
echo ${myUrl}
myUrl=”http://see.xidian.edu.cn/cpp/shell/”
echo ${myUrl}
這樣寫是合法的,但註意,第二次賦值的時候不能寫 $myUrl=”http://see.xidian.edu.cn/cpp/shell/”,使用變量的時候才加美元符($)。
只讀變量
使用 readonly 命令可以將變量定義為只讀變量,只讀變量的值不能被改變。
下面的例子嘗試更改只讀變量,結果報錯:
#!/bin/bash
myUrl=”http://see.xidian.edu.cn/cpp/shell/”
readonly myUrl
myUrl=”http://see.xidian.edu.cn/cpp/danpianji/”
運行腳本,結果如下:
/bin/sh: NAME: This variable is read only.
刪除變量
使用 unset 命令可以刪除變量。語法:
unset variable_name
變量被刪除後不能再次使用;
unset 命令不能刪除只讀變量。
舉個例子:
#!/bin/sh
myUrl=”http://see.xidian.edu.cn/cpp/u/xitong/”
unset myUrl
echo $myUrl
上面的腳本沒有任何輸出。
變量類型
運行shell時,會同時存在三種變量:
1) 局部變量
局部變量在腳本或命令中定義,僅在當前shell實例中有效,其他shell啟動的程序不能訪問局部變量。
2) 環境變量
所有的程序,包括shell啟動的程序,都能訪問環境變量,有些程序需要環境變量來保證其正常運行。必要的時候shell腳本也可以定義環境變量。
3) shell變量
shell變量是由shell程序設置的特殊變量。shell變量中有一部分是環境變量,有一部分是局部變量,這些變量保證了shell的正常運行。
七、Shell特殊變量:Shell $0, $#, $*, $@, $?, $$和命令行參數
前面已經講到,變量名只能包含數字、字母和下劃線,因為某些包含其他字符的變量有特殊含義,這樣的變量被稱為特殊變量。
例如,$ 表示當前Shell進程的id,即pid,看下面的代碼:
$echo $$
運行結果
29949
特殊变量列表 | |
变量 | 含义 |
$0 | 当前脚本的文件名 |
$n | 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。 |
$# | 传递给脚本或函数的参数个数。 |
$* | 传递给脚本或函数的所有参数。 |
$@ | 传递给脚本或函数的所有参数。被双引号(” “)包含时,与 $* 稍有不同,下面将会讲到。 |
$? | 上个命令的退出状态,或函数的返回值。 |
$$ | 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID。 |
命令行参数
運行腳本時傳遞給腳本的參數稱為命令行參數。命令行參數用 $n 表示,例如,$1 表示第一個參數,$2 表示第二個參數,依次類推。
請看下面的腳本:
#!/bin/bash
echo “file Name: $0″
echo “First Parameter : $1”
echo “First Parameter : $2”
echo “Quoted Values: $@”
echo “Quoted Values: $*”
echo “Total Number of Parameters : $#”
運行結果:
$./test.sh Zara AliFile Name : ./test.shFirst Parameter : ZaraSecond Parameter : AliQuoted Values: Zara AliQuoted Values: Zara AliTotal Number of Parameters : 2
$* 和 $@ 的區別
$* 和 $@ 都表示傳遞給函數或腳本的所有參數,不被雙引號(” “)包含時,都以”$1” “$2” … “$n” 的形式輸出所有參數。
但是當它們被雙引號(” “)包含時,”$*” 會將所有的參數作為一個整體,以”$1 $2 … $n”的形式輸出所有參數;”$@” 會將各個參數分開,以”$1″ “$2” … “$n” 的形式輸出所有參數。
下面的例子可以清楚的看到 $* 和 $@ 的區別:
#!/bin/bash
echo “\$*=” $*
echo “\”\$*\”=” “$*”
echo “\$@=” $@
echo “\”\$@\”=” “$@”
echo “print each param from \$*”
for var in $*
do
echo “$var”
done
echo “print each param from \$@”
for var in $@
do
echo “$var”
done
echo “print each param from \”\$*\””
for var in “$*”
do
echo “$var”
done
echo “print each param from \”\$@\””
for var in “$@”
do
echo “$var”
done
執行 ./test.sh “a” “b” “c” “d”,看到下面的結果:
$*= a b c d”$*”= a b c d$@= a b c d”$@”= a b c dprint each param from $*abcdprint each param from $@abcdprint each param from “$*”a b c dprint each param from “$@”abcd
退出狀態
$? 可以獲取上一個命令的退出狀態。所謂退出狀態,就是上一個命令執行後的返回結果。
退出狀態是一個數字,一般情況下,大部分命令執行成功會返回 0,失敗返回 1。
不過,也有一些命令返回其他值,表示不同類型的錯誤。
下面例子中,命令成功執行:
$./test.sh Zara AliFile Name : ./test.shFirst Parameter : ZaraSecond Parameter : AliQuoted Values: Zara AliQuoted Values: Zara AliTotal Number of Parameters : 2$echo $?0$
$? 也可以表示函數的返回值,後續將會講解。
八、Shell替換:Shell變量替換,命令替換,轉義字符
如果表達式中包含特殊字符,Shell 將會進行替換。例如,在雙引號中使用變量就是一種替換,轉義字符也是一種替換。
舉個例子:
#!/bin/bash
a=10
echo -e “Value of a is $a \n”
運行結果:
Value of a is 10
這裏 -e 表示對轉義字符進行替換。如果不使用 -e 選項,將會原樣輸出:
Value of a is 10\n
下面的轉義字符都可以用在 echo 中:
转义字符 | 含义 |
\\ | 反斜杠 |
\a | 警报,响铃 |
\b | 退格(删除键) |
\f | 换页(FF),将当前位置移到下页开头 |
\n | 换行 |
\r | 回车 |
\t | 水平制表符(tab键) |
\v | 垂直制表符 |
可以使用 echo 命令的 -E 選項禁止轉義,默認也是不轉義的;使用 -n 選項可以禁止插入換行符。
命令替換
命令替換是指Shell可以先執行命令,將輸出結果暫時保存,在適當的地方輸出。
命令替換的語法:
`command`
註意是反引號,不是單引號,這個鍵位於 Esc 鍵下方。
下面的例子中,將命令執行結果保存在變量中:
#!/bin/bash
date=`date`
echo “Date is $DATE”
echo “Logged in user are $USERS”
UP=`date ; uptime`
echo “Uptime is $UP”
運行結果:
Date is Thu Jul 2 03:59:57 MST 2009Logged in user are 1Uptime is Thu Jul 2 03:59:57 MST 200903:59:57 up 20 days, 14:03, 1 user, load avg: 0.13, 0.07, 0.15
變量替換
變量替換可以根據變量的狀態(是否為空、是否定義等)來改變它的值
可以使用的變量替換形式:
形式 | 说明 |
${var} | 变量本来的值 |
${var:-word} | 如果变量 var 为空或已被删除(unset),那么返回 word,但不改变 var 的值。 |
${var:=word} | 如果变量 var 为空或已被删除(unset),那么返回 word,并将var 的值设置为 word。 |
${var:?message} | 如果变量 var 为空或已被删除(unset),那么将消息 message 送到标准错误输出,可以用来检测变量 var 是否可以被正常赋值。 若此替换出现在Shell脚本中,那么脚本将停止运行。 |
${var:+word} | 如果变量 var 被定义,那么返回 word,但不改变 var 的值。 |
請看下面的例子:
#!/bin/bash echo ${var:-“Variable is not set“}echo “1 – Value of var is ${var}” echo ${var:=”Variable is not set”}echo “2 – Value of var is ${var}” unset varecho ${var:+”This is default value”}echo “3 – Value of var is $var” var=”Prefix”echo ${var:+”This is default value”}echo “4 – Value of var is $var” echo ${var:?”Print this message”}echo “5 – Value of var is ${var}”
運行結果:
Variable is not set
1 – Value of var is
Variable is not set
2 – Value of var is Variable is not set
3 – Value of var is
This is default value
4 – Value of var is Prefix
Prefix
5 – Value of var is Prefix
VI Keyboard


VI命令详解
vi命令示例大全
命令历史
以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。
进入vi
vi filename
# 打开或新建文件,并将光标置于第一行首vi +n filename
# 打开文件,并将光标置于第n行首vi + filename
# 打开文件,并将光标置于最后一行首vi +/pattern filename
# 打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename
# 在上次正用vi编辑时发生系统崩溃,恢复filenamevi filename....filename
# 打开多个文件,依次进行编辑
文件命令
打开单个文件
vim file
同时打开多个文件
vim file1 file2 file3 …
在vim窗口中打开一个新文件
:open file
在新窗口中打开文件
:split file
切换到下一个文件
:bn
切换到上一个文件
:bp
查看当前打开的文件列表,当前正在编辑的文件会用[]括起来。
:args
打开远程文件,比如ftp或者share folder
:e ftp://192.168.10.76/abc.txt
:e \qadrive\test\1.txt
vim的模式
正常模式(按Esc或Ctrl+[进入) 左下角显示文件名或为空
插入模式(按i键进入) 左下角显示–INSERT–
可视模式(不知道如何进入) 左下角显示–VISUAL–
保存退出
w
# 保存当前文件w /tmp1
# 另存为/tmp120,59w /tmp1
# 仅将20-59行之间的内存另存为/tmp1x
或 wq
# 保存退出q
# 退出viq!
# 退出不保存!command
# 执行shell命令commandn1,n2 w !command
# 将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入r !command
# 将命令command的输出结果放到当前行w !sudo tee %
# 保存没权限时,可获取权限再保存
导航
h
# 光标左移一个字符l
# 光标右移一个字符space
# 光标右移一个字符Backspace
# 光标左移一个字符k
或 Ctrl+p
# 光标上移一行j
或 Ctrl+n
# 光标下移一行Enter
# 光标下移一行w
或 W
# 光标右移一个字至字首b
或 B
# 光标左移一个字至字首e
或 E
# 光标右移一个字至字尾)
# 光标移至句尾(
# 光标移至句首}
# 光标移至段落开头{
# 光标移至段落结尾nG
# 光标移至第n行首n+
# 光标下移n行n-
# 光标上移n行n$
# 光标移至第n行尾H
# 光标移至屏幕顶行M
# 光标移至屏幕中间行L
# 光标移至屏幕最后行0
# (注意是数字零)光标移至当前行首$
# 光标移至当前行尾%
括号匹配
屏幕翻滚
Ctrl+u
# 向文件首翻半屏Ctrl+d
# 向文件尾翻半屏Ctrl+f
# 向文件尾翻一屏Ctrl+b
# 向文件首翻一屏nz
# 将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部
插入
i
# 在光标前I
# 在当前行首a
# 光标后A
# 在当前行尾o
# 在当前行之下新开一行O
# 在当前行之上新开一行r
# 替换当前字符R
# 替换当前字符及其后的字符,直至按ESC键s
# 从当前光标位置处开始,以输入的文本替代指定数目的字符S
# 删除指定数目的行,并以所输入文本代替之ncw
或 nCW
# 修改指定数目的字nCC
# 修改指定数目的行
删除
ndw
或 ndW
# 删除光标处开始及其后的n-1个字do
# 删至行首d$
# 删至行尾ndd
# 删除当前行及其后n-1行x
或 X
# 删除一个字符,x删除光标后的,而X删除光标前的Ctrl+u
# 删除输入方式下所输入的文本n1,n2 d
# 将n1行到n2行之间的内容删除%d
# 删除全部内容1,$d
# 删除全部内容
复制粘贴、剪切、移动
yy
# 复制当前行nyy
# 复制当前行开始的n行
先按 v
然后方向键选择区域,按 y
复制选中行dd
# 剪切当前行p(小)
# 在当前光标处下面粘贴内容。P(大)
# 在当前光标处上面粘贴内容n1,n2 co n3
# 将n1行到n2行之间的内容拷贝到第n3行下n1,n2 m n3
# 将n1行到n2行之间的内容移至到第n3行下
vi编辑器中的各种(整行,多行,一个单词)复制
2014年06月06日 18:03:02 笑笑小懒猪 阅读数 7359那么vi编辑器中的整行(多行)复制与粘贴就非常必要了。
1、复制
1)单行复制
在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制;
2)多行复制
在命令模式下,将光标移动到将要复制的首行处,按“nyy”复制n行;其中n为1、2、3……
2、粘贴
在命令模式下,将光标移动到将要粘贴的行处,按“p”进行粘贴
vi复制多行文本的方法
方法1:
光标放到第6行,
输入:2yy
光标放到第9行,
输入:p
此方法适合复制少量行文本的情况,复制第6行(包括)下面的2行数据,放到第9行下面。
方法2:
命令行模式下输入
6,9 co 12
复制第6行到第9行之间的内容到第12行后面。
方法3:
有时候不想费劲看多少行或复制大量行时,可以使用标签来替代
光标移到起始行,输入ma
光标移到结束行,输入mb
光标移到粘贴行,输入mc
然后 :’a,’b co ‘c 把 co 改成 m就成剪切了
要删除多行的话,可以用 :5, 9de
vi复制一个单词的方法
光标移到想要被复制词的词首,输入yw
光标移到想到粘贴的位置,输入p
vi复制几个字母(字符)的方法
光标移到想要被复制字符的首位置,若想复制5个字符输入:5yl
光标移到想到粘贴的位置,输入p
搜索(查找)
/abc
# 从光标开始处向文件尾搜索abc?abc
# 从光标开始处向文件首搜索abc/\/abc
# 从光标开始处向文件尾搜索/abc,其中/是转义n
# 在同一方向重复上一次搜索命令N
# 在反方向上重复上一次搜索命令
替换
s/vivian/sky/
# 替换当前行第一个 vivian 为 skys/vivian/sky/g
# 替换当前行所有 vivian 为 skyn,$s/vivian/sky/
# 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 skyn,$s/vivian/sky/g
# 替换第 n 行开始到最后一行中每一行所有 vivian 为sky%s/vivian/sky/g
# (等同于 g/vivian/s//sky/) 替换每一行的每一个 vivian 为 skys#vivian/#sky/#
# 替换当前行第一个 vivian/ 为 sky/(可以使用 #或+作为分隔符,此时中间出现的 / 不会作为分隔符)s/p1/p2/g
# 将当前行中所有p1均用p2替代n1,n2s/p1/p2/g
# 将第n1至n2行中所有p1均用p2替代g/p1/s//p2/g
# 将文件中所有p1均用p2替换
寄存器
"?nyy
# 将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字"?nyw
# 将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字"?nyl
# 将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字"?p
# 取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字ndd
# 将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。
选项设置
set number
# 显示行号set number!
# 不显示行号,其它选项同理加!号set all
# 列出所有选项设置情况set term
# 设置终端类型set ignorance
# 在搜索中忽略大小写set list
# 显示制表位(Ctrl+I)和行尾标志($)set report
# 显示由面向行的命令修改过的数目set terse
# 显示简短的警告信息set warn
# 在转到别的文件时若没保存当前文件则显示NO write信息set nomagic
# 允许在搜索模式中,使用前面不带“”的特殊字符set nowrapscan
# 禁止vi在搜索到达文件两端时,又从另一端开始set mesg
# 允许vi显示其他用户用write写到自己终端上的信息
插入命令
i 在当前位置生前插入
I 在当前行首插入
a 在当前位置后插入
A 在当前行尾插入
o 在当前行之后插入一行
O 在当前行之前插入一行
查找命令
/text 查找text,按n健查找下一个,按N健查找前一个。
?text 查找text,反向查找,按n健查找下一个,按N健查找前一个。
vim中有一些特殊字符在查找时需要转义 .*[]^%/?~$
:set ignorecase 忽略大小写的查找
:set noignorecase 不忽略大小写的查找
查找很长的词,如果一个词很长,键入麻烦,可以将光标移动到该词上,按*或#键即可以该单词进行搜索,相当于/搜索。而#命令相当于?搜索。
:set hlsearch 高亮搜索结果,所有结果都高亮显示,而不是只显示一个匹配。
:set nohlsearch 关闭高亮搜索显示
:nohlsearch 关闭当前的高亮显示,如果再次搜索或者按下n或N键,则会再次高亮。
:set incsearch 逐步搜索模式,对当前键入的字符进行搜索而不必等待键入完成。
:set wrapscan 重新搜索,在搜索到文件头或尾时,返回继续搜索,默认开启。
替换命令
ra 将当前字符替换为a,当期字符即光标所在字符。
s/old/new/ 用old替换new,替换当前行的第一个匹配
s/old/new/g 用old替换new,替换当前行的所有匹配
%s/old/new/ 用old替换new,替换所有行的第一个匹配
%s/old/new/g 用old替换new,替换整个文件的所有匹配
:10,20 s/^/ /g 在第10行知第20行每行前面加四个空格,用于缩进。
ddp 交换光标所在行和其下紧邻的一行。
移动命令
h 左移一个字符
l 右移一个字符,这个命令很少用,一般用w代替。
k 上移一个字符
j 下移一个字符
以上四个命令可以配合数字使用,比如20j就是向下移动20行,5h就是向左移动5个字符,在Vim中,很多命令都可以配合数字使用,比如删除10个字符10x,在当前位置后插入3个!,3a!,这里的Esc是必须的,否则命令不生效。
w 向前移动一个单词(光标停在单词首部),如果已到行尾,则转至下一行行首。此命令快,可以代替l命令。
b 向后移动一个单词 2b 向后移动2个单词
e,同w,只不过是光标停在单词尾部
ge,同b,光标停在单词尾部。
^ 移动到本行第一个非空白字符上。
0(数字0)移动到本行第一个字符上,
移动到本行第一个字符。同0健。
$ 移动到行尾 3$ 移动到下面3行的行尾
gg 移动到文件头。 = [[
G(shift + g) 移动到文件尾。 = ]]
f(find)命令也可以用于移动,fx将找到光标后第一个为x的字符,3fd将找到第三个为d的字符。
F 同f,反向查找。
跳到指定行,冒号+行号,回车,比如跳到240行就是 :240回车。另一个方法是行号+G,比如230G跳到230行。
Ctrl + e 向下滚动一行
Ctrl + y 向上滚动一行
Ctrl + d 向下滚动半屏
Ctrl + u 向上滚动半屏
Ctrl + f 向下滚动一屏
Ctrl + b 向上滚动一屏
撤销和重做
u 撤销(Undo)
U 撤销对整行的操作
Ctrl + r 重做(Redo),即撤销的撤销。
删除命令
x 删除当前字符
3x 删除当前光标开始向后三个字符
X 删除当前字符的前一个字符。X=dh
dl 删除当前字符, dl=x
dh 删除前一个字符
dd 删除当前行
dj 删除上一行
dk 删除下一行
10d 删除当前行开始的10行。
D 删除当前字符至行尾。D=d$
d$ 删除当前字符之后的所有字符(本行)
kdgg 删除当前行之前所有行(不包括当前行)
jdG(jd shift + g) 删除当前行之后所有行(不包括当前行)
:1,10d 删除1-10行
:11,$d 删除11行及以后所有的行
:1,$d 删除所有行
J(shift + j) 删除两行之间的空行,实际上是合并两行。
拷贝和粘贴
yy 拷贝当前行
nyy 拷贝当前后开始的n行,比如2yy拷贝当前行及其下一行。
p 在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行粘贴。
shift+p 在当前行前粘贴
:1,10 co 20 将1-10行插入到第20行之后。
:1,$ co $ 将整个文件复制一份并添加到文件尾部。
正常模式下按v(逐字)或V(逐行)进入可视模式,然后用jklh命令移动即可选择某些行或字符,再按y即可复制
ddp交换当前行和其下一行
xp交换当前字符和其后一个字符
剪切命令
正常模式下按v(逐字)或V(逐行)进入可视模式,然后用jklh命令移动即可选择某些行或字符,再按d即可剪切
ndd 剪切当前行之后的n行。利用p命令可以对剪切的内容进行粘贴
:1,10d 将1-10行剪切。利用p命令可将剪切后的内容进行粘贴。
:1, 10 m 20 将第1-10行移动到第20行之后。
退出命令
:wq 保存并退出
ZZ 保存并退出
:q! 强制退出并忽略所有更改
:e! 放弃所有修改,并打开原来文件。
窗口命令
:split或new 打开一个新窗口,光标停在顶层的窗口上
:split file或:new file 用新窗口打开文件
split打开的窗口都是横向的,使用vsplit可以纵向打开窗口。
Ctrl+ww 移动到下一个窗口
Ctrl+wj 移动到下方的窗口
Ctrl+wk 移动到上方的窗口
关闭窗口
:close 最后一个窗口不能使用此命令,可以防止意外退出vim。
:q 如果是最后一个被关闭的窗口,那么将退出vim。
ZZ 保存并退出。
关闭所有窗口,只保留当前窗口
:only
录制宏
按q键加任意字母开始录制,再按q键结束录制(这意味着vim中的宏不可嵌套),使用的时候@加宏名,比如qa。。。q录制名为a的宏,@a使用这个宏。
执行shell命令
:!command
:!ls 列出当前目录下文件
:!perl -c script.pl 检查perl脚本语法,可以不用退出vim,非常方便。
:!perl script.pl 执行perl脚本,可以不用退出vim,非常方便。
:suspend或Ctrl – Z 挂起vim,回到shell,按fg可以返回vim。
注释命令
perl程序中#开始的行为注释,所以要注释某些行,只需在行首加入#
3,5 s/^/#/g 注释第3-5行
3,5 s/^#//g 解除3-5行的注释
1,$ s/^/#/g 注释整个文档。
:%s/^/#/g 注释整个文档,此法更快。
帮助命令
:help or F1 显示整个帮助
:help xxx 显示xxx的帮助,比如 :help i, :help CTRL-[(即Ctrl+[的帮助)。
:help ‘number’ Vim选项的帮助用单引号括起
:help 特殊键的帮助用<>扩起
:help -t Vim启动参数的帮助用-
:help i_ 插入模式下Esc的帮助,某个模式下的帮助用模式_主题的模式
帮助文件中位于||之间的内容是超链接,可以用Ctrl+]进入链接,Ctrl+o(Ctrl + t)返回
其他非编辑命令
. 重复前一次命令
:set ruler? 查看是否设置了ruler,在.vimrc中,使用set命令设制的选项都可以通过这个命令查看
:scriptnames 查看vim脚本文件的位置,比如.vimrc文件,语法文件及plugin等。
:set list 显示非打印字符,如tab,空格,行尾等。如果tab无法显示,请确定用set lcs=tab:>-命令设置了.vimrc文件,并确保你的文件中的确有tab,如果开启了expendtab,那么tab将被扩展为空格。
ASCII

百名山一覧


浅間山













丹沢山







日光白根山






男体山




四阿山 あずまやさん














皇海山 演技




皇海山






完全なLinuxがWindows 10上で稼働する? 「WSL 2」とは
6/19(水) 5:05配信

2019年5月に米国シアトルで開催されたMicrosoftの開発者向けイベント「Build 2019」で、現在のWindows Subsystem for Linux(WSL)を強化した「WSL 2」が発表された(Microsoft Devblog「Announcing WSL 2」「WSL 2 Post BUILD FAQ)。本稿では、発表されたWSL 2のアーキテクチャを紹介しつつ、その特徴や現行のWSL(以下区別のためにWSL 1と表記する)との違い、そして今後の予定について解説する。
【画像:WSL 2の構成】WSL 2とは何か?
WSL 2最大の特徴は、仮想マシンを使い、Linuxカーネルが動作する「本物のLinux環境」であるということだ。
WSL 1は、Linux実行環境をLinuxカーネルではなく、LXCore と呼ばれる「サブシステム」が作り出しており、カーネルへのファンクションコールをWindowsカーネルへのファンクションコールに変換して動作している。
これに対してWSL 2は、専用の仮想マシン環境である「Light Weight utility Virtual Machine」(軽量ユーティリティーVM)を使い、ローカルパッチ(Microsoftによる独自パッチ)を当てたLinuxカーネルバイナリを動作させ、仮想マシン内にLinuxの実行環境を作る。
「Hyper-V仮想マシンサービスを使ったLinuxの仮想マシンならば、これまでもあったではないか!」と思われる方もいるかもしれない。だが、この軽量ユーティリティーVMを使ったWSL 2では、仮想マシン環境が起動し、bashがコマンドを受け付けるまで2秒程度という速度で起動できる。
このため、コマンドプロンプトなどからwsl.exeなどを使ってbashコマンドを処理する時間は、現在のWSL 1とほとんど変わらない。また、本物のLinux実行環境であるため、これまで正しく動作できなかったアプリケーション、例えばコンテナシステム(Dockerなど)やユーザーファイルシステム(FUSEなど)も動作させることができる。その上で、現在のWSL 1と同等の機能と使い勝手を実現するという。
■WSL 2はWSL 1を置き換えずに併存する
WSL 2が登場したからといって、WSL 1は廃止になるわけではなく、引き続き利用可能である。Windows OSの仮想マシン支援機能は、Intel VTおよびAMDvにのみ対応しているため、現時点では、Hyper-Vが組み込まれていないARM64版(Windows On ARM。WOA)では、WSL 1が引き続き使われるものと考えられる。
また、Hyper-Vでは動作条件として最低4GBのメモリが指定されているため、メモリ2GBといった低スペックのマシンなどもWSL 1がカバーすることになると考えられる。
さらに、Hyper-Vベースの仮想マシン技術を使うものの、WSL 2は、Windows 10 Homeに対しても提供が行われるという(HomeではHyper-Vが無効にされている)。
WSL 2はいつリリースされるのか?
WSL 2は、2019年6月末には、Windows Insider Programでのプレビューが開始されるという。おそらく、現在プレビュー中のWindows 10の2020年春にリリース予定の機能アップデート「20H1」のプレビュー版に入る形で配布が行われるのではないかと考えられる。
つまり、正式配布は2020年5月のWindows 10バージョン2003となる。ただし、まだ、「19H2」と呼ばれる2019年10月に提供予定のWindows 10バージョン1909のプレビューは開始されておらず、そのタイミングは6月後半といわれている。そのため、「19H2」「20H1」の両方でプレビューが行われ、2019年内に正式配布が開始される可能性もある。
■コンソールを一新する「Windowsターミナル」
同イベントでは、新しいコンソールプログラムとなるWindowsターミナルも同時に発表されている。これは、タブ形式で複数セッションを同時に行えるコンソールウィドウプログラムで、DirectWrite(Microsoft DirectXのコンポーネントの1つ)などを使い、「近代的」な文字表示システムを持つ。これにより、絵文字の表示や「合字」、Programming Ligature(プログラミング用に、同一文字でも前後の文字により区別して表示するなどのフォントの機能)などに対応できるようになった。
Windowsターミナルについては、別途解説する予定だ。WSL 1を振り返る
WSL 2の具体的な実装について解説する前に、少しだけWSL 1について復習しておく。WSL 1は、Windows NT時代からある「サブシステム」を利用している。サブシステムとは、異なるOS環境を実現するための仕組みで、当初は、Windows OS内でPOSIX準拠アプリケーションを実行するために作られた。当時、米国政府調達に応じるコンピュータシステムには、全てPOSIX対応が義務付けられていたからだ(現在は義務化されていない)。1993年にリリースされた最初のWindows NTには、POSIX、OS/2およびWin32サブシステムなどが組み込まれていた。
その後、POSIX SubsystemはWindows XPでSFU(Service for UNIX)となり、Windows 7のSUA(Subsystem for UNIX-Based Application)まで、オプション機能などで利用されることになったが、Windows 8で廃止された。
この仕組みを改良し、OS側がまったく見えない「プレーン」な実行環境であるpicoプロセスをベースに開発されたのがWSL 1である。WSL 1には、Linuxカーネルは存在せず、Linuxカーネルへのファンクションコールをサブシステム側で受け、これを解釈してWindowsカーネルへのファンクションコールに変換している。
また、専用のinitプロセス(Linuxで最初に起動するプログラム。通常は初期設定や常駐デーモンの起動などを行う)が起動し、実行環境を整備する。Linuxアプリケーション側からは、通常のLinux環境のように見えるが、全てのカーネルファンクションコールに対応しているわけではない。結局、WindowsとLinuxカーネルの違いなどから完全にLinuxとの互換性を持たせることができない。
ファイルシステムに関しては、NTFS上の特定フォルダ以下を利用し、Windows OSで使わないメタデータなどを使ってアクセス制御などを可能にした「VolFs」が使われる。なお、VolFsやWSL 1内からWin32側のファイルシステムにアクセスする「DrvFs」などは、LinuxのVFS(仮想ファイルシステム)の仕組みを使う。
こうした構造であるため、まとめるとWSL 1には以下のようなLinuxと非互換の部分がある。
・全てのカーネルファンクションが実装されていない
・一部のカーネルファンクションでは、Linuxと完全な互換性が取れない(ファイルがオープンされているとき、ファイル名を変更することはWindows OSではできないが、Linuxのネイティブファイルシステムでは可能など)
・スケジューリングやメモリ管理、デバイス管理などはWindowsカーネルが行う
WSL 2では性能と互換性が向上
WSL 2では、特にカーネルファンクションの互換性を高めるため、Linuxカーネルそのものを使う。ただし、公開されているカーネルのソースコードに対して、WSL 2専用のパッチを適用してバイナリコードを生成して利用する。とはいえ、カーネルはLinuxそのものであるため、ファンクションコールの互換性はそのままである。
また、Linuxの起動ファイルシステムには、ext4を利用する。ただし、仮想環境内であるため、Windows OSの仮想ディスクを利用し、NTFS上のVHDXファイル上に構築される。これをアクセスするコードもLinuxのext4ファイルシステムのコードであり、従来のVolFsに比べて高速化が期待できる。
Microsoftによれば、ファイルアクセス中心のアプリケーションでは、WSL 1のVolFsに対して「git clone」(gitでリポジトリ内の全ソースコード全てをコピーするコマンド)で2.5倍、cmakeで3.1倍、npm install(Node.jsのパッケージインストールコマンド)で4.7倍に高速化されたという。ただし、WSL 1のVolFsとWSL 2のネイティブファイルシステムがあるVHDXは、直接の互換性がない。Microsoftは変換コマンドを用意し、相互に変換できるようにするとのことだ。WSL 2の実装
ここからは、WSL 2の具体的な実装に踏み込み、WSL 1と比べて何が変わるのか、どのようなメリット/デメリットがあるのか解説していく。
■WSL 2は専用の仮想マシン内で起動
WSL 2は、専用の仮想マシン内で起動するが、その起動はWSL 1と同じくwsl.exe(あるいはbash.exeやubuntu.exe)から行われる。wsl.exeは、WSL 1と同じく、Win32側でWSLを制御する「Lxssマネージャーサービス」を呼び出して、Linux環境の起動を要求する。仮想マシンの立ち上げは、Windows OSのコンテナ支援サービスである「ホストコンピュートサービス」を介して行われる。
その後、Lxssは、仮想マシンでLinuxディストリビューションを起動する(どのディストリビューションを起動するのかはwsl.exeの引数やデフォルト設定から決定される)。Linux環境では、最初のプロセスとしてWSL専用のinitが起動し、デーモンなどを起動することなく、bash.exeが起動される。このとき、bashには、wsl.exeに指定された引数や標準出力などが渡され、bashの出力は、wsl.exeが起動していたコンソールへと接続されることになる。
■標準ファイルシステムはext4、実体はHyper-Vの仮想ディスク
WSL 1には、VolFs、DrvFsが実装され、自身のファイルシステム(VolFs)に加えて、Win32側のストレージデバイスへのアクセス(DrvFs)が行えた。また、Windows 10 May 2019 Update(バージョン1903)からは、「wsl$」という仮想ホストを使ったWin32からVolFsへのアクセス機能が搭載されている。WSL 2でも、同様に、「Win32からWSL 2のファイルシステム」へのアクセス、「WLS 2からWin32のファイルシステム」へのアクセスが可能になる。
ただし、その実装はWSL 1と異なる。1つは、WSL 2のネイティブファイルシステムがext4ファイルシステムとなり、Hyper-Vを介して、仮想HDDで構築されることになる。
■ファイル共有プロトコル「9P」でWSL 1との互換性を確保
しかし、wsl$によるファイルアクセスは、WSL環境専用のinitプロセスに含まれる9Pサーバと、Windows 10側の9Pクライアント(ネットワークプロバイダー)によりネットワークファイルシステムとして実現されているため、実は、この部分は変更なく利用可能となる。
9Pは、Plan 9 from Bell Labs(Plan 9と略すことが多い)というOS用に開発されたファイル共有プロトコルで、もともとはPlan 9 Filesystem Protocolと呼ばれていた。WSLに使われているのは、9P2000.Lと呼ばれるLinux向けのバージョンだ。ネットワークファイルシステムなら、MicrosoftのSMBを使えばいいのではという話もあるが、Linuxには、SMBの実装であるSambaやこれを使った仮想ファイルシステムがある。
しかし、これはそもそもLinuxの標準的なパッケージではあるものの、必ずしも全てのLinuxディストリビューションに含まれているわけではないし、ユーザーがSambaを別の目的に利用したいこともあるだろう。
Sambaの設定ファイルはシステムに1つであり、これをWSLで占有してしまうと、ユーザーの利用に制限が出てしまう。またゼロから作るにしては、SMBは複雑すぎる。このためMicrosoftは、SMBによるVolFsの共有を断念し、別のプロトコルを探すことにした(Microsoftには、WindowsにGPLソフトウェアを同梱できないという社内問題もあったようだ)。
Microsoftは、Linuxコンテナ用にWindows OS用の9Pサーバを開発していた。Linuxカーネルには、9Pクライアントが組み込まれていて、対応が容易だったからだ。そのため、これを利用することにした。なお、9Pの制御はLxssマネージャーサービスが行うが、9Pサーバとクライアントの通信は、UNIXソケット(AF_UNIX)を介して行われる。WSL 2でもこの仕組みは維持されるようだ。
ただし、Windows 10 May 2019 Updateに含まれるwsl$ファイルシステムは、UNCとして「//wsl$/<ディストリビューション名>/パス」という構造を取るため、このままでは、WSL 1とWSL 2の同一ディストリビューション同士のパス名が同じになってしまう可能性がある。Microsoftによれば、WSL 1とWSL 2を同時に利用することも可能だとしている。おそらくは、「wsl2$のような仮想ホスト名を使うなどして、両者を区別できるようなUNCを使うことになると考えられる。
■WSLからWin32へのアクセス方法
前述のようにWSL 1では、WSL内からWin32側へのアクセスは、LinuxのVFSによるDrvFsを利用することで、NTFSへのアクセスをWindowsカーネル経由で行っていた。しかし、仮想マシンを使うWSL 2では、逆にWindowsカーネルへ直接ファンクションコールを出すことができない。
このため、WSLからWin32ファイルシステムのアクセスに関しても、9Pを利用する。このとき、Windows側の9Pサーバは、VMのワーカープロセス内にあるという。VMのワーカープロセスは、Hyper-Vで仮想マシンに対して、ホストOS側からファイルアクセスやネットワークサービスなどを提供する「受け口」となるプロセスだ。仮想マシンごとにワーカープロセスが対で作られる。
このように、WSL 2とWin32環境の間のファイル共有は、どちらも9Pを使うことになる。なお、現在WSL 1では、9Pの接続にUNIXソケット(AF_UNIX)を利用している。おそらくは、WSL 2では、何らかの形で、仮想マシンとWin32環境の間でUNIXソケットによる接続が可能な仕組みが提供されると思われる。
また、WSLからWin32プログラムを起動する「Win32相互運用性」では、最初にWSL側で、実行ファイルを判別する必要がある。具体的には、実行ファイル先頭のマジックナンバー(Win32ではMZ)を見て、LinuxのELF64か、Win32の実行ファイルなのかを判断する。
その上で、Linuxの「binfmt_misc」(指定されたマジックバイトシーケンスとファイルの先頭の何バイトかを比較して、バイナリタイプを判定する)という機能を使い、対象のファイルを実行できる「インタープリター」を使って指定されたファイルを実行する。
これは本来、スクリプトやJavaのjar(Javaアーカイブ)ファイルなどを実行するためのものだ。WSL 1では、インタープリターとしてinitが指定されていた。このような仕組みであるため、WSL 2でも、まずは、9Pを使って、Win32側にある実行ファイルを読み出す必要がある。その後、wsl.exeなどのWSL 2を起動した環境側と連携して、Win32実行ファイルを起動する。
WSL 2が実現可能になったのは、WSL 1開発後にWindows OSの仮想マシン技術が進歩したからだという。WSL 1は、2016年3月に開催されたBuild 2016で発表され、その後プレビュー版、β版を経てWindows 10 Fall Creators Update(バージョン1709)より正式版となった。
この2年の間にMicrosoftは、仮想マシンを高速起動が可能なように改良したわけだ。この仮想マシン技術は、Windowsサンドボックス(Windows Sandbox)やWDAG(Windows Defender Application Guard)などに使われているものと同種のものだという。Build 2019のセッションビデオなどを見ると、確かに高速に起動しており、体感的にはWSL 1とほとんど違いを感じなさそうだ。WSL 2でもWSL 1同様にディストリビューションをWSL用に変換することが可能であり、しかも完全なLinuxとなることから対応するディストリビューションも増えそうだ。
大岳山 锯山






澳大利亚









尾瀬



