Linux中国
1.73K subscribers
777 photos
6.34K links
Linux 中国官方 Telegram 频道
Download Telegram
如何使用不同的方式更改 Linux 用户密码

在 Linux 中创建用户账号时,设置用户密码是一件基本的事情。Media

via https://linux.cn/article-10514-1.html
如何使用不同的方式更改 Linux 用户密码

<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/06/182204zezh8mjumti2kwok.jpg">Media</a>&#22312; Linux &#20013;&#21019;&#24314;&#29992;&#25143;&#36134;&#21495;&#26102;&#65292;&#35774;&#32622;&#29992;&#25143;&#23494;&#30721;&#26159;&#19968;&#20214;&#22522;&#26412;&#30340;&#20107;&#24773;&#12290;&#27599;&#20010;&#20154;&#37117;&#20351;&#29992; passwd &#21629;&#20196;&#36319;&#19978;&#29992;&#25143;&#21517;&#65292;&#27604;&#22914; passwd USERNAME &#26469;&#20026;&#29992;&#25143;&#35774;&#32622;&#23494;&#30721;&#12290;&#30830;&#20445;&#20320;&#19968;&#23450;&#35201;&#35774;&#32622;&#19968;&#20010;&#38590;&#20197;&#29468;&#27979;&#30340;&#23494;&#30721;&#65292;&#36825;&#21487;&#20197;&#24110;&#21161;&#20320;&#20351;&#31995;&#32479;&#26356;&#23433;&#20840;&#12290;&#25105;&#30340;&#24847;&#24605;&#26159;&#65292;&#23494;&#30721;&#24212;&#35813;&#26159;&#23383;&#27597;&#12289;&#31526;&#21495;&#21644;&#25968;&#23383;&#30340;&#32452;&#21512;&#12290;&#27492;&#22806;&#65292;&#20986;&#20110;&#23433;&#20840;&#21407;&#22240;&#65292;&#25105;&#24314;&#35758;&#20320;&#33267;&#23569;&#27599;&#26376;&#26356;&#25913;&#19968;&#27425;&#23494;&#30721;&#12290;&#24403;&#20320;&#20351;&#29992; passwd &#21629;&#20196;&#26102;&#65292;&#23427;&#20250;&#35201;&#27714;&#20320;&#36755;&#20837;&#20004;&#27425;&#23494;&#30721;&#26469;&#35774;&#32622;&#12290;&#36825;&#26159;&#19968;&#31181;&#35774;&#32622;&#29992;&#25143;&#23494;&#30721;&#30340;&#21407;&#29983;&#26041;&#27861;&#12290;&#22914;&#26524;&#20320;&#19981;&#24819;&#20004;&#27425;&#26356;&#26032;&#23494;&#30721;&#65292;&#24182;&#24076;&#26395;&#20197;&#19981;&#21516;&#30340;&#26041;&#24335;&#36827;&#34892;&#26356;&#26032;&#65292;&#24590;&#20040;&#21150;&#21602;&#65311;&#24403;&#28982;&#65292;&#36825;&#21487;&#20197;&#30340;&#65292;&#26377;&#21487;&#33021;&#20570;&#21040;&#12290;&#22914;&#26524;&#20320;&#26159; Linux &#31649;&#29702;&#21592;&#65292;&#20320;&#21487;&#33021;&#24050;&#32463;&#22810;&#27425;&#38382;&#36807;&#19979;&#38754;&#30340;&#38382;&#39064;&#12290;&#20320;&#21487;&#33021;&#12289;&#20063;&#21487;&#33021;&#27809;&#26377;&#24471;&#21040;&#36825;&#20123;&#38382;&#39064;&#30340;&#31572;&#26696;&#12290;&#26080;&#35770;&#22914;&#20309;&#65292;&#19981;&#35201;&#25285;&#24515;&#65292;&#25105;&#20204;&#20250;&#22238;&#31572;&#20320;&#25152;&#26377;&#30340;&#38382;&#39064;&#12290;&#22914;&#20309;&#29992;&#19968;&#26465;&#21629;&#20196;&#26356;&#25913;&#29992;&#25143;&#23494;&#30721;&#65311;&#22914;&#20309;&#22312; Linux &#20013;&#20026;&#22810;&#20010;&#29992;&#25143;&#26356;&#25913;&#20026;&#30456;&#21516;&#30340;&#23494;&#30721;&#65311;&#22914;&#20309;&#22312; Linux &#20013;&#26356;&#25913;&#22810;&#20010;&#29992;&#25143;&#30340;&#23494;&#30721;&#65311;&#22914;&#20309;&#22312; Linux &#20013;&#20026;&#22810;&#20010;&#29992;&#25143;&#26356;&#25913;&#20026;&#19981;&#21516;&#30340;&#23494;&#30721;&#65311;&#22914;&#20309;&#22312;&#22810;&#20010; Linux &#26381;&#21153;&#22120;&#20013;&#26356;&#25913;&#29992;&#25143;&#30340;&#23494;&#30721;&#65311;&#22914;&#20309;&#22312;&#22810;&#20010; Linux &#26381;&#21153;&#22120;&#20013;&#26356;&#25913;&#22810;&#20010;&#29992;&#25143;&#30340;&#23494;&#30721;&#65311;&#26041;&#27861;-1&#65306;&#20351;&#29992; passwd &#21629;&#20196;passwd &#21629;&#20196;&#26159;&#22312; Linux &#20013;&#20026;&#29992;&#25143;&#35774;&#32622;&#12289;&#26356;&#25913;&#23494;&#30721;&#30340;&#26631;&#20934;&#26041;&#27861;&#12290;&#20197;&#19979;&#26159;&#26631;&#20934;&#26041;&#27861;&#12290;<pre class="prettyprint linenums"># passwd renuChanging password for user renu.New password:BAD PASSWORD: The password contains the user name in some formRetype new password:passwd: all authentication tokens updated successfully.</pre>&#22914;&#26524;&#24076;&#26395;&#22312;&#19968;&#26465;&#21629;&#20196;&#20013;&#35774;&#32622;&#25110;&#26356;&#25913;&…
XML 与 JSON 优劣对比

从这些趋势中可以推断,JSON 的发展将统一 Web 的信息交换格式,XML 的使用率将继续降低。我相信 JSON 很快就会在 Web 开发中超过 XML。至于其他领域,XML 比 JSON 更好的情况并不多。Media

via https://linux.cn/article-10515-1.html
XML &#19982; JSON &#20248;&#21155;&#23545;&#27604;

