将静态网站托管至阿里云OSS

写在前面的话: 因为囊中羞涩,当时只给域名101kpa.com买了SSL,另一个已备案的域名wangjingye.com便闲置了很久,一直觉得可惜。最近偶然发现OSS静态网站托管功能可作为此域名的寄存点,就暂时用于个人介绍了。


静态网站通过阿里云的静态网站托管功能托管到OSS的存储空间(Bucket),并使用Bucket访问该网站的域名。
注:静态和动态的区别在于程序是否在服务器端运行。在服务器端运行的程序、网页、组件,属于动态网页,它们会随不同客户、不同时间,返回不同的网页, ASP、PHP、JSP、ASPnet、CGI等。在客户端运行的程序、网页、插件和组件属于静态网页,如 html页、Flash、JavaScript等等。

使用方法:

1.配置静态网站托管时,需要指定网站默认主页和默认404页:
—默认主页是通过浏览器访问静态网站域名,OSS返回网站主页。默认主页指定的文件必须是Bucket允许匿名访问的文件在根目录下。如果子目录主页也打开,这个文件也应该存在于子目录下。
—默认404页是通过浏览器访问的Bucket当内部文件出现404错误时,OSS返回错误页面。默认404页指定的文件必须是Bucket允许匿名访问的文件在根目录下。
2.默认主页或默认404页中指定文件的读写权可以通过ACL设置为public-read,确保该文件允许匿名访问。
3.静态网站配置完成后,如果使用Bucket当默认域名访问静态网站时,静态网站将以文件的形式下载到本地。要确保访问静态网站是显示行为,必须是Bucket绑定自定义域名,并通过自定义域名访问静态网站。

注意事项:
因为用的是OSS托管静态网站,让不带www的和带www的均能访问,需要做以下设置(我试了很久才解决,官方应该给出解释):
1、OSS的backet绑定两个域名,一个不带www,一个带;
2、不带www打开根域名CDN;
3、CNAME解析@到CDN地址;
4、CNAME解析www到Bucket默认域名。(注意:若www选择隐性/显性进行分析URL,虽然可以跳转Bucket默认域名可以显示网页,但会同时提示下载index.html)
5、如果设置后浏览仍有问题,可以先清除浏览器缓存,再排除其他问题。
6、CDN的私有Bucket回源功能和OSS的静态网站托管功能的默认首页功能冲突,不用开启。
7、用于托管的OSS的Bucket可不开启。

Woman with a Parasol

喜欢!“起风了”的感觉……


Woman with a Parasol

Claude Monet (French, 1840 – 1926 ), Woman with a Parasol – Madame Monet and Her Son, 1875, oil on canvas, Collection of Mr. and Mrs. Paul Mellon

注:此画作于1875年,画中的人物是莫奈的第一任妻子卡米尔和他们的儿子。1870年6月,卡米尔与莫奈结婚。同年,普法战争爆发,导致画家这之后的生活更加潦倒,期间,莫奈最爱以卡米尔为模特画画,此画即是这段时间创作的。

皆过眼云烟——古文今读

Don Quixote Tilting at a Windmill, painting by William Stewart Watson (Museum: National Galleries of Scotland)

《师说》
——唐代·韩愈
古之学者必有师。师者,所以传道受业解惑也。人非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。生乎吾前,其闻道也固先乎吾,吾从而师之;生乎吾后,其闻道也亦先乎吾,吾从而师之。吾师道也,夫庸知其年之先后生于吾乎?是故无贵无贱,无长无少,道之所存,师之所存也。嗟乎!师道之不传也久矣!欲人之无惑也难矣!古之圣人,其出人也远矣,犹且从师而问焉;今之众人,其下圣人也亦远矣,而耻学于师。是故圣益圣,愚益愚。圣人之所以为圣,愚人之所以为愚,其皆出于此乎?爱其子,择师而教之;于其身也,则耻师焉,惑矣。彼童子之师,授之书而习其句读者,非吾所谓传其道解其惑者也。句读之不知,惑之不解,或师焉,或不焉,小学而大遗,吾未见其明也。巫医乐师百工之人,不耻相师。士大夫之族,曰师曰弟子云者,则群聚而笑之。问之,则曰:“彼与彼年相若也,道相似也,位卑则足羞,官盛则近谀。”呜呼!师道之不复,可知矣。巫医乐师百工之人,君子不齿,今其智乃反不能及,其可怪也欤!圣人无常师。孔子师郯子、苌弘、师襄、老聃。郯子之徒,其贤不及孔子。孔子曰:三人行,则必有我师。是故弟子不必不如师,师不必贤于弟子,闻道有先后,术业有专攻,如是而已。李氏子蟠,年十七,好古文,六艺经传皆通习之,不拘于时,学于余。余嘉其能行古道,作《师说》以贻之。

