十一 8 2010

[转]10 个最酷的 Linux 单行命令

下面是来自 Commandlinefu 网站由用户投票决出的 10 个最酷的 Linux 单行命令,希望对你有用。

  1. sudo !!

    以 root 帐户执行上一条命令。

  2. python -m SimpleHTTPServer

    利用 Python 搭建一个简单的 Web 服务器,可通过 http://$HOSTNAME:8000 访问。

  3. :w !sudo tee %

    在 Vim 中无需权限保存编辑的文件。

  4. cd -

    更改到上一次访问的目录。

  5. ^foo^bar

    将上一条命令中的 foo 替换为 bar,并执行。

  6. cp filename{,.bak}

    快速备份或复制文件。

  7. mtr google.com

    traceroute + ping。

  8. !whatever:p

    搜索命令历史,但不执行。

  9. $ssh-copy-id user@host

    将 ssh keys 复制到 user@host 以启用无密码 SSH 登录。

  10. ffmpeg -f x11grab -s wxga -r 25 -i :0.0 -sameq /tmp/out.mpg

    把 Linux 桌面录制为视频。

转自:http://www.javaeye.com/topic/794804


19 2010

快速删除.svn文件夹

采用SVN进行版本控制的项目,会在每一个文件夹下.svn隐藏目录,用来存放一些“meta数据”。有的时候需要将这些svn数据清除掉,最简单的操作方式当然就是查找-删除,但是当项目比较庞大的时候,就会非常耗时,有时候竟会导致系统假死。

从网上搜索了一下,找到了两种比较不错的解决方式:

Windows系统:

1
2
3
4
5
6
7
Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]
@="Delete SVN Folders"
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
@="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""

将上述代码保存到一个文本文件中,扩展名改成.reg,然后双击运行,导入到注册表中。成功后,在每一个文件夹上点击右键都会有一个“Delete SVN Folders”的选项,点击之后,就可以删除这个文件下下面所有的.svn文件了。

Linux系统:

1
find . -type d -name ".svn"|xargs rm -rf

在Console中执行上述命令。


25 2010

SVN忽略thumbs.db

烦人的thumbs.db文件,经常会给SVN提交带来不便,今天查了下,其实可以在SVN客户端做些设置,将其忽略掉。

如果使用的是Eclipse Subclipse插件

windows -> performances -> team -> Ignored Resources -> 添加*.db

如果使用的是TortoiseSVN客户端

右击鼠标-> 选择 TortoiseSVN -> Setting (设置) -> General (常规设置) -> 在右侧 “Golbal ignore pattern”(全局忽略样式)内填入*.db -> 确定;


23 2010

subversion.javahl.ClientException

今天用在Eclipse使用subclipse插件的时候,遇到一个问题:

org.tigris.subversion.javahl.ClientException: Couldn’t perform atomic initialization svn: Couldn’t perform atomic initialization
Authorization failed
svn: Could not initialize the SASL library

查了好长时间都没有找到解决方式,无意间在SVN配置中将SVN接口 Client由JavaHL(Jni) 改成 Svn Kit(Pure Java),竟然好了。

后来查了下,JavaHL和Svn Kit都是Subclipse SVN客户端与SVN服务交互的一种方式,JavaHL使用JNI的调用SVN的本地库,速度快,稳定可靠。

同事说的对,不能太依靠于搜索引擎去查找相同的问题的解决方式,遇到问题先自己静下心来分析一下,远比漫无目的的搜索强得多。


28 2010

Gliffy – 在线绘图工具

与别人分享和交流技术的时候,免不了绘制一些示意图,来表达自己想法。Gliffy 就是这样一个工具,可以让你随心所欲的画一些图示,包括流程图,网络图,UML图,组织结构图…

Gliffy: http://www.gliffy.com/


25 2010

我在linux下用得一款音乐播放器

前段时间发现了一个控制台音乐播放器MOC,界面很好看,操作也非常简单。用了一段时间后,立马对它爱不释手了。

MOC官网:http://moc.daper.net/


10 2010

Linux下的计划任务Crontab

crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。该词来源于希腊语 chronos(χρόνος),原意是时间。

1、查看系统中已经执行的计划任务:

crontab -l

2、编辑计划任务:

crontab -e

使用 crontab 命令和 -e(表示 “edit”)选项创建 crontab。这会打开 vi 编辑器,除非在 EDITOR 或 VISUAL 环境变量中指定了另一种编辑器。

3、文件格式说明:

#——分钟 (0 - 59)
# |——小时 (0 - 23)
# | |——日   (1 - 31)
# | | |——月   (1 - 12)
# | | | |——星期 (0 - 7)(星期日=0或7)
# | | | | |
# * * * * * 被执行的命令

4、常用例子:

每隔5分钟执行一次

*/5 * * * *  /home/user/test.pl

周一到周五凌晨1点执行

0 1 * * 1-5 /home/user/test.pl

更多解释:http://en.wikipedia.org/wiki/Crontab


4 2010

如何在Linux上安装Squid代理服务器软件

1、获取Squid源代码

