风起 发布的文章

[原创] 利用 IFTTT 和 FEED43 自动把把订阅丢到 Evernote,以知乎收藏夹为例。

平时玩手机除听歌看电子书外,更多的是刷知乎,碰到感兴趣的有意思的答案和问题会分享出去,后来觉得扰民就不再分享了,而是选择收藏起来。

在知乎客户端可以收藏到收藏夹,也可以直接导入到 Pocket、有道笔记、Evernote,我偏好 Evernote,主要的原因是他做的比较早,支持的 App 更多。

但是电脑上是不可以的,这里可以借助 IFTTT 和 在线 FEED 来自动收集,其实用浏览器剪藏插件也是可以的不过我想简化下操作:手机电脑都直接收藏就好。

另外就是适用面太窄,比如别人的公开收藏夹,比如你喜欢的一些博客更新了,不用挨个过去看是否更新,等邮件提醒就知道了,所以建议用好邮箱。

- 阅读剩余部分 -

[总结]利用 Privoxy 让命令行下的 wget 和 curl 等命令实现自动代理

curl 和 wget 都可以通过附带参数来使用代理

curl -x http://127.0.0.1:8087 github.com
wget -e "http_proxy=127.0.0.1:8087" github.com

临时用用还好,但是经常使用也就麻烦了,可以通过配置文件简化

shell> cat ~/.wgetrc
https_proxy = http://127.0.0.1:8087
http_proxy = http://127.0.0.1:8087
ftp_proxy = http://127.0.0.1:8087

use_proxy = on
continue = on
check_certificate = off

shell> cat ~/.curlrc
-L
proxy = 127.0.0.1:8087

参数解释:

- 阅读剩余部分 -

[转载] awk与cut在以空格为分割域时的区别

原文地址: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 如何在预加载试控制返回的字段

参考链接:Get specific columns using “with()” function in Laravel Eloquent

Laravel 的预加载使用方式是:

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'));

就这样。
既然可以指定字段那还可以做一些别的什么呢???

[分享] 用 PHP 写了一个 Transmission 的 RSS 下载

项目地址: Transmission RSS

目前支持的有 CHD/CMCT/TTG/OPENCD, 其它 PT 我没有账号无法确定适配, 因为 XML 格式可能不一样.

使用方法:

git clone https://github.com/fengqi/transmission-rss.git transmission-rss
cd transmission-rss

修改下 rss.php 里的配置

$rssLink = ''; #点击 chd 里的 [RSS下载], 把订阅地址填进去
$server = 'http://127.0.0.1'; # 默认 127.0.0.1
$port = '9091'; # 默认 9091
$rpcPath = '/transmission/rpc'; # 默认 /transmission/rpc
$user = ''; # 用户名, 如果有设置, 填进去
$password = ''; # 密码, 如果有设置, 填进去

然后运行 php rss.php 测试 ok 就可以放到 cron 里运行了,

sudo crontab -e
写入以后内容
# Transmission RSS 下载
*/10 * * * * /opt/bin/php /opt/transmission-rss/rss.php

php 的路径(使用命令: which php 获取), 和 clone 的项目路径根据自己情况修改下.

其他资源: Transmission ADD-ONS

[记录]Gitlab 在安装完成后才启用 HTTPS 记得重新清理 assets

不然浏览器就会提示:

与 git.fengqi.me 的连接采用 128 位加密技术。但是,此页中包含其他不安全的资源。他人能在传输过程中查看这些资源,攻击者也可以进行修改,从而改变网页的外观。

该连接使用 TLS 1.2。

该连接使用 AES_128_GCM 进行加密和身份验证,并使用 ECDHE_RSA 作为密钥交换机制。

重新清理生产 assets 就好了:

cd /home/git/gitlab
sudo -u git -H bundle exec rake assets:clean assets:precompile cache:clear RAILS_ENV=production

刷新浏览器.