幸福飞过海 - 2014年12月 https://fengqi.me/2014/12/ 风起的网络记事本 [转载] awk与cut在以空格为分割域时的区别 https://fengqi.me/unix/266.html 2014-12-21T18:03:00+00:00 原文地址:awk与cut在以空格为分割域时的区别awk默认以空格为分割域,比如我想获得某进程pid:[root@SHCTC-GAME12-44 ~]# ps -ef|grep "sshd -f"|grep -v grep root 5088 1 0 14:28 ? 00:00:00 /usr/sbin/sshd -f /app/oslinkd/oslinkd_config 用awk如下写:ps -ef|grep "sshd -f"|grep -v grep|awk '{print $2}' 这样即可获得pid : 5088 但是用cut,若以空格为分隔域,则并不是第二个域,而是第七个域,因为root与5088之间有6个空格:ps -ef|grep "sshd -f"|grep -v grep|cut -d' ' -f7 结论:awk 以空格为分割域时,是以单个或多个连续的空格为分隔符的;cut则是以单个空格作为分隔符。 [总结] Laravel 如何在预加载试控制返回的字段 https://fengqi.me/php/261.html 2014-12-16T11:52:00+00:00 参考链接:Get specific columns using “with()” function in Laravel EloquentLaravel 的预加载使用方式是:Post::with('user', 'user.extend')->orderBy('id', 'DESC')->paginate(10, array('id', 'content')); 拿到用户和扩展信息太方便了,但是问题是返回的数据太多了,站在一个强迫症的角度简直无法容忍啊。控制返回的字段有两种方法,一个是在 model 里定义关系时指定好字段,但是不太灵活,还一种是在 ->with() 这里做文章:Post::with(array( 'user' => function($query) { $query->select('id', 'name'); }, 'user.extend' => function($query) { $query->select('birth', 'intro'); }, ))->paginate(10, array('id', 'content')); 就这样。既然可以指定字段那还可以做一些别的什么呢???