《马说》
——唐代·韩愈
世有伯乐,然后有千里马。千里马常有,而伯乐不常有。故虽有名马,祗辱于奴隶人之手,骈死于槽枥之间,不以千里称也。(祗 同:衹)马之千里者,一食或尽粟一石。食马者不知其能千里而食也。是马也,虽有千里之能,食不饱,力不足,才美不外见,且欲与常马等不可得,安求其能千里也?策之不以其道,食之不能尽其材,鸣之而不能通其意,执策而临之,曰:“天下无马!”呜呼!其真无马邪?其真不知马也!

《祭十二郎文》
——唐代·韩愈
年、月、日,季父愈闻汝丧之七日,乃能衔哀致诚,使建中远具时羞之奠,告汝十二郎之灵:呜呼!吾少孤,及长,不省所怙,惟兄嫂是依。中年兄殁南方,吾与汝俱幼,从嫂归葬河阳。既又与汝就食江南,零丁孤苦,未尝一日相离也。吾上有三兄,皆不幸早世。承先人后者,在孙惟汝,在子惟吾。两世一身,形单影只。嫂尝抚汝指吾而言曰:“韩氏两世,惟此而已!”汝时尤小,当不复记忆;吾时虽能记忆,亦未知其言之悲也。吾年十九,始来京城。其后四年,而归视汝。又四年,吾往河阳省坟墓,遇汝从嫂丧来葬。又二年,吾佐董丞相于汴州,汝来省吾,止一岁,请归取其孥。明年,丞相薨,吾去汴州,汝不果来。是年,吾佐戎徐州,使取汝者始行,吾又罢去,汝又不果来。吾念汝从于东,东亦客也,不可以久;图久远者,莫如西归,将成家而致汝。呜呼!孰谓汝遽去吾而殁乎!吾与汝俱少年,以为虽暂相别,终当久相与处。故舍汝而旅食京师,以求斗斛之禄。诚知其如此,虽万乘之公相,吾不以一日辍汝而就也。去年,孟东野往,吾书与汝曰:“吾年未四十,而视茫茫,而发苍苍,而齿牙动摇。念诸父与诸兄,皆康强而早世,如吾之衰者,其能久存乎?吾不可去,汝不肯来,恐旦暮死,而汝抱无涯之戚也。”孰谓少者殁而长者存,强者夭而病者全乎?呜呼!其信然邪?其梦邪?其传之非其真邪?信也,吾兄之盛德而夭其嗣乎?汝之纯明而不克蒙其泽乎?少者强者而夭殁,长者衰者而存全乎?未可以为信也!梦也,传之非其真也,东野之书,耿兰之报,何为而在吾侧也?呜呼!其信然矣!吾兄之盛德而夭其嗣矣,汝之纯明宜业其家者,不克蒙其泽矣。所谓天者诚难测,而神者诚难明矣。所谓理者不可推,而寿者不可知矣。虽然,吾自今年来,苍苍者或化而为白矣;动摇者或脱而落矣,毛血日益衰,志气日益微,几何不从汝而死也?死而有知,其几何离?其无知,悲不几时,而不悲者无穷期矣。汝之子始十岁,吾之子始五岁,少而强者不可保,如此孩提者,又可冀其成立邪?呜呼哀哉!呜呼哀哉!汝去年书云:“比得软脚病,往往而剧。”吾曰:“是疾也,江南之人,常常有之。”未始以为忧也。呜呼, 其竟以此而殒其生乎?抑别有疾而至斯极乎?汝之书,六月十七日也;东野云,汝殁以六月二日;耿兰之报无月日。盖东野之使者不知问家人以月日,如耿兰之报,不知当言月日。东野与吾书,乃问使者,使者妄称以应之乎。其然乎?其不然乎?今吾使建中祭汝,吊汝之孤与汝之乳母。彼有食可守,以待终丧,则待终丧而取以来;如不能守以终丧,则遂取以来。其余奴婢,并令守汝丧。吾力能改葬,终葬汝于先人之兆,然后惟其所愿。呜呼!汝病吾不知时,汝殁吾不知日,生不能相养以共居,殁不能抚汝以尽哀,敛不凭其棺,窆不临其穴。吾行负神明,而使汝夭。不孝不慈,而不得与汝相养以生,相守以死。一在天之涯,一在地之角,生而影不与吾形相依,死而魂不与吾梦相接,吾实为之,其又何尤!彼苍者天,曷其有极!自今已往,吾其无意于人世矣!当求数顷之田于伊、颍之上,以待余年。教吾子与汝子,幸其成;长吾女与汝女,待其嫁,如此而已。呜呼,言有穷而情不可终,汝其知也邪?其不知也邪?呜呼哀哉!尚飨!