wget ftp://ftp.cuhk.edu.hk/pub/packages/info-systems/www/squid/squid-3.1.1.tar.gz

2、编译及安装

tar -zxvf squid-3.1.1.tar.gz
cd squid-3.1.1
./configure --prefix=/usr/local/squid --enable-arp-acl --enable-linux-netfilter --enable-pthreads --enable-err-language="Simplify_Chinese" --enable-default-err-language="Simplify_Chinese" --enable-auth="basic" --enable-baisc-auth-helpers="NCSA" --enable-underscore
make
make install

3、编译生成Squid认证程序ncsa_auth

cd helpers/basic_auth/NCSA/
make
cp ncsa_auth /usr/sbin/
cd ../../../

4、使用htpasswd来生成用户名/密码对应的文件

htpasswd -c /usr/local/squid/password hijava

在输入两边密码后,一个hijava用户就生成了。如果以后需要添加用户,把上面的命令去掉-c参数再运行即可。

5、修改Squid配置文件

cd /usr/local/squid/
mv -f etc/squid.conf etc/squid.conf.bak
vi etc/squid.conf

插入如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
acl SSL_ports port 443
acl Safe_ports port 80		# http
acl Safe_ports port 21		# ftp
acl Safe_ports port 443		# https
acl Safe_ports port 70		# gopher
acl Safe_ports port 210		# wais
acl Safe_ports port 1025-65535	# unregistered ports
acl Safe_ports port 280		# http-mgmt
acl Safe_ports port 488		# gss-http
acl Safe_ports port 591		# filemaker
acl Safe_ports port 777		# multiling http
acl CONNECT method CONNECT
 
auth_param basic program /usr/sbin/ncsa_auth /usr/local/squid/password
acl normal proxy_auth REQUIRED
http_access allow normal
 
# Deny requests to certain unsafe ports
http_access deny !Safe_ports
 
# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports
 
# And finally deny all other access to this proxy
http_access deny all
 
# Squid normally listens to port 3128
http_port 3128
 
# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?
 
# Uncomment and adjust the following to add a disk cache directory.
#cache_dir null /tmp
 
# Leave coredumps in the first cache dir
coredump_dir /usr/local/squid/var/cache
 
# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp:		1440	20%	10080
refresh_pattern ^gopher:	1440	0%	1440
refresh_pattern -i (/cgi-bin/|\?) 0	0%	0
refresh_pattern .		0	20%	4320

6、启动Squid

 ./sbin/squid

参考:http://wiki.ubuntu.org.cn/Squid%E9%85%8D%E7%BD%AE%E8%AF%A6%E8%A7%A3

十一 8 2009

ubuntu下安装JDK

1、从java.sun.com下载JDK,我下载的是jdk-6u17-linux-i586.bin ,执行命令添加执行权限。

sudo chmod 777 jdk-6u17-linux-i586.bin

2、执行命令,安装JDK。

./jdk-6u17-linux-i586.bin

3、修改/etc/environment文件,设置系统环境变量。

sudo gedit c/etc/environment

加入如下部分内容:

1
2
3
JAVA_HOME="/home/yava/jdk1.6.0_17"
PATH="..........:/home/yava/jdk1.6.0_17/bin"
CLASSPATH=".:/home/yava/jdk1.6.0_17/lib"

4、重启系统


十一 5 2009

Ubuntu下笔记本休眠或挂起无法唤醒的解决办法

当初用ubuntu6.06的时候,基本上是不敢用挂起功能的。因为一般情况下,挂起了之后90%是不能唤醒的,现在换到了7.04之后,这个挂起功能好了不少,基本上和原来调个个了,基本上90%都能唤醒,但是时常还是有那10%不能唤醒。

最近仔细了解了一下laptop_mode,发现只要打开laptop_mode,Laptop挂起之后无法唤醒的问题已经就不存在了。

关于laptop_mode
在默认情况下,你通过安装完系统到笔记本上后,就安装上了laptop-mode-tools工具包。如果你不缺认自已是否安装了laptop-mode-tools工具包,可以在终端中输入下列命令来确认是否安装。

dpkg -l | grep laptop-mode-tools

如果你的电脑执行命今后无结果输出,那么你可以通过下列命令来安装。

sudo  apt-get install laptop-mode-tools

虽然系统已自动安装了laptop-mode-tools,但是是不是就自动启动了laptop_mode模式了呢?我们用下列命令来判断Laptop是否启用了laptop_mode,如果显示结果为0,则表示未启动,如果为非0的数字则表示启动了。

cat /proc/sys/vm/laptop_mode

怎样启动laptop_mode模式呢?
1.修改配置文件/etc/default/acpi-support,更改ENABLE_LAPTOP_MODE=true

sudo gedit /etc/default/acpi-support

2.然后在默认情况下UBUNTU系统会在你切换电源到电池供电时启动laptop_mode,如果你现在就想启动laptop_mode模式,请直接在终端中输入

sudo laptop_mode start|stop|restart

启动了laptop_mode之后,在ubuntu挂起后,基本上就不会遇到无法唤醒的情况了。

转自: http://www.oceanboo.cn/read.php/82.htm