<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/06/223948jqjyy979i1ro9m6o.jpg">Media</a>&#31616;&#20171;XML &#21644; JSON &#26159;&#29616;&#20170;&#20114;&#32852;&#32593;&#20013;&#26368;&#24120;&#29992;&#30340;&#20004;&#31181;&#25968;&#25454;&#20132;&#25442;&#26684;&#24335;&#12290;XML &#26684;&#24335;&#30001; W3C &#20110; 1996 &#24180;&#25552;&#20986;&#12290;JSON &#26684;&#24335;&#30001; Douglas Crockford &#20110; 2002 &#24180;&#25552;&#20986;&#12290;&#34429;&#28982;&#36825;&#20004;&#31181;&#26684;&#24335;&#30340;&#35774;&#35745;&#30446;&#26631;&#24182;&#19981;&#30456;&#21516;&#65292;&#20294;&#23427;&#20204;&#24120;&#24120;&#29992;&#20110;&#21516;&#19968;&#20010;&#20219;&#21153;&#65292;&#20063;&#23601;&#26159;&#25968;&#25454;&#20132;&#25442;&#20013;&#12290;XML &#21644; JSON &#30340;&#25991;&#26723;&#37117;&#24456;&#23436;&#21892;&#65288;<a href="https://tools.ietf.org/html/rfc7159">RFC 7159</a>&#12289;<a href="https://tools.ietf.org/html/rfc4825">RFC 4825</a>&#65289;&#65292;&#19988;&#37117;&#21516;&#26102;&#20855;&#26377;&#20154;&#31867;&#21487;&#35835;&#24615;human-readable&#21644;&#26426;&#22120;&#21487;&#35835;&#24615;machine-readable&#12290;&#36825;&#20004;&#31181;&#26684;&#24335;&#24182;&#27809;&#26377;&#21738;&#19968;&#20010;&#27604;&#21478;&#19968;&#20010;&#26356;&#24378;&#65292;&#21482;&#26159;&#21508;&#33258;&#36866;&#29992;&#30340;&#39046;&#22495;&#19981;&#29992;&#12290;&#65288;LCTT &#35793;&#27880;&#65306;W3C &#26159;<a href="https://www.w3.org/">&#20114;&#32852;&#32593;&#32852;&#30431;</a>&#65292;&#21046;&#23450;&#20102;&#21508;&#31181; Web &#30456;&#20851;&#30340;&#26631;&#20934;&#65292;&#22914; HTML&#12289;CSS &#31561;&#12290;Douglas Crockford &#38500;&#20102;&#21046;&#23450;&#20102; JSON &#26684;&#24335;&#65292;&#36824;&#33268;&#21147;&#20110;&#25913;&#36827; JavaScript&#65292;&#24320;&#21457;&#20102; JavaScript &#30456;&#20851;&#24037;&#20855; <a href="http://jslint.com/">JSLint</a> &#21644; <a href="http://www.crockford.com/javascript/jsmin.html">JSMin</a>&#65289;XML &#30340;&#20248;&#28857;XML &#19982; JSON &#30456;&#27604;&#26377;&#24456;&#22810;&#20248;&#28857;&#12290;&#20108;&#32773;&#38388;&#26368;&#22823;&#30340;&#19981;&#21516;&#22312;&#20110; XML &#21487;&#20197;&#36890;&#36807;&#22312;&#26631;&#31614;&#20013;&#28155;&#21152;&#23646;&#24615;&#36825;&#19968;&#31616;&#21333;&#30340;&#26041;&#27861;&#26469;&#23384;&#20648;&#20803;&#25968;&#25454;metadata&#12290;&#32780;&#20351;&#29992; JSON &#26102;&#38656;&#35201;&#21019;&#24314;&#19968;&#20010;&#23545;&#35937;&#65292;&#25226;&#20803;&#25968;&#25454;&#24403;&#20316;&#23545;&#35937;&#30340;&#25104;&#21592;&#26469;&#23384;&#20648;&#12290;&#34429;&#28982;&#20108;&#32773;&#37117;&#33021;&#36798;&#21040;&#23384;&#20648;&#20803;&#25968;&#25454;&#30340;&#30446;&#30340;&#65292;&#20294;&#22312;&#36825;&#19968;&#24773;&#20917;&#19979; XML &#24448;&#24448;&#26159;&#26356;&#22909;&#30340;&#36873;&#25321;&#65292;&#22240;&#20026; JSON &#30340;&#34920;&#36798;&#24418;&#24335;&#20250;&#35753;&#23458;&#25143;&#31471;&#31243;&#24207;&#24320;&#21457;&#20154;&#21592;&#35823;&#20197;&#20026;&#35201;&#23558;&#25968;&#25454;&#36716;&#25442;&#25104;&#19968;&#20010;&#23545;&#35937;&#12290;&#20030;&#20010;&#20363;&#23376;&#65292;&#22914;&#26524;&#20320;&#30340; C++ &#31243;&#24207;&#38656;&#35201;&#20351;&#29992; JSON &#26684;&#24335;&#21457;&#36865;&#19968;&#20010;&#38468;&#24102;&#20803;&#25968;&#25454;&#30340;&#25972;&#22411;&#25968;&#25454;&#65292;&#38656;&#35201;&#21019;&#24314;&#19968;&#20010;&#23545;&#35937;&#65292;&#29992;&#23545;&#35937;&#20013;&#30340;&#19968;&#20010;&#21517;&#31216;/&#20540;&#23545;name/value pair&#26469;&#35760;&#24405;&#25972;&#22411;&#25968;&#25454;&#30340;&#20540;&#65292;&#20877;&#20026;&#27599;&#19968;&#20010;&#38468;&#24102;&#30340;&#23646;&#24615;&#28155;&#21152;&#19968;&#20010;&#21517;&#31216;/&#20540;&#23545;&#12290;&#25509;&#25910;&#21040;&#36825;&#20010; JSON &#30340;&#3124…
dcp:采用对等网络传输文件的方式

dcp 可以在不同主机之间使用 Dat 对等网络复制文件。这可以让你在两个主机间传输文件时,无需操心所述主机之间互相访问的细节,以及这些主机是否使用了 NAT。Media

via https://linux.cn/article-10516-1.html
dcp&#65306;&#37319;&#29992;&#23545;&#31561;&#32593;&#32476;&#20256;&#36755;&#25991;&#20214;&#30340;&#26041;&#24335;