推荐Latex写数学公式

发现直接用Latex写数学公式很舒服,常用的先简略如下:
换行:\\
空格:a\ b
小于等于:\le
大于等于:\ge
分数:\frac{a}{b}
大型分数(无嵌套):dfrac{a}{b}
大范围括号:\left ( \frac{\pi}{2} \right )^n
开根号:\sqrt{\pi}
上标、撇号:a^{\prime}
下标:f_y
三角函数:\sin a, \cos b, \tan c, \cot d, \sec e, \csc f
取大小:\min(x,y), \max(x,y)

希腊字母表
序号 小写 LaTeX 读音
1 α \alpha /ˈælfə/
2 β \beta /ˈbiːtə/
3 γ \gamma /ˈɡæmə/
4 δ \delta /ˈdɛltə/
5 ϵ \epsilon /ˈɛpsɪlɒn/
6 ε \varepsilon /ˈɛpsɪlɒn/
7 ζ \zeta /ˈzeɪtə/
8 η \eta /ˈeɪtə/
9 θ \theta /ˈθiːtə/
10 ϑ \vartheta /ˈθiːtə/
11 ι \iota /aɪˈoʊtə/
12 κ \kappa /ˈkæpə/
13 λ \lambda /ˈlæmdə/
14 μ \mu /mjuː/
15 ν \nu /njuː/
16 ξ \xi /zaɪ, ksaɪ/
17 o o /ˈɒmɪkrɒn/
18 π \pi /paɪ/
19 ϖ \varpi /paɪ/
20 ρ \rho /roʊ/
21 ϱ \varrho /roʊ/
22 σ \sigma /ˈsɪɡmə/
23 ς \varsigma /ˈsɪɡmə/
24 τ \tau /taʊ, tɔː/
25 υ \upsilon /ˈʌpsɪlɒn/
26 ϕ \phi /faɪ/
27 φ \varphi /faɪ/
28 χ \chi /kaɪ/
29 ψ \psi /psaɪ/
30 ω \omega /oʊˈmeɪɡə/
序号 大写 LaTeX 读音
31 Γ \Gamma /ˈɡæmə/
32 Δ \Delta /ˈdɛltə/
33 Θ \Theta /ˈθiːtə/
34 Λ \Lambda /ˈlæmdə/
35 Ξ \Xi /zaɪ, ksaɪ/
36 Π \Pi /paɪ/
37 Σ \Sigma /ˈsɪɡmə/
38 Υ \Upsilon /ˈʌpsɪlɒn/
39 Φ \Phi /faɪ/
40 Ψ \Psi /psaɪ/
41 Ω \Omega /oʊˈmeɪɡə/

 

Python之常用混凝土构件计算01

写在前面的话
最近在的用Jupyter Notebook学习Python,顺便把以前fx-FD10Pro做的构件计算文件重写成Python,就当做练习了。


