【查看磁盘或者目录的容量 df 和 du】 df 查看已挂载磁盘的总容量、使用容量、剩余容量等,可以不加任何参数,默认是按k为单位显示的 df常用参数有 –i -h -k –m等 -i 使用inodes 显示结果 -h 使用合适的单位显示,例如G -k -m 分别为使用K,M为单位显示 简单介绍一下,你看到的相关数据。Filesystem 表示扇区,也就是你划分磁盘时所分的区;1K-blocks/
Elixir有三种错误处理机制:errors,throws和exits。 本章我们将逐个讲解它们,包括应该在何时使用哪一个。 Errors 错误(errors,或者叫它异常)用在代码中出现意外的地方。 举个例子,尝试让原子加上一个数字,就会返回一个错误: iex> :foo + 1 ** (ArithmeticError) bad argument in arithmetic expression
十二、后处理工具 随着 PostCSS 的不断完善,各种插件如雨后春笋般的涌现出来,其中不乏一些很优秀的插件。 面向未来的 CSS Autoprefixer 根据 caniuse 的数据自动增加前缀,解放双手的利器(??? 推荐? ) postcss-cssnext 支持大量浏览器未实现的标准特性(CSS 变量,嵌套等)(?? 推荐? ) 格式化工具 stylefmt 支持 CSS、SCSS 等多
预处理工具 不同的 CSS 预处理工具有着不同的特性、功能以及语法。编码习惯应当根据使用的预处理工具进行扩展, 以适应其特有的功能。推荐在使用 SCSS 时遵守以下指导。 将嵌套深度限制在1级。对于超过2级的嵌套,给予重新评估。这可以避免出现过于详实的 CSS 选择器。 避免大量的嵌套规则。当可读性受到影响时,将之打断。推荐避免出现多于20行的嵌套规则出现。 始终将@extend语句放在声明块的第
条件处理 if 这个special form跟java里面的if的语义是一样的, 它接受三个参数, 第一个是需要判断的条件,第二个表达式是条件成立的时候要执行的表达式,第三个参数是可选的,在条件不成立的时候执行。如果需要执行多个表达式,那么把多个表达式包在do里面。看例子: (import '(java.util Calendar GregorianCalendar)) (let [gc (Gre
异常处理 Clojure代码里面抛出来的异常都是运行时异常。当然从Clojure代码里面调用的java代码还是可能抛出那种需要检查的异常的。 try , catch , finally 以及 throw 提供了和java里面类似的功能: (defn collection? [obj] (println "obj is a" (class obj)) ; Clojure collection
日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩; 4.1. 查看磁盘空间 查看磁盘空间利用大小: df -h -h: human缩写,以易读的方式显示结果(即带单位:比如M/G,如果不加这个参数,显示的数字以B为单位) - df -h /opt/app/todeav/config#df -h Filesystem Size U
本节将介绍Linux下使用Shell处理文本时最常用的工具:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk;提供的例子和参数都是常用的;我对shell脚本使用的原则是命令单行书写,尽量不要超过2行;如果有更为复杂的任务需求,还是考虑python吧; 3.1. find 文件查找 查找txt和pdf文件: find . \( -name "*.tx
前文提到传统 Remember-Me 的实现方式中,通过 cookie 存储登录信息的方式存在安全问题,需要制定一系列校验策略和失效规则等等来确保可靠性,对开发者的技术要求较高;而通过表单登录的方式去触发浏览器的账户信息存储和自动填充的这种方法限制条件较多,且浏览器行为不可控,具体操作起来会比较麻烦。 因此浏览器提供了一套凭据管理 API(Crediential Management API),可
Vanilla 的错误处理 Vanilla 的错误处理分为框架系统错误和应用错误两种类型,系统错误由框架控制,一般导致致命错误,直接抛出 500 内部错误,切不再往下执行,而应用错误则可以通过定义 errorController 来自定义处理 Vanilla 应用错误 Vanilla 提供了方便的错误处理方式,避免当代码运行报错后,页面只显示一个 500 错误的白页,没有详细报错信息,影响开发效率
1. 什么叫反向代理服务器? 要说反向代理服务器,先来说一般的代理服务器。代理就是受委托去做一些事。假如用户A委托B去做一些事,做完之后B告诉A结果。在代理服务器中也是一样的道理,用户A通过代理服务器B访问网站C(www.example.com),请求先到代理服务器B,B再转发请求到网站C,代理服务器B是真正访问网站C的,访问之后再把网站C的应答结果发给用户A。这样给用户A的感觉是C直接提供服务的
Retry 如果原始Observable遇到错误,重新订阅它期望它能正常终止 Retry操作符不会将原始Observable的onError通知传递给观察者,它会订阅这个Observable,再给它一次机会无错误地完成它的数据序列。Retry总是传递onNext通知给观察者,由于重新订阅,可能会造成数据项重复,如上图所示。 RxJava中的实现为retry和retryWhen。 无论收到多少次on
Catch 从onError通知中恢复发射数据 Catch操作符拦截原始Observable的onError通知,将它替换为其它的数据项或数据序列,让产生的Observable能够正常终止或者根本不终止。 在某些ReactiveX的实现中,有一个叫onErrorResumeNext的操作符,它的行为与Catch相似。 RxJava将Catch实现为三个不同的操作符: onErrorReturn 让
很多操作符可用于对Observable发射的onError通知做出响应或者从错误中恢复,例如,你可以: 吞掉这个错误,切换到一个备用的Observable继续发射数据 吞掉这个错误然后发射默认值 吞掉这个错误并立即尝试重启这个Observable 吞掉这个错误,在一些回退间隔后重启这个Observable 这是操作符列表: onErrorResumeNext( ) — 指示Observable在遇
清理项目会清空output目录下的文件,并重新编译项目. 操作步骤: 菜单栏:Build --> Clean Project(清理项目)