<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/07/154817sht0t5fddh5tnw03.jpg">Media</a>Linux &#26412;&#23601;&#26377; scp &#21644; rsync &#21487;&#20197;&#23436;&#32654;&#22320;&#23436;&#25104;&#36825;&#20010;&#20219;&#21153;&#12290;&#28982;&#32780;&#25105;&#20204;&#20170;&#22825;&#36824;&#26159;&#24819;&#35797;&#28857;&#26032;&#19996;&#35199;&#12290;&#21516;&#26102;&#25105;&#20204;&#20063;&#24819;&#40723;&#21169;&#37027;&#20123;&#20351;&#29992;&#19981;&#21516;&#30340;&#29702;&#35770;&#21644;&#26032;&#25216;&#26415;&#24320;&#21457;&#26032;&#19996;&#35199;&#30340;&#24320;&#21457;&#32773;&#12290;&#25105;&#20204;&#20063;&#20889;&#36807;&#20854;&#20182;&#24456;&#22810;&#26377;&#20851;&#36825;&#20010;&#20027;&#39064;&#30340;&#25991;&#31456;&#65292;&#20320;&#21487;&#20197;&#28857;&#20987;&#19979;&#38754;&#30340;&#38142;&#25509;&#35775;&#38382;&#36825;&#20123;&#20869;&#23481;&#12290;&#23427;&#20204;&#20998;&#21035;&#26159; <a href="https://www.2daygeek.com/onionshare-secure-way-to-share-files-sharing-tool-linux/">OnionShare</a>&#12289;<a href="https://www.2daygeek.com/wormhole-securely-share-files-from-linux-command-line/">Magic Wormhole</a>&#12289;<a href="https://www.2daygeek.com/transfer-sh-easy-fast-way-share-files-over-internet-from-command-line/">Transfer.sh</a> &#21644; ffsend&#12290;&#20160;&#20040;&#26159; dcp&#65311;<a href="https://github.com/tom-james-watson/dat-cp">dcp</a> &#21487;&#20197;&#22312;&#19981;&#21516;&#20027;&#26426;&#20043;&#38388;&#20351;&#29992; Dat &#23545;&#31561;&#32593;&#32476;&#22797;&#21046;&#25991;&#20214;&#12290;dcp &#34987;&#35270;&#20316;&#19968;&#20010;&#20687;&#26159; scp &#36825;&#26679;&#24037;&#20855;&#30340;&#26367;&#20195;&#21697;&#65292;&#32780;&#26080;&#38656;&#22312;&#20027;&#26426;&#38388;&#36827;&#34892; SSH &#25480;&#26435;&#12290;&#36825;&#21487;&#20197;&#35753;&#20320;&#22312;&#20004;&#20010;&#20027;&#26426;&#38388;&#20256;&#36755;&#25991;&#20214;&#26102;&#65292;&#26080;&#38656;&#25805;&#24515;&#25152;&#36848;&#20027;&#26426;&#20043;&#38388;&#20114;&#30456;&#35775;&#38382;&#30340;&#32454;&#33410;&#65292;&#20197;&#21450;&#36825;&#20123;&#20027;&#26426;&#26159;&#21542;&#20351;&#29992;&#20102; NAT&#12290;dcp &#38646;&#37197;&#32622;&#12289;&#23433;&#20840;&#12289;&#24555;&#36895;&#12289;&#19988;&#26159; P2P &#20256;&#36755;&#12290;&#36825;&#24182;&#19981;&#26159;&#19968;&#20010;&#21830;&#29992;&#36719;&#20214;&#65292;&#20351;&#29992;&#20135;&#29983;&#30340;&#39118;&#38505;&#23558;&#30001;&#20351;&#29992;&#32773;&#33258;&#24049;&#25215;&#25285;&#12290;&#20160;&#20040;&#26159; Dat &#21327;&#35758;Dat &#26159;&#19968;&#20010; P2P &#21327;&#35758;&#65292;&#26159;&#19968;&#20010;&#33268;&#21147;&#20110;&#19979;&#19968;&#20195; Web &#30340;&#30001;&#31038;&#21306;&#39537;&#21160;&#30340;&#39033;&#30446;&#12290;dcp &#22914;&#20309;&#24037;&#20316;dcp &#23558;&#20250;&#20026;&#25351;&#23450;&#30340;&#25991;&#20214;&#25110;&#32773;&#25991;&#20214;&#22841;&#21019;&#24314;&#19968;&#20010; dat &#24402;&#26723;&#65292;&#24182;&#29983;&#25104;&#19968;&#20010;&#20844;&#24320;&#23494;&#38053;&#65292;&#20351;&#29992;&#36825;&#20010;&#20844;&#24320;&#23494;&#38053;&#21487;&#20197;&#35753;&#20854;&#20182;&#20154;&#20174;&#21478;&#22806;&#19968;&#21488;&#20027;&#26426;&#19978;&#19979;&#36733;&#19978;&#38754;&#30340;&#25991;&#20214;&#12290;&#20351;&#29992;&#32593;&#32476;&#20849;&#20139;&#30340;&#20219;&#20309;&#25968;&#25454;&#37117;&#20351;&#29992;&#35813;&#24402;&#26723;&#30340;&#20844;&#24320;&#23494;&#38053;&#21152;&#23494;&#65292;&#20063;&#23601;&#26159;&#35828;&#25991;&#20214;&#30340;&#25509;&#25910;&#26435;&#20165;&#38480;&#20110;&#37027;&#20123;&#25317;&#26377;&#35813;&#20844;&#24320;&#23494;&#38053;&#30340;&#20154;&#12290;dcp &#20351;&#29992;&#26696;&#20363;&#21521;&#22810;&#20010;&#21516;&#20107;&#21457;&#36865;&#25991;&#20214; —— &#21482;&#38656;&#35201;&#21578…
如何把 Google 云端硬盘当做虚拟磁盘一样挂载到 Linux

下面我将会介绍三个用于 Linux 系统非官方开发的 Google 云端硬盘客户端。使用这些客户端,你能把 Google 云端硬盘像虚拟磁盘一样挂载到 Linux 系统。Media

via https://linux.cn/article-10517-1.html
&#22914;&#20309;&#25226; Google &#20113;&#31471;&#30828;&#30424;&#24403;&#20570;&#34394;&#25311;&#30913;&#30424;&#19968;&#26679;&#25346;&#36733;&#21040; Linux

<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/07/163810vcne2fd7iek1c3du.png">Media</a><a href="https://www.google.com/drive/">Google &#20113;&#31471;&#30828;&#30424;</a> &#26159;&#20840;&#29699;&#27604;&#36739;&#21463;&#27426;&#36814;&#30340;&#20113;&#23384;&#20648;&#24179;&#21488;. &#30452;&#21040; 2017 &#24180;, &#20840;&#29699;&#26377;&#36229;&#36807; 8 &#20159;&#30340;&#27963;&#36291;&#29992;&#25143;&#22312;&#20351;&#29992;&#23427;&#12290;&#21363;&#20351;&#29992;&#25143;&#25968;&#22312;&#25345;&#32493;&#22686;&#38271;&#65292;&#20294;&#30452;&#21040;&#29616;&#22312; Google &#36824;&#26159;&#27809;&#26377;&#21457;&#24067;&#19968;&#27454;&#21487;&#20197;&#22312; Linux &#24179;&#21488;&#20351;&#29992;&#30340;&#23458;&#25143;&#31471;&#12290;&#20294;&#36825;&#38590;&#19981;&#20498; Linux &#31038;&#21306;&#12290;&#19981;&#26102;&#23601;&#26377;&#19968;&#20123;&#24320;&#21457;&#32773;&#32473; Linux &#25805;&#20316;&#31995;&#32479;&#24102;&#26469;&#19968;&#20123;&#23458;&#25143;&#31471;&#12290;&#19979;&#38754;&#25105;&#23558;&#20250;&#20171;&#32461;&#19977;&#20010;&#29992;&#20110; Linux &#31995;&#32479;&#38750;&#23448;&#26041;&#24320;&#21457;&#30340; Google &#20113;&#31471;&#30828;&#30424;&#23458;&#25143;&#31471;&#12290;&#20351;&#29992;&#36825;&#20123;&#23458;&#25143;&#31471;&#65292;&#20320;&#33021;&#25226; Google &#20113;&#31471;&#30828;&#30424;&#20687;&#34394;&#25311;&#30913;&#30424;&#19968;&#26679;&#25346;&#36733;&#21040; Linux &#31995;&#32479;&#12290;&#35831;&#32487;&#32493;&#38405;&#35835;&#12290;1&#12289;Google-drive-ocamlfusegoogle-drive-ocamlfuse &#25226; Google &#20113;&#31471;&#30828;&#30424;&#24403;&#20570;&#26159;&#19968;&#20010; FUSE &#31867;&#22411;&#30340;&#25991;&#20214;&#31995;&#32479;&#65292;&#23427;&#26159;&#29992; OCam &#35821;&#35328;&#20889;&#30340;&#12290;FUSE &#24847;&#21363;&#29992;&#25143;&#24577;&#25991;&#20214;&#31995;&#32479;Filesystem in Userspace&#65292;&#27492;&#39033;&#30446;&#20801;&#35768;&#38750;&#31649;&#29702;&#21592;&#29992;&#25143;&#22312;&#29992;&#25143;&#31354;&#38388;&#21019;&#24314;&#34394;&#25311;&#25991;&#20214;&#31995;&#32479;&#12290;google-drive-ocamlfuse &#21487;&#20197;&#35753;&#20320;&#25226; Google &#20113;&#31471;&#30828;&#30424;&#24403;&#20570;&#30913;&#30424;&#19968;&#26679;&#25346;&#36733;&#21040; Linux &#31995;&#32479;&#12290;&#25903;&#25345;&#23545;&#26222;&#36890;&#25991;&#20214;&#21644;&#30446;&#24405;&#30340;&#35835;&#20889;&#25805;&#20316;&#65292;&#25903;&#25345;&#23545; Google dock&#12289;&#34920;&#21333;&#21644;&#28436;&#31034;&#31295;&#30340;&#21482;&#35835;&#25805;&#20316;&#65292;&#25903;&#25345;&#22810;&#20010; Googe &#20113;&#31471;&#30828;&#30424;&#29992;&#25143;&#65292;&#37325;&#22797;&#25991;&#20214;&#22788;&#29702;&#65292;&#25903;&#25345;&#35775;&#38382;&#22238;&#25910;&#31449;&#31561;&#31561;&#12290;&#23433;&#35013; google-drive-ocamlfusegoogle-drive-ocamlfuse &#33021;&#22312; Arch &#31995;&#32479;&#30340; <a href="https://aur.archlinux.org/packages/google-drive-ocamlfuse/">AUR</a> &#19978;&#30452;&#25509;&#25214;&#21040;&#65292;&#25152;&#20197;&#20320;&#21487;&#20197;&#20351;&#29992; AUR &#21161;&#25163;&#31243;&#24207;&#65292;&#22914; <a href="https://www.ostechnix.com/yay-found-yet-another-reliable-aur-helper/">Yay</a> &#26469;&#23433;&#35013;&#12290;<pre class="prettyprint linenums">$ yay -S google-drive-ocamlfuse</pre>&#22312; Ubuntu &#31995;&#32479;&#65306;<pre class="prettyprint linenums">$ sudo add-apt-repository ppa:alessandro-strada/ppa$ sudo apt-get update$ sudo apt-get install google-drive-ocamlfuse</pre>&#23433;&#35013;&#26368;&#26032;&#30340;&#27979;&#35797;&#29256;&#26412;&#65306;<pre class="prettyprint linenums">$ sudo add-apt-repository ppa:alessandro-strada/google-drive-ocamlfuse-beta$ sudo apt-get update$ sudo apt-get install google-drive-ocamlfuse</pre>&#20351;&#29…
远程工作生存指南

今天,我想 分享一些个人如何做好远程工作的建议。不管你是全职远程工作者,或者是可以选择一周某几天在家工作的人,希望这篇文章对你有用。Media

via https://linux.cn/article-10518-1.html
&#36828;&#31243;&#24037;&#20316;&#29983;&#23384;&#25351;&#21335;

<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/07/201108wh989r7787r86trf.jpg">Media&#36828;&#31243;&#24037;&#20316;&#20284;&#20046;&#26159;&#26368;&#36817;&#30340;&#19968;&#20010;&#28909;&#38376;&#35805;&#39064;&#12290;CNBC &#25253;&#36947;&#31216;&#65292;<a href="https://www.cnbc.com/2018/05/30/70-percent-of-people-globally-work-remotely-at-least-once-a-week-iwg-study.html">70% &#30340;&#19987;&#19994;&#20154;&#22763;&#33267;&#23569;&#27599;&#21608;&#22312;&#23478;&#24037;&#20316;&#19968;&#27425;&#12290;&#21516;&#26679;&#22320;&#65292;CoSo Cloud &#35843;&#26597;&#21457;&#29616;&#65292; <a href="http://www.cosocloud.com/press-release/connectsolutions-survey-shows-working-remotely-benefits-employers-and-employees">77% &#30340;&#20154;&#22312;&#36828;&#31243;&#24037;&#20316;&#26102;&#25928;&#29575;&#26356;&#39640; &#65292;&#32780; aftercollege &#30340;&#19968;&#20221;&#35843;&#26597;&#26174;&#31034;&#65292;<a href="https://www.aftercollege.com/cf/2015-annual-survey">8% &#30340;&#21315;&#31143;&#19968;&#20195;&#20250;&#26356;&#22810;&#22320;&#32771;&#34385;&#25552;&#20379;&#36828;&#31243;&#24037;&#20316;&#30340;&#20844;&#21496;&#12290; &#36825;&#30475;&#36215;&#26469;&#24456;&#21512;&#29702;&#65306;&#25216;&#26415;&#12289;&#32593;&#32476;&#20197;&#21450;&#25991;&#21270;&#20284;&#20046;&#36234;&#26469;&#36234;&#25512;&#21160;&#20102;&#36828;&#31243;&#24037;&#20316;&#30340;&#21457;&#23637;&#12290;&#21734;&#65292;&#33258;&#21046;&#21654;&#21857;&#20063;&#27604;&#20197;&#21069;&#20219;&#20309;&#26102;&#20505;&#26356;&#22909;&#21917;&#20102;&#12290;&#30446;&#21069;&#65292;&#25105;&#20934;&#22791;&#20889;&#21478;&#19968;&#31687;&#20851;&#20110;&#20844;&#21496;&#22914;&#20309;&#20248;&#21270;&#36828;&#31243;&#24037;&#20316;&#30340;&#25991;&#31456;&#65288;&#25152;&#20197;&#35831;&#30830;&#20445;&#20320;&#21152;&#20837;&#25105;&#20204;&#30340;&#20250;&#21592;&#20197;&#25345;&#32493;&#20851;&#27880;——&#36825;&#26159;&#20813;&#36153;&#30340;&#65289;&#12290;&#20294;&#20170;&#22825;&#65292;&#25105;&#24819; <strong>&#20998;&#20139;&#19968;&#20123;&#20010;&#20154;&#22914;&#20309;&#20570;&#22909;&#36828;&#31243;&#24037;&#20316;&#30340;&#24314;&#35758;</strong>&#12290;&#19981;&#31649;&#20320;&#26159;&#20840;&#32844;&#36828;&#31243;&#24037;&#20316;&#32773;&#65292;&#25110;&#32773;&#26159;&#21487;&#20197;&#36873;&#25321;&#19968;&#21608;&#26576;&#20960;&#22825;&#22312;&#23478;&#24037;&#20316;&#30340;&#20154;&#65292;&#24076;&#26395;&#36825;&#31687;&#25991;&#31456;&#23545;&#20320;&#26377;&#29992;&#12290;&#30524;&#19979;&#65292;&#20320;&#38656;&#35201;&#26126;&#30333;&#65292;<strong>&#36828;&#31243;&#24037;&#20316;&#19981;&#26159;&#19975;&#33021;&#33647;</strong>&#12290;&#24403;&#28982;&#65292;&#31359;&#30528;&#30561;&#34915;&#28385;&#23627;&#23376;&#20081;&#36891;&#65292;&#21548;&#21548;&#21453;&#31038;&#20250;&#38899;&#20048;&#65292;&#21917;&#19968;&#22823;&#26479;&#21654;&#21857;&#30475;&#36215;&#26469;&#20284;&#20046;&#25402;&#23436;&#32654;&#30340;&#65292;&#20294;&#36825;&#19981;&#36866;&#21512;&#27599;&#20010;&#20154;&#12290;&#26377;&#30340;&#20154;&#38656;&#35201;&#21150;&#20844;&#23460;&#30340;&#31354;&#38388;&#12290;&#26377;&#30340;&#20154;&#38656;&#35201;&#21150;&#20844;&#23460;&#30340;&#31038;&#20250;&#20803;&#32032;&#12290;&#26377;&#30340;&#20154;&#38656;&#35201;&#20174;&#23478;&#37324;&#36208;&#20986;&#26469;&#12290;&#26377;&#30340;&#20154;&#22312;&#23478;&#37324;&#32570;&#20047;&#20445;&#25345;&#19987;&#27880;&#30340;&#33258;&#24459;&#12290;&#26377;&#30340;&#20154;&#22240;&#20026;&#22909;&#20960;&#24180;&#26410;&#32564;&#36864;&#31246;&#32780;&#24597;&#25919;&#24220;&#24037;&#20316;&#20154;&#21592;&#26469;&#20303;&#22788;&#25970;&#38376;&#12290;<strong>&#36828;&#31243;&#24037;&#20316;&#23601;&#22909;&#20687;&#19968;&#22359;&#32908;&#32905;&#65306;&#22914;&#26524;&#20320;&#38203;&#28860;&#24182;&#19988;&#20445;&#25345;&#23427;&#65292;&#37027;&#20040;&#23427;…
计算机实验室之树莓派:课程 3 OK03

虽然我们的操作系统除了做 课程 2:OK02 中的事情,还做不了别的任何事情,但我们已经学会了函数和格式有关的知识,并且我们现在可以更好更快地编写新特性了。Media

via https://linux.cn/article-10519-1.html
&#35745;&#31639;&#26426;&#23454;&#39564;&#23460;&#20043;&#26641;&#33683;&#27966;&#65306;&#35838;&#31243; 3 OK03

<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/225754zmxkmdok4dx83ybz.jpg">Media</a>OK03 &#35838;&#31243;&#22522;&#20110; OK02 &#35838;&#31243;&#26469;&#26500;&#24314;&#65292;&#23427;&#25945;&#20320;&#22312;&#27719;&#32534;&#20013;&#22914;&#20309;&#20351;&#29992;&#20989;&#25968;&#35753;&#20195;&#30721;&#21487;&#22797;&#29992;&#21644;&#21487;&#35835;&#24615;&#26356;&#22909;&#12290;&#20551;&#35774;&#20320;&#24050;&#32463;&#26377;&#20102; <a href="https://linux.cn/article-10478-1.html">&#35838;&#31243; 2&#65306;OK02</a> &#30340;&#25805;&#20316;&#31995;&#32479;&#65292;&#25105;&#20204;&#23558;&#20197;&#23427;&#20026;&#22522;&#30784;&#12290;1&#12289;&#21487;&#22797;&#29992;&#30340;&#20195;&#30721;&#21040;&#30446;&#21069;&#20026;&#27490;&#65292;&#25105;&#20204;&#25152;&#20889;&#30340;&#20195;&#30721;&#37117;&#26159;&#20197;&#25105;&#20204;&#24076;&#26395;&#21457;&#29983;&#30340;&#20107;&#20026;&#39034;&#24207;&#26469;&#36755;&#20837;&#30340;&#12290;&#23545;&#20110;&#38750;&#24120;&#23567;&#30340;&#31243;&#24207;&#26469;&#35828;&#65292;&#36825;&#31181;&#20570;&#27861;&#24456;&#22909;&#65292;&#20294;&#26159;&#22914;&#26524;&#25105;&#20204;&#20197;&#36825;&#31181;&#26041;&#24335;&#21435;&#20889;&#19968;&#20010;&#23436;&#25972;&#30340;&#31995;&#32479;&#65292;&#25152;&#20889;&#30340;&#20195;&#30721;&#21487;&#35835;&#24615;&#23558;&#38750;&#24120;&#24046;&#12290;&#25105;&#20204;&#24212;&#35813;&#21435;&#20351;&#29992;&#20989;&#25968;&#12290;&#19968;&#20010;&#20989;&#25968;&#26159;&#19968;&#27573;&#21487;&#22797;&#29992;&#30340;&#20195;&#30721;&#29255;&#26029;&#65292;&#21487;&#20197;&#29992;&#20110;&#21435;&#35745;&#31639;&#26576;&#20123;&#31572;&#26696;&#65292;&#25110;&#25191;&#34892;&#26576;&#20123;&#21160;&#20316;&#12290;&#20320;&#20063;&#21487;&#20197;&#31216;&#23427;&#20204;&#20026;&#36807;&#31243;procedure&#12289;&#20363;&#31243;routine&#25110;&#23376;&#20363;&#31243;subroutine&#12290;&#34429;&#28982;&#23427;&#20204;&#37117;&#26159;&#19981;&#21516;&#30340;&#65292;&#20294;&#20154;&#20204;&#20960;&#20046;&#37117;&#27809;&#26377;&#27491;&#30830;&#22320;&#20351;&#29992;&#36825;&#20010;&#26415;&#35821;&#12290;&#20320;&#24212;&#35813;&#22312;&#25968;&#23398;&#19978;&#36935;&#21040;&#20102;&#20989;&#25968;&#30340;&#27010;&#24565;&#12290;&#20363;&#22914;&#65292;&#20313;&#24358;&#20989;&#25968;&#24212;&#29992;&#20110;&#19968;&#20010;&#32473;&#23450;&#30340;&#25968;&#26102;&#65292;&#20250;&#24471;&#21040;&#20171;&#20110; -1 &#21040; 1 &#20043;&#38388;&#30340;&#21478;&#19968;&#20010;&#25968;&#65292;&#36825;&#20010;&#25968;&#23601;&#26159;&#35282;&#30340;&#20313;&#24358;&#12290;&#19968;&#33324;&#25105;&#20204;&#20889;&#25104; cos(x) &#26469;&#34920;&#31034;&#24212;&#29992;&#21040;&#19968;&#20010;&#20540; x &#19978;&#30340;&#20313;&#24358;&#20989;&#25968;&#12290;&#22312;&#20195;&#30721;&#20013;&#65292;&#20989;&#25968;&#21487;&#20197;&#26377;&#22810;&#20010;&#36755;&#20837;&#65288;&#20063;&#21487;&#20197;&#27809;&#26377;&#36755;&#20837;&#65289;&#65292;&#28982;&#21518;&#20989;&#25968;&#32473;&#20986;&#22810;&#20010;&#36755;&#20986;&#65288;&#20063;&#21487;&#20197;&#27809;&#26377;&#36755;&#20986;&#65289;&#65292;&#24182;&#21487;&#33021;&#23548;&#33268;&#21103;&#20316;&#29992;&#12290;&#20363;&#22914;&#19968;&#20010;&#20989;&#25968;&#21487;&#20197;&#22312;&#19968;&#20010;&#25991;&#20214;&#31995;&#32479;&#19978;&#21019;&#24314;&#19968;&#20010;&#25991;&#20214;&#65292;&#31532;&#19968;&#20010;&#36755;&#20837;&#26159;&#23427;&#30340;&#21517;&#23383;&#65292;&#31532;&#20108;&#20010;&#36755;&#20837;&#26159;&#25991;&#20214;&#30340;&#38271;&#24230;&#12290;<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/225958r9kfp7hot9ofc08c.png">Function as black boxes</a>&#20989;&#25968;&#21487;&#20197;&#35748;&#20026;&#26159;&#19968;&#20010;“&#40657;&#21283;&#23376;”&#12290;&#25105;&#20204;&#32473;&#23427;&#36755;&#20837;&#652…
Asciinema:在云端记录并分享你的终端会话

asciinema 是一个自由开源的用于录制终端会话并将它们分享到网络上的解决方案。Media

via https://linux.cn/article-10520-1.html
Asciinema&#65306;&#22312;&#20113;&#31471;&#35760;&#24405;&#24182;&#20998;&#20139;&#20320;&#30340;&#32456;&#31471;&#20250;&#35805;