程序说明:
【a】已知Asp,M,求As
x=h_0-\sqrt{h_0^2-\dfrac{2\left[\gamma_{RE}M-f_y^{\prime}A_s^{\prime}(h_0-a_s^{\prime}\right]}{\alpha_1f_cb}} \\should,\ x\le\xi_bh_0 \\if\ x\ge2a^{\prime},\ A_s=\dfrac{\alpha_1f_cbx+f_y^{\prime}A_s^{\prime}}{f_y} \\if\ x<2a^{\prime},\ A_s=\dfrac{\gamma_{RE}M}{f_y(h-a_s-a_s^{\prime})}
【b】已知As,Asp,求Mu
x=\dfrac{f_yA_s-f_y^{\prime}A_s^{\prime}}{\alpha_1f_cb} \\if\ ,x\ge2a^{\prime},\ M_u=[\alpha_1f_cbx(h_0-\dfrac{x}{2})+f_y^{\prime}A_s^{\prime}(h_0-a_s^{\prime})]/\gamma_{RE} \\if\ ,x<2a^{\prime},\ M_u=f_yA_s(h-a_s-a_s^{\prime})/\gamma_{RE}


#coding=utf-8
#钢筋混凝土参数
def c_hrb():
    global fcuk,HRB,Ec,fc,ft,ftk,Es,fy,fyp,fyk
    global a1,epsilon_cu
    fcuk=Ec=fc=ft=ftk=0.0
    HRB=Es=fy=fyp=fyk=0.0
    #矩形应力图系数a1,C50以下为1.0
    a1=1.0
    #正截面混凝土极限压应变epsilon_cu,C50以下为0.0033
    epsilon_cu=0.0033    
    fcuk=int(input("C?30/35/40"))
    if (fcuk==30):
        Ec=30000
        fc=14.3
        ft=1.43
        ftk=2.01
    elif (fcuk==35):
        Ec=31500
        fc=16.7
        ft=1.57
        ftk=2.2
    elif (fcuk==40):
        Ec=32500
        fc=19.1
        ft=1.71
        ftk=2.39
    HRB=int(input("HRB?300/400/500"))
    if (HRB==300):
        Es=210000
        fy=270
        fyp=270
        fyk=300
    elif (HRB==400):
        Es=200000
        fy=360
        fyp=360
        fyk=400
    elif (HRB==500):
        Es=200000
        fy=435
        fyp=410
        fyk=500
    print('fcuk=',fcuk)
    print('Ec=',Ec)
    print('fc=',fc)
    print('ft=',ft)
    print('ftk=',ftk)
    print('HRB=',HRB)
    print('Es=',Es)
    print('fy=',fy)
    print('fyp=',fyp)
    print('fyk=',fyk)
#函数结束

#1.受弯构件正截面
#矩形双筋(非抗震,gamma_RE=1.0;抗震,《混规》11.1.6,gamma_RE=0.75)
#【a】已知Asp,M,求As
def given_asp_m_solve_as():
    import math
    c_hrb()
    gamma_RE=float(input("抗震0.75,gamma_RE="))
    nsp=float(input("受压筋个数nsp="))
    dsp=float(input("受压筋直径dsp="))
    Asp=nsp*0.25*3.14*(dsp**2)
    M=float(input("kN*m,M="))
    h=float(input("mm,h="))
    b=float(input("mm,b="))
    ast=float(input("mm,受拉钢筋合力点至受拉边缘的距离ast="))
    asp=float(input("mm,受压钢筋合力点至受压边缘的距离asp="))
    h0=h-ast
    #界限受压区高度ksi_b
    ksi_b=round(0.8/(1 + fy / (Es*epsilon_cu)),3)
    #受压区高度x
    x=round(h0-math.sqrt(h0**2 - 2*(gamma_RE*M*(10**6) - fyp*Asp*(h0-asp)) / (a1*fc*b)),1)
    print('h0=',h0)
    print('ksi_b=',ksi_b)
    print('x=',x)
    if (x<=ksi_b*h0):
        #弯曲破坏时,截面的延性取决于受压区高度的大小,受压区高度越小,截面转动就越大,延性就越好
        print(x,"非抗震截面,<=ksi_b*h0",ksi_b*h0)
        print(x,"抗震端截面,一级x<=0.25h0",0.25*h0)
        print(x,"抗震端截面,二、三级x<=0.35h0",0.35*h0)        
    else:
        #超筋梁,脆性破坏
        print(x,">ksi_b*h0,截面过小!",ksi_b*h0)
    if (x>=2*asp):
        print(x,">=2*asp,混规6.2.10-4式",2*asp)
        As=(a1*fc*b*x+fyp*Asp)/fy
    else:
        print(x,"<2*asp,混规6.2.14条",2*asp)
        As=gamma_RE*M*(10**6) / (fy*(h - ast - asp))
    As=round(As,1)
    print('受拉筋面积As=',As)
    rho=round(As/(b*h)*100,3)
    print('另需满足最小配筋率;配筋率rho=',rho,'%')
#函数结束

#【b】已知As,Asp,求Mu
def given_as_asp_solve_mu():
    import math
    c_hrb()
    gamma_RE=float(input("抗震0.75,gamma_RE="))
    nst=float(input("受拉筋个数nst="))
    dst=float(input("受拉筋直径dst="))
    As=nst*0.25*3.14*(dst**2)
    nsp=float(input("受压筋个数nsp="))
    dsp=float(input("受压筋直径dsp="))
    Asp=nsp*0.25*3.14*(dsp**2)
    h=float(input("mm,h="))
    b=float(input("mm,b="))
    ast=float(input("mm,受拉钢筋合力点至受拉边缘的距离ast="))
    asp=float(input("mm,受压钢筋合力点至受压边缘的距离asp="))
    h0=h-ast
    #界限受压区高度ksi_b
    ksi_b=round(0.8/(1 + fy / (Es*epsilon_cu)),3)
    #受压区高度x
    x=(fy*As-fyp*Asp)/(a1*fc*b)
    print('h0=',h0)
    print('ksi_b=',ksi_b)
    print('x=',x)
    if (x<=ksi_b*h0):
        #弯曲破坏时,截面的延性取决于受压区高度的大小,受压区高度越小,截面转动就越大,延性就越好
        print(x,"非抗震截面,<=ksi_b*h0",ksi_b*h0)
        print(x,"抗震端截面,一级x<=0.25h0",0.25*h0)
        print(x,"抗震端截面,二、三级x<=0.35h0",0.35*h0)        
    else:
        x=ksi_b*h0
        print(x,"取x=ksi_b*h0",ksi_b*h0)
    if (x>=2*asp):
        print(x,">=2*asp,混规6.2.10-4式",2*asp)
        Mu=(a1*fc*b*x*(h0-x/2) + fyp*Asp*(h0-asp)) / gamma_RE/(10**6)
    else:
        print(x,"<2*asp,混规6.2.14条",2*asp)
        Mu=fy*As*(h - ast - asp) / gamma_RE/(10**6)
    Mu=round(Mu,3)
    print('极限抗弯承载力Mu=',Mu)
#函数结束

过秦论——古文今读

贾谊 [西汉]

上篇
秦孝公据崤函之固,拥雍州之地,君臣固守以窥周室,有席卷天下,包举宇内,囊括四海之意,并吞八荒之心。当是时也,商君佐之,内立法度,务耕织,修守战之具;外连衡而斗诸侯。于是秦人拱手而取西河之外。

孝公既没,惠文、武、昭襄蒙故业,因遗策,南取汉中,西举巴、蜀,东割膏腴之地,北收要害之郡。诸侯恐惧,会盟而谋弱秦,不爱珍器重宝肥饶之地,以致天下之士,合从缔交,相与为一。当此之时,齐有孟尝,赵有平原,楚有春申,魏有信陵。此四君者,皆明智而忠信,宽厚而爱人,尊贤而重士,约从离衡,兼韩、魏、燕、楚、齐、赵、宋、卫、中山之众。于是六国之士,有甯越、徐尚、苏秦、杜赫之属为之谋,齐明、周最、陈轸、召滑、楼缓、翟景、苏厉、乐毅之徒通其意,吴起、孙膑、带佗、倪良、王廖、田忌、廉颇、赵奢之伦制其兵。尝以十倍之地,百万之众,叩关而攻秦。秦人开关延敌,九国之师,逡巡而不敢进。秦无亡矢遗镞之费,而天下诸侯已困矣。于是从散约败,争割地而赂秦。秦有余力而制其弊,追亡逐北,伏尸百万,流血漂橹。因利乘便,宰割天下,分裂山河。强国请服,弱国入朝。延及孝文王、庄襄王,享国之日浅,国家无事。

及至始皇,奋六世之余烈,振长策而御宇内,吞二周而亡诸侯,履至尊而制六合,执敲扑而鞭笞天下,威振四海。南取百越之地,以为桂林、象郡;百越之君,俯首系颈,委命下吏。乃使蒙恬北筑长城而守藩篱,却匈奴七百余里。胡人不敢南下而牧马,士不敢弯弓而报怨。于是废先王之道,焚百家之言,以愚黔首;隳名城,杀豪杰,收天下之兵,聚之咸阳,销锋镝,铸以为金人十二,以弱天下之民。然后践华为城,因河为池,据亿丈之城,临不测之渊,以为固。良将劲弩守要害之处,信臣精卒陈利兵而谁何。天下已定,始皇之心,自以为关中之固,金城千里,子孙帝王万世之业也。

始皇既没,余威震于殊俗。然陈涉瓮牖绳枢之子,氓隶之人,而迁徙之徒也;才能不及中人,非有仲尼、墨翟之贤,陶朱、猗顿之富;蹑足行伍之间,而倔起阡陌之中,率疲弊之卒,将数百之众,转而攻秦,斩木为兵,揭竿为旗,天下云集响应,赢粮而景从。山东豪俊遂并起而亡秦族矣。

且夫天下非小弱也,雍州之地,崤函之固,自若也。陈涉之位,非尊于齐、楚、燕、赵、韩、魏、宋、卫、中山之君也;锄耰棘矜,非铦于钩戟长铩也;谪戍之众,非抗于九国之师也;深谋远虑,行军用兵之道,非及乡时之士也。然而成败异变,功业相反,何也?试使山东之国与陈涉度长絜大,比权量力,则不可同年而语矣。然秦以区区之地,致万乘之势,序八州而朝同列,百有余年矣;然后以六合为家,崤函为宫;一夫作难而七庙隳,身死人手,为天下笑者,何也?仁义不施而攻守之势异也。

中篇
秦灭周祀,并海内,兼诸侯,南面称帝,以养四海。天下之士,斐然向风。若是,何也?曰:近古之无王者久矣。周室卑微,五霸既灭,令不行于天下。是以诸侯力政,强凌弱,众暴寡,兵革不休,士民罢弊。今秦南面而王天下,是上有天子也。既元元之民冀得安其性命,莫不虚心而仰上。当此之时,专威定功,安危之本,在于此矣。

秦王怀贪鄙之心,行自奋之智,不信功臣,不亲士民,废王道而立私爱,焚文书而酷刑法,先诈力而后仁义,以暴虐为天下始。夫兼并者高诈力,安危者贵顺权,此言取与守不同术也。秦离战国而王天下,其道不易,其政不改,是其所以取之守之者无异也。孤独而有之,故其亡可立而待也。借使秦王论上世之事,并殷、周之迹,以制御其政,后虽有淫骄之主,犹未有倾危之患也。故三王之建天下,名号显美,功业长久。

今秦二世立,天下莫不引领而观其政。夫寒者利裋褐,而饥者甘糟糠。天下嚣嚣,新主之资也。此言劳民之易为仁也。向使二世有庸主之行而任忠贤,臣主一心而忧海内之患,缟素而正先帝之过;裂地分民以封功臣之后,建国立君以礼天下;虚囹圄而免刑戮,去收孥污秽之罪,使各反其乡里;发仓廪,散财币,以振孤独穷困之士;轻赋少事,以佐百姓之急;约法省刑,以持其后,使天下之人皆得自新,更节修行,各慎其身;塞万民之望,而以盛德与天下,天下息矣。即四海之内皆欢然各自安乐其处,惟恐有变。虽有狡害之民,无离上之心,则不轨之臣无以饰其智,而暴乱之奸弭矣。

二世不行此术,而重以无道:坏宗庙与民,更始作阿房之宫;繁刑严诛,吏治刻深;赏罚不当,赋敛无度。天下多事,吏不能纪;百姓困穷,而主不收恤。然后奸伪并起,而上下相遁;蒙罪者众,刑戮相望于道,而天下苦之。自群卿以下至于众庶,人怀自危之心,亲处穷苦之实,咸不安其位,故易动也。是以陈涉不用汤、武之贤,不借公侯之尊,奋臂于大泽,而天下响应者,其民危也。

故先王者,见终始之变,知存亡之由。是以牧民之道,务在安之而已矣。下虽有逆行之臣,必无响应之助。故曰:“安民可与为义,而危民易与为非”,此之谓也。贵为天子,富有四海,身在于戮者,正之非也。是二世之过也。

下篇
秦兼诸侯山东三十余郡,脩津关,据险塞,缮甲兵而守之。然陈涉率散乱之众数百,奋臂大呼,不用弓戟之兵,鉏耰白梃,望屋而食,横行天下。秦人阻险不守,关梁不闭,长戟不刺,强弩不射。楚师深入,战于鸿门,曾无藩篱之难。于是山东诸侯并起,豪俊相立。秦使章邯将而东征,章邯因其三军之众,要市于外,以谋其上。群臣之不相信,可见于此矣。子婴立,遂不悟。借使子婴有庸主之材而仅得中佐,山东虽乱,三秦之地可全而有,宗庙之祀宜未绝也。

秦地被山带河以为固,四塞之国也。自缪公以来,至于秦王,二十余君,常为诸侯雄。此岂世贤哉?其势居然也。且天下尝同心并力攻秦矣,当此之世,贤智并列,良将行其师,贤相通其谋,然困于阻险而不能进,秦乃延入战而为之开关,百万之徒逃北而遂坏。岂勇力智慧不足哉?形不利,势不便也。秦小邑并大城,守险塞而军,高垒毋战,闭关据厄,荷戟而守之。诸侯起于匹夫,以利合,非有素王之行也。其交未亲,其下未附,名曰亡秦,其实利之也。彼见秦阻之难犯也,必退师。案土息民,以待其敝,收弱扶罢,以令大国之君,不患不得意于海内。贵为天子,富有四海,而身为禽者,其救败非也。

秦王足己而不问,遂过而不变。二世受之,因而不改,暴虐以重祸。子婴孤立无亲,危弱无辅。三主之惑,终身不悟,亡不亦宜乎?当此时也,世非无深虑知化之士也,然所以不敢尽忠指过者,秦俗多忌讳之禁也,——忠言未卒于口而身糜没矣。故使天下之士倾耳而听,重足而立,阖口而不言。是以三主失道,而忠臣不谏,智士不谋也。天下已乱,奸不上闻,岂不悲哉!先王知壅蔽之伤国也,故置公卿、大夫、士,以饰法设刑而天下治。其强也,禁暴诛乱而天下服;其弱也,五伯征而诸侯从;其削也,内守外附而社稷存。故秦之盛也,繁法严刑而天下震;及其衰也,百姓怨而海内叛矣。故周王序得其道,千余载不绝;秦本末并失,故不能长。由是观之,安危之统相去远矣。

鄙谚曰:“前事之不忘,后事之师也。”是以君子为国,观之上古,验之当世,参之人事,察盛衰之理,审权势之宜,去就有序,变化因时,故旷日长久而社稷安矣。

Primavera P6 主要工作流程

最近在学习markdown用mermaid做流程图,索性画一下Primavera P6的主要工作步骤以供参考。

~~~mermaid
graph TD
N1[01程序基础设置]
N2[02创建OBS]
N3[03创建EPS]
N4[04创建项目分类码<br />05创建项目]
N6[06加载项目分类码]
N7[07创建WBS]
N9[08创建作业分类码<br />09创建作业]
N10[10创建步骤<br />11确定工期<br />12限制条件<br />13建立逻辑关系<br />14加载作业分类码]
N15[15关键路径法进度计算]
N16[16进度分析]
N17[17创建RBS]
N18[18创建资源分类码<br />19创建资源]
N20[20加载资源分类码]
N21[21创建CBS]
N22[22费用估算]
N23[23加载资源]
N24[24加载其它费用]
N25[25加载费用科目]
N26[26资源&费用分析]
N27[27冻结目标计划]
N28[28项目发布&计划N]
N29[29更新进度]
N30[30更新资源&费用]
N31[31偏差分析]
N32[32计划调整]
TF1{调整?}
TF2{完工?}
S(开始) --> N1
N1 --> N2 --> N3
N3 --> N4 --> N6
N6 --> N7
N7 --> N22
N7 --> N9
N9 --> N10 --> N15
N15 --> N16 --> N27
N15 --> N26 --> N27
N1 --> N17
N17 --> N18 --> N20 --> N23
N1 --> N21 --> N25
N9 --> N24 --> N25
N9 --> N23 --> N25
N25 --> N15
N27 --> N28 --> N29 --> N31
N28 --> N30 --> N31 --> TF1 --否--> N28
TF1 --是--> N32 --> TF2 --否--> N27
TF2 --是--> E(结束)
~~~

效果如下: