linux bash下find命令之-exec参数多次使用{}处理匹配到文件

问题:

使用find命令查询旧文件文件,并删除,但又想在删除前看一下文件名,大致监测一下进度。不过在exec参数里直接使用两次{}会报错,google后,找到方法,使用sh “代理”一下,直接上代码:

find . -atime +150 -exec sh -c 'ls -lh {} ; rm {}' \;

注意加粗着色部分及其单引号。

特殊字符比较多,转载时容易出问题,再截张图,对照参考

bash_find_match_multi_use

参考:http://blog.csdn.net/duanlove/article/details/8261677
该文还介绍了其它可选方案。

后记:前面例子,只为演示功[……]

继续阅读

java jdk下载-通过海外vps快速下载jdk的方法及/抓包wget

我朝网络真牛x,连接海外很多站点速度都奇慢。印象中以前从java/oracle下载jdk还不算是太慢。今天下载macintosh os x版的jdk,竟然几乎不会动,要10个小时,这还是30M企业版电信光纤吗!找了几个国内的下载站,竟然没有,难道是oracle不让做镜像下载所致?

有个海外vps,就是本站所在的服务器,平时下载海外的东西,如果太慢,通常就使用百度网盘,或vps上下载,做个中转;有时甚至会两个一起用。

但jkd的下载链接不行,下载链接带授权参数的。

想起live http headers,抓包,看看请求里是什么东西,wget模拟请求,理论上只要参数齐就可以的。wgtet一下,发现是三次请求,通过302转向到一个带AuthParm的get参数的地址上,那就直接在vp上wget它,看行不行;如果不行,再带其它参数,反正wget 有随便加http参数的功能。竟然果然是可以下载的,省事,连其它参数都不用加了!

ok,中转下载成功。

vps速度不稳,也要20多分钟的样子,但总比10个小时强得多了,慢慢等吧,还有10M

[……]

继续阅读

yum更新遇到依赖错误的处理经验总结

redhat系列linux系统的yum,有时会出现错误的依赖,用linux早期,遇到该类问题简直是束手无策,无奈之下会在yum的“教唆“下使用“–skip-broken”参数,有时确实可以解决问题,但有时的后果,可以把系统玩儿坏,下次启动无法启动,或出现其它莫名其妙的问题。

列一个典型的错误依赖消息如下:

--> 正在处理依赖关系 /usr/sbin/ldconfig,它被软件包 libva1-1.3.1-11.el7.x86_64 需要
--> 正在处理依赖关系 /usr/sbin/ldconfig,它被软件包 libmad0-0.15.1b-4.el7.x86_64[......]

继续阅读

cygwin下一些包名与命令不一致的包的安装(telnet,dig,netstat等)及ping方案

cygwin下有一些命令,按命令名在setup里搜索不到的,每次安装都要google,汇总记录备忘于此。

telnet, 包名 inetutils ,属于 Net 类

dig, 包名 bind-utils ,属于 Net 类

FreeTDS-devel,替代包名 libsybdb-devel (libraries to connect to MS-SQL and Sybas databases development), 用来安装pymssql时会需要freeTDS开发包的sqlfront.h文件(比如pip install pymssql 时报错 sqlfront.h: N[……]

继续阅读

一系列git设置选项/fetch,push走socks5代理/一份简单的gitignore文件

简述

git的设置一般通过 git config 命令,在本地仓库里的实际配置文件为 .git/config ,全局设置则在操作系统用户目录下 ~/.gitconfig

网络代理

连接远端服务器的操作,如fetch, push 等,如果需要走代理的情况,如果 远端仓库是 http 协议,则比较简单,  git config http.proxy=http://127.0.0.1:1080

不过,通常情况下 ssh 协议使用更广泛,这就要借助ssh的设置了(而不是git本身的设置),配置文件是 ~/.ssh/config  ,比如设置 github.com走1080端口的socks5[……]

继续阅读

在cygwin里调用windows版git-scm的gitk/git-scm与cygwin协同工作

20161216更新:

如果安装了git-scm的  Git-2.11.0-64-bit.exe,将如下命令加入~/.bashrc,重启cygwin即可(32位版本及以后的新版本应该是类似的)。

alias gitk='/cygdrive/d/Program\ Files/Git/cmd/gitk.exe'
. /cygdrive/d/Program\ Files/Git/mingw64/share/git/completion/git-completion.bash

假设git-scm安装在 D:\Program Files\Git

上面第一行命令是把gitk别名到wind[……]

继续阅读

磁盘空间爆掉时nginx报错 An error occurred

nginx报错了,消息如下错误如下nginx_Error_disk_empty

An error occurred.

Sorry, the page you are looking for is currently unavailable.
Please try again later.

If you are the system administrator of this resource then you should check the error log for details.

Faithfully yours, nginx.

1分钟前还是好的,至少wordpress后台可以正常打开,突然就成这样子了。[……]

继续阅读

git生存手册/git入门基本教程

本文针对git初学者入门之用,目标为“快速的在git世界里生存下来”。当然,生存下来是不够的,严重推荐git-scm上教程深入学习,另外git客户端、开发库、部署方案等参看git wiki

本文主要以命令行操作为主。

git安装,不多说。

linux或mac os x下,应该已经安装过了,如没有请通过yum/apt-get等安装。windows下可以使用git-scm的win32版本,自带命令行;推荐在cygwin下的git。可参考 git-scm下载合适的版本

第0步,基础知识。

git是分布式、去中心化的。通俗的说,git项目里的就是每个人都有所有版本的副本;不要服务器也能[……]

继续阅读