<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/08/233016gh6peg96l0lp2js5.jpg">Media</a>&#36825;&#20010;&#20247;&#25152;&#21608;&#30693;&#30340;&#35805;&#39064;&#25105;&#20204;&#26089;&#24050;&#32463;&#20889;&#36807;&#20102;&#36275;&#22815;&#22810;&#30340;&#25991;&#31456;&#12290;&#21363;&#20351;&#36825;&#26679;&#65292;&#25105;&#20204;&#20170;&#22825;&#20063;&#35201;&#21435;&#35752;&#35770;&#30456;&#21516;&#30340;&#35805;&#39064;&#12290;&#20854;&#20182;&#30340;&#24037;&#20855;&#37117;&#26159;&#22312;&#26412;&#22320;&#36816;&#34892;&#30340;&#65292;&#20294;&#26159; Asciinema &#21487;&#20197;&#20197;&#30456;&#21516;&#30340;&#26041;&#24335;&#22312;&#26412;&#22320;&#21644; Web &#31471;&#36816;&#34892;&#12290;&#25105;&#30340;&#24847;&#24605;&#26159;&#25105;&#20204;&#21487;&#20197;&#22312; Web &#19978;&#20998;&#20139;&#36825;&#20010;&#24405;&#20687;&#12290;&#40664;&#35748;&#24773;&#20917;&#19979;&#65292;&#27599;&#20010;&#20154;&#37117;&#26356;&#24895;&#24847;&#20351;&#29992; history &#21629;&#20196;&#26469;&#22238;&#30475;&#12289;&#35843;&#29992;&#20043;&#21069;&#22312;&#32456;&#31471;&#20869;&#36755;&#20837;&#30340;&#21629;&#20196;&#12290;&#19981;&#36807;&#65292;&#19981;&#34892;&#30340;&#26159;&#65292;&#36825;&#20010;&#21629;&#20196;&#21482;&#23637;&#31034;&#20102;&#25105;&#20204;&#36816;&#34892;&#30340;&#21629;&#20196;&#21364;&#27809;&#26377;&#23637;&#31034;&#36825;&#20123;&#21629;&#20196;&#19978;&#27425;&#36816;&#34892;&#26102;&#30340;&#36755;&#20986;&#12290;&#22312; Linux &#19979;&#26377;&#24456;&#22810;&#30340;&#32452;&#20214;&#26469;&#35760;&#24405;&#32456;&#31471;&#20250;&#35805;&#27963;&#21160;&#12290;&#22312;&#36807;&#21435;&#65292;&#25105;&#20204;&#20063;&#20889;&#20102;&#19968;&#20123;&#32452;&#20214;&#65292;&#19981;&#36807;&#20170;&#22825;&#25105;&#20204;&#20381;&#28982;&#35201;&#35752;&#35770;&#36825;&#21516;&#19968;&#31867;&#24515;&#30340;&#24037;&#20855;&#12290;&#22914;&#26524;&#20320;&#24819;&#35201;&#20351;&#29992;&#20854;&#20182;&#24037;&#20855;&#26469;&#35760;&#24405;&#20320;&#30340; Linux &#32456;&#31471;&#20250;&#35805;&#27963;&#21160;&#65292;&#20320;&#21487;&#20197;&#35797;&#35797; <a href="https://www.2daygeek.com/script-command-record-save-your-terminal-session-activity-linux/">Script &#21629;&#20196;</a>&#12289;<a href="https://www.2daygeek.com/terminalizer-a-tool-to-record-your-terminal-and-generate-animated-gif-images/">Terminalizer &#24037;&#20855;</a> &#21644; <a href="https://www.2daygeek.com/Asciinema-record-your-terminal-sessions-as-svg-animations-in-linux/">Asciinema &#24037;&#20855;</a>&#12290;&#19981;&#36807;&#22914;&#26524;&#20320;&#24819;&#35201;&#25214;&#19968;&#20010; <a href="https://www.2daygeek.com/category/gif-recorder/">GIF &#24405;&#21046;&#24037;&#20855;</a>&#65292;&#21487;&#20197;&#35797;&#35797; <a href="https://www.2daygeek.com/gifine-create-animated-gif-vedio-recorder-linux-mint-debian-ubuntu/">Gifine</a>&#12289;<a href="https://www.2daygeek.com/kgif-create-animated-gif-file-active-window-screen-recorder-capture-arch-linux-mint-fedora-ubuntu-debian-opensuse-centos/">Kgif</a> &#21644; <a href="https://www.2daygeek.com/peek-create-animated-gif-screen-recorder-capture-arch-linux-mint-fedora-ubuntu/">Peek</a>&#12290;&#20160;&#20040;&#26159; Asciinemaasciinema &#26159;&#19968;&#20010;&#33258;&#30001;&#24320;&#28304;&#30340;&#29992;&#20110;&#24405;&#21046;&#32456;&#31471;&#20250;&#35805;&#24182;&#23558;&#23427;&#20204;&#20998;&#20139;&#21040;&#32593;&#32476;&#19978;&#30340;&#35299;&#20915;&#26041;&#26696;&#12290;&#24403;&#20320;&#22312;&#20320;&#30340;&#32456;&#31471;&#20869;&#36816;&#34892; asciinema rec &#26469;&#21551;&#21160;&#24405;&#20687;&#26102;&#65292;&#20320;&#36755;&#20837;&#21629;&#20196;&#30340;&#26102;&#20505;&#65292;&#32456;&#31471;&#20869;&#30340;&#25152;&#26377;&#36755;&#20986;&#37117;&#20250;&#34987;&#25235;&#21462;&#12290;&#244…
Go 编程语言的简单介绍

Go 有 C 风格的语法(没有预处理器)、垃圾回收机制,而且类似它在贝尔实验室里被开发出来的前辈们Media

via https://linux.cn/article-10521-1.html
Go &#32534;&#31243;&#35821;&#35328;&#30340;&#31616;&#21333;&#20171;&#32461;

<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/000738div64l4tidkdv6vj.png">Media</a>&#65288;&#20197;&#19979;&#20869;&#23481;&#26159;&#25105;&#30340;&#30805;&#22763;&#35770;&#25991;&#30340;&#25688;&#24405;&#65292;&#20960;&#20046;&#26159;&#25972;&#20010; 2.1 &#31456;&#33410;&#65292;&#21521;&#20855;&#26377; CS &#32972;&#26223;&#30340;&#20154;&#24555;&#36895;&#20171;&#32461; Go&#65289;Go &#26159;&#19968;&#38376;&#29992;&#20110;&#24182;&#21457;&#32534;&#31243;&#30340;&#21629;&#20196;&#24335;&#32534;&#31243;&#35821;&#35328;&#65292;&#23427;&#20027;&#35201;&#30001;&#21019;&#36896;&#32773; Google &#36827;&#34892;&#24320;&#21457;&#65292;&#26368;&#21021;&#20027;&#35201;&#30001; Robert Griesemer&#12289;Rob Pike &#21644; Ken Thompson &#24320;&#21457;&#12290;&#36825;&#38376;&#35821;&#35328;&#30340;&#35774;&#35745;&#36215;&#22987;&#20110; 2007 &#24180;&#65292;&#24182;&#22312; 2009 &#24180;&#25512;&#20986;&#26368;&#21021;&#29256;&#26412;&#65307;&#32780;&#31532;&#19968;&#20010;&#31283;&#23450;&#29256;&#26412;&#26159; 2012 &#24180;&#21457;&#24067;&#30340; 1.0 &#29256;&#26412;&#12290;<a href="#fn1">1</a>Go &#26377; C &#39118;&#26684;&#30340;&#35821;&#27861;&#65288;&#27809;&#26377;&#39044;&#22788;&#29702;&#22120;&#65289;&#12289;&#22403;&#22334;&#22238;&#25910;&#26426;&#21046;&#65292;&#32780;&#19988;&#31867;&#20284;&#23427;&#22312;&#36125;&#23572;&#23454;&#39564;&#23460;&#37324;&#34987;&#24320;&#21457;&#20986;&#26469;&#30340;&#21069;&#36744;&#20204;&#65306;Newsqueak&#65288;Rob Pike&#65289;&#12289;Alef&#65288;Phil Winterbottom&#65289;&#21644; Inferno&#65288;Pike&#12289;Ritchie &#31561;&#20154;&#65289;&#65292;&#20351;&#29992;&#25152;&#35859;&#30340; Go &#21327;&#31243;goroutines&#21644;&#20449;&#36947;channels&#65288;&#19968;&#31181;&#22522;&#20110; Hoare &#30340;“&#36890;&#20449;&#39034;&#24207;&#36827;&#31243;”&#29702;&#35770;&#30340;&#21327;&#31243;&#65289;&#25552;&#20379;&#20869;&#24314;&#30340;&#24182;&#21457;&#25903;&#25345;&#12290;<a href="#fn2">2</a>Go &#31243;&#24207;&#20197;&#21253;&#30340;&#24418;&#24335;&#32452;&#32455;&#12290;&#21253;&#26412;&#36136;&#26159;&#19968;&#20010;&#21253;&#21547; Go &#25991;&#20214;&#30340;&#25991;&#20214;&#22841;&#12290;&#21253;&#20869;&#30340;&#25152;&#26377;&#25991;&#20214;&#20849;&#20139;&#30456;&#21516;&#30340;&#21629;&#21517;&#31354;&#38388;&#65292;&#32780;&#21253;&#20869;&#30340;&#31526;&#21495;&#26377;&#20004;&#31181;&#21487;&#35265;&#24615;&#65306;&#20197;&#22823;&#20889;&#23383;&#27597;&#24320;&#22836;&#30340;&#31526;&#21495;&#23545;&#20110;&#20854;&#20182;&#21253;&#26159;&#21487;&#35265;&#65292;&#32780;&#20854;&#20182;&#31526;&#21495;&#21017;&#26159;&#35813;&#21253;&#31169;&#26377;&#30340;&#65306;<pre class="prettyprint linenums">func PublicFunction() { fmt.Println("Hello world")}func privateFunction() { fmt.Println("Hello package")}</pre>&#31867;&#22411;Go &#26377;&#19968;&#20010;&#30456;&#24403;&#31616;&#21333;&#30340;&#31867;&#22411;&#31995;&#32479;&#65306;&#27809;&#26377;&#23376;&#31867;&#22411;&#65288;&#20294;&#26377;&#31867;&#22411;&#36716;&#25442;&#65289;&#65292;&#27809;&#26377;&#27867;&#22411;&#65292;&#27809;&#26377;&#22810;&#24577;&#20989;&#25968;&#65292;&#21482;&#26377;&#19968;&#20123;&#22522;&#26412;&#30340;&#31867;&#22411;&#65306;&#22522;&#26412;&#31867;&#22411;&#65306;int&#12289;int64&#12289;int8&#12289;uint&#12289;float32&#12289;float64 &#31561;structinterface&#65306;&#19968;&#32452;&#26041;&#27861;&#30340;&#38598;&#21512;map[K, V]&#65306;&#19968;&#20010;&#20174;&#38190;&#31867;&#22411;&#21040;&#20540;&#31867;&#22411;&#30340;&#26144;&#23556;[number]Type&#65306;&#19968;&#20123; Type &#31867;&#22411;&#30340;&#20803;&#32032;&#32452;&#25104;&#30340;&#25968;&#32452;[]Type&#65306;&#26576;&#31181;&#31867;&#22411;&#30340;&#20999;&#29255;&#65288;&#20855;&#26377;&#38271;&#24230;&#21644;&#21151;&#33021;&#30340;&#25968;&#32452;&#30340;&#25351;&#38024;&#65289;chan Type&#65306;&#19968;&#20010;&#32447;&#…
Python Web 应用程序 Tornado 框架简介

在比较 Python 框架的系列文章的第三部分中,我们来了解 Tornado,它是为处理异步进程而构建的。Media

via https://linux.cn/article-10522-1.html
Python Web &#24212;&#29992;&#31243;&#24207; Tornado &#26694;&#26550;&#31616;&#20171;

&#22312;&#27604;&#36739; Python &#26694;&#26550;&#30340;&#31995;&#21015;&#25991;&#31456;&#30340;&#31532;&#19977;&#37096;&#20998;&#20013;&#65292;&#25105;&#20204;&#26469;&#20102;&#35299; Tornado&#65292;&#23427;&#26159;&#20026;&#22788;&#29702;&#24322;&#27493;&#36827;&#31243;&#32780;&#26500;&#24314;&#30340;&#12290;<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/180056b6yyzfwvvaanavrw.jpg">Media</a>&#22312;&#36825;&#20010;&#30001;&#22235;&#37096;&#20998;&#32452;&#25104;&#30340;&#31995;&#21015;&#25991;&#31456;&#30340;&#21069;&#20004;&#31687;&#20013;&#65292;&#25105;&#20204;&#20171;&#32461;&#20102; <a href="https://opensource.com/article/18/5/pyramid-framework">Pyramid</a> &#21644; <a href="https://opensource.com/article/18/4/flask">Flask</a> Web &#26694;&#26550;&#12290;&#25105;&#20204;&#24050;&#32463;&#26500;&#24314;&#20102;&#20004;&#27425;&#30456;&#21516;&#30340;&#24212;&#29992;&#31243;&#24207;&#65292;&#30475;&#21040;&#20102;&#19968;&#20010;&#23436;&#25972;&#30340; DIY &#26694;&#26550;&#21644;&#21253;&#21547;&#20102;&#26356;&#22810;&#21151;&#33021;&#30340;&#26694;&#26550;&#20043;&#38388;&#30340;&#24322;&#21516;&#12290;&#29616;&#22312;&#35753;&#25105;&#20204;&#26469;&#30475;&#30475;&#21478;&#19968;&#20010;&#31245;&#24494;&#19981;&#21516;&#30340;&#36873;&#25321;&#65306;<a href="https://tornado.readthedocs.io/en/stable/">Tornado &#26694;&#26550;</a>&#12290;Tornado &#22312;&#24456;&#22823;&#31243;&#24230;&#19978;&#19982; Flask &#19968;&#26679;&#31616;&#21333;&#65292;&#20294;&#26377;&#19968;&#20010;&#20027;&#35201;&#21306;&#21035;&#65306;Tornado &#26159;&#19987;&#38376;&#20026;&#22788;&#29702;&#24322;&#27493;&#36827;&#31243;&#32780;&#26500;&#24314;&#30340;&#12290;&#22312;&#25105;&#20204;&#26412;&#31995;&#21015;&#25152;&#26500;&#24314;&#30340;&#24212;&#29992;&#31243;&#24207;&#20013;&#65292;&#36825;&#31181;&#29305;&#27530;&#30340;&#37233;&#26009;&#65288;LCTT &#35793;&#27880;&#65306;&#36825;&#37324;&#24847;&#24605;&#26159; Tornado &#30340;&#24322;&#27493;&#21151;&#33021;&#65289;&#22312;&#25105;&#20204;&#26500;&#24314;&#30340; app &#20013;&#24182;&#19981;&#26159;&#38750;&#24120;&#26377;&#29992;&#65292;&#20294;&#25105;&#20204;&#23558;&#30475;&#21040;&#22312;&#21738;&#37324;&#21487;&#20197;&#20351;&#29992;&#23427;&#65292;&#20197;&#21450;&#23427;&#22312;&#26356;&#19968;&#33324;&#30340;&#24773;&#20917;&#19979;&#26159;&#22914;&#20309;&#24037;&#20316;&#30340;&#12290;&#35753;&#25105;&#20204;&#32487;&#32493;&#21069;&#20004;&#31687;&#25991;&#31456;&#20013;&#27169;&#24335;&#65292;&#39318;&#20808;&#20174;&#22788;&#29702;&#35774;&#32622;&#21644;&#37197;&#32622;&#24320;&#22987;&#12290;Tornado &#21551;&#21160;&#21644;&#37197;&#32622;&#22914;&#26524;&#20320;&#19968;&#30452;&#20851;&#27880;&#36825;&#20010;&#31995;&#21015;&#65292;&#37027;&#20040;&#31532;&#19968;&#27493;&#24212;&#35813;&#23545;&#20320;&#26469;&#35828;&#20064;&#20197;&#20026;&#24120;&#12290;<pre class="prettyprint linenums">$ mkdir tornado_todo$ cd tornado_todo$ pipenv install --python 3.6$ pipenv shell(tornado-someHash) $ pipenv install tornado</pre>&#21019;&#24314;&#19968;&#20010; setup.py &#25991;&#20214;&#26469;&#23433;&#35013;&#25105;&#20204;&#30340;&#24212;&#29992;&#31243;&#24207;&#30456;&#20851;&#30340;&#19996;&#35199;&#65306;<pre class="prettyprint linenums">(tornado-someHash) $ touch setup.py# setup.pyfrom setuptools import setup, find_packagesrequires = [ 'tornado', 'tornado-sqlalchemy', 'psycopg2',]setup( name='tornado_todo', version='0.0', description='A To-Do List built with Tornado', author='<Your name>', author_email='<Your email>', keywords='web tornado', packages=find_packages(), install_requires=requires, entry_points={ 'console_scripts': [ 'serve_app = todo:main', ], },)</pre>&#22240;&#20026; Tornado &#19981;&#38656;&#35201;&#20219;&#20309;&#22806;&#37096;&#37197;&#32622;&#65292;&#25152;&#20197;&#25105;&#20204;&#21487;&#20197;&#30452;&#25509;&#32534;&#20889; Python &#201…
Linux 上最好的五款音乐播放器

Jack Wallen 盘点他最爱的五款 Linux 音乐播放器。Media

via https://linux.cn/article-10523-1.html
Linux &#19978;&#26368;&#22909;&#30340;&#20116;&#27454;&#38899;&#20048;&#25773;&#25918;&#22120;

Jack Wallen &#30424;&#28857;&#20182;&#26368;&#29233;&#30340;&#20116;&#27454; Linux &#38899;&#20048;&#25773;&#25918;&#22120;&#12290;<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201902/09/232031rtjn0tiwwjxjjjgg.jpg">Media</a>&#19981;&#31649;&#20320;&#20570;&#20160;&#20040;&#65292;&#20320;&#37117;&#26377;&#26102;&#20250;&#26469;&#19968;&#28857;&#32972;&#26223;&#38899;&#20048;&#12290;&#19981;&#31649;&#20320;&#26159;&#24320;&#21457;&#12289;&#36816;&#32500;&#25110;&#26159;&#19968;&#20010;&#20856;&#22411;&#30340;&#30005;&#33041;&#29992;&#25143;&#65292;&#20139;&#21463;&#32654;&#22937;&#30340;&#38899;&#20048;&#37117;&#21487;&#33021;&#26159;&#20320;&#22312;&#30005;&#33041;&#19978;&#26368;&#24819;&#20570;&#30340;&#20107;&#24773;&#20043;&#19968;&#12290;&#21516;&#26102;&#38543;&#30528;&#21363;&#23558;&#21040;&#26469;&#30340;&#20551;&#26399;&#65292;&#20320;&#21487;&#33021;&#25910;&#21040;&#19968;&#20123;&#33021;&#35753;&#20320;&#20080;&#20960;&#39318;&#26032;&#27468;&#30340;&#31036;&#29289;&#21345;&#12290;&#22914;&#26524;&#20320;&#25152;&#36873;&#30340;&#38899;&#20048;&#26159;&#25968;&#23383;&#24418;&#24335;&#65288;&#25105;&#30340;&#24688;&#22909;&#26159;&#21809;&#29255;&#24418;&#24335;&#65289;&#32780;&#19988;&#20320;&#30340;&#24179;&#21488;&#26159; Linux &#30340;&#35805;&#65292;&#20320;&#20250;&#24819;&#35201;&#19968;&#20010;&#22909;&#30340;&#22270;&#24418;&#29992;&#25143;&#30028;&#38754;&#25773;&#25918;&#22120;&#26469;&#20139;&#21463;&#38899;&#20048;&#12290;&#24184;&#36816;&#30340;&#26159;&#65292;Linux &#19981;&#32570;&#22909;&#30340;&#25968;&#23383;&#38899;&#20048;&#25773;&#25918;&#22120;&#12290;&#20107;&#23454;&#19978;&#65292;Linux &#19978;&#26377;&#19981;&#23569;&#25773;&#25918;&#22120;&#65292;&#22823;&#37096;&#20998;&#26159;&#24320;&#28304;&#24182;&#19988;&#21487;&#20197;&#20813;&#36153;&#33719;&#24471;&#30340;&#12290;&#35753;&#25105;&#20204;&#30475;&#30475;&#20854;&#20013;&#30340;&#20960;&#27454;&#65292;&#30475;&#21738;&#20010;&#33021;&#28385;&#36275;&#20320;&#30340;&#38656;&#35201;&#12290;Clementine&#25105;&#24819;&#20174;&#25105;&#29992;&#26469;&#35768;&#22810;&#24180;&#30340;&#40664;&#35748;&#36873;&#39033;&#30340;&#25773;&#25918;&#22120;&#24320;&#22987;&#12290;<a href="https://www.clementine-player.org/">Clementine</a> &#21487;&#33021;&#26159;&#26368;&#22909;&#30340;&#24179;&#34913;&#20102;&#26131;&#29992;&#24615;&#19982;&#28789;&#27963;&#24615;&#30340;&#25773;&#25918;&#22120;&#12290;Clementine &#26159;&#26032;&#20572;&#25670;&#30340; <a href="https://en.wikipedia.org/wiki/Amarok_(software)">Amarok</a> &#38899;&#20048;&#25773;&#25918;&#22120;&#30340;&#22797;&#21051;&#65292;&#20294;&#23427;&#19981;&#20165;&#38480;&#20110; Linux&#65307; Clementine &#22312; Mac OS &#21644; Windows &#24179;&#21488;&#19978;&#20063;&#21487;&#20197;&#33719;&#24471;&#12290;&#23427;&#30340;&#19968;&#31995;&#21015;&#29305;&#24615;&#21313;&#20998;&#24778;&#33395;&#65292;&#21253;&#25324;&#65306;&#20839;&#24314;&#30340;&#22343;&#34913;&#22120;&#21487;&#23450;&#21046;&#30340;&#30028;&#38754;&#65288;&#23558;&#29616;&#22312;&#30340;&#19987;&#36753;&#23553;&#38754;&#26174;&#31034;&#25104;&#32972;&#26223;&#65292;&#35265;&#22270;&#19968;&#65289;&#25773;&#25918;&#26412;&#22320;&#38899;&#20048;&#25110;&#32773;&#20174; Spotify&#12289;Last.fm &#31561;&#25773;&#25918;&#38899;&#20048;&#20415;&#20110;&#24211;&#23548;&#33322;&#30340;&#20391;&#36793;&#26639;&#20839;&#24314;&#30340;&#38899;&#39057;&#36716;&#30721;&#65288;&#36716;&#25104; MP3&#12289;OGG&#12289;Flac &#31561;&#65289;&#36890;&#36807; <a href="https://play.google.com/store/apps/details?id=de.qspool.clementineremote">&#23433;&#21331;&#24212;&#29992;</a> &#36828;&#31243;&#25511;&#21046;&#20415;&#21033;&#30340;&#25628;&#32034;&#21151;&#33021;&#36873;&#39033;&#21345;&#24335;&#25773;&#25918;&#21015;&#34920;&#31616;&#21333;&#21019;&#24314;&#24120;&#35268;&#21644;&#26234;&#33021;&#21270;&#30340;&#25773;&#25918;&#…
极客漫画:增强现实(AR) 2.0

增强现实技术(Augmented Reality),简称 AR,是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D 模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。Media

via https://linux.cn/article-10524-1.html