linux下批量清除maven target目录
find . -name pom.xml -execdir mvn clean \;
或者
find . -name pom.xml -exec mvn clean -f ‘{}’ \;
支持maven3
find . -name pom.xml -execdir mvn clean \;
或者
find . -name pom.xml -exec mvn clean -f ‘{}’ \;
支持maven3
aria2c http://host/image.iso
说明:1.10.0以后的版本默认对每个 host 使用 1 个连接,你可以使用 –max-connection-per-server或者 -x 选项进行改变。
aria2c -x2 http://host/image.iso
说明:想要停止下载,可以按Ctrl-C。想要恢复下载,可以在同一个文件夹中执行相同的下载命令。只要URI指向同一个文件,URIs是可以被改变的。
aria2c -s2 http://host/image.iso http://mirror1/image.iso http://mirror2/image.iso
说明:你可以指定URIs的数量多余 -s 选项设定的数。在这个例子中,前两个URL会被用于下载,而第三个URL作为备用(如果前面两个有个挂了,第三个顶上)。
aria2c http://host1/file.zip ftp://host2/file.zip
aria2c -Z http://host/file1 file2.torrent file3.metalink
说明:如果你只是下载 torrent 和 metalink 的文件,那么选项 -Z 将不是必须的。所以你可以使用以下这个命令同时下载bt文件。
aria2c file1.torrent file2.torrent
aria2c -ifiles.txt -j5
说明:选项 -j 用于指定同时下载的文件的数量。你可以在文件中指定本地的 torrent 和 metalink 文件。
说明:你可以指定一些 选项 在下载文件(input list file)中。
aria2c -ifiles.txt --save-session=out.txt
当你按下Ctrl-C或者 aria2 退出时,所有的错误(error)/未完成(unfinished)下载将会保存到out.txt 文件中。注意通过 XML-RPC 方式(aria2.addTorrent and aria2.addMetalink)添加的下载不会被保存!你可以使用这个文件作为一个输入文件列表(input file list)来重新开始下载。
aria2c -iout.txt
aria2c http://site/file.torrent
aria2c --follow-torrent=mem http://site/file.torrent
aria2c -u40K /path/to/file.torrent
说明: -u, –max-upload-limit 指定最大的上传速度
说明:想要停止下载,可以按Ctrl-C。想要恢复下载,可以在同一个文件夹中执行相同的下载命令。只要URI指向同一个文件,URIs是可以被改变的。
你可以同时进行多个 bt 的下载:
aria2c /path/to/file1.torrent /path/to/file2.torrent
aria2c "magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C&dn=aria2"
说明:在 bt magnet uri 包含”&”的时候记住要加单引号或者双引号。强烈推荐打开 DHT 选项。 –enable-dht
aria2c --bt-save-metadata "magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C&dn=aria2"
上面那个命令会保存元数据到一个名为”248d0a1cd08284299de78d5c1ed359bb46717d8c.torrent”的种子文件。
如果每个种子的下载速度都低于 200K 的话, aria2 会临时增加连接数来试着提高下载速度。
aria2c --bt-request-peer-speed-limit=200K file.torrent
说明:配置 –bt-request-peer-speed-limit 选项为合适的值可以在某些情况下提高你的下载速度。
aria2c --enable-dht http://site/file.torrent
说明:从 1.7.2 版本开始, DHT 默认是打开的。当通过 HTTP/FTP 下载的时候 DHT 不会启用。当首个种子下载开始, aria2 初始化 DHT 功能,之后, DHT 会一直运行知道 aria2 退出为止。
aria2c --enable-dht6 --dht-listen-port=6881 --dht-listen-addr6=YOUR_GLOBAL_UNICAST_IPV6_ADDR --enable-async-dns6
说明:如果 aria2c 编译的时候没有加入 c-ares , –enable-async-dns6 不是必须的。 aria2 会在IPv4 和 IPv6 之间对 DHT 共享一些端口。
接下来的例子指示 aria2 移除 file.torrent 文件中所有的 tracker announce URIs ,并用”http://tracker1/announce” 和 “http://tracker2/announce” 代替。
aria2c --bt-exclude-tracker="*" --bt-tracker="http://tracker1/announce,http://tracker2/announce" file.torrent
默认情况下, aria2 能够同时支持加密和非加密连接。它会先尝试使用加密连接,如果失败则尝试非加密连接。
强制只使用加密连接:
aria2c --bt-require-crypto=true http://site/file.torrent
一共有两种加密类型:只加密头或者全部加密。默认下,如果对方支持两种加密类型, aria2 会选择只加密头。如果想让 aria2 总是使用全加密连接:
aria2c --bt-min-crypto-level=arc4 http://site/file.torrent
aria2c -S file.torrent
aria2c --select-file=1-4,8 -Tfile.torrent
说明:序号(index)可以通过 -S 选项输出
aria2c --listen-port=6881-6883 file.torrent
说明:确认该 TCP 端口是可用的
aria2c --seed-time=120 --seed-ratio=1.0 file.torrent
说明:在上面的这个例子中, 当做种 120分钟 或者种子率大于1以后, aria2 会退出。
aria2c --max-upload-limit=100K file.torrent
你可以使用 -V 选项给已经下载好的文件做种。它会先校验文件的完整性。
aria2c -V -d/path/to/dir file.torrent
如果你肯定文件是正确的,你可以使用 –bt-seed-unverified 选项跳过做种前的文件校验。
aria2c --bt-seed-unverified -d/path/to/dir file.torrent
你可以给多个文件做种:
aria2c --bt-seed-unverified -d/path/to/dir file1.torrent file2.torrent
为 BitTorrent 下载下来的文件指定文件名,你首先需要通过 -S 选项知道该文件的序号。比如一个种子文件 -S 选项输出如下:
idx|path/length ===+====================== 1|dist/base-2.6.18.iso |99.9MiB ---+---------------------- 2|dist/driver-2.6.18.iso |169.0MiB ---+----------------------
把 dist/base-2.6.18.iso 保存为 tmp/mydir/base.iso , /dist/driver-2.6.18.iso 保存为 /tmp/dir/driver.iso ,可以使用一下的命令:
aria2c --dir=/tmp --index-out=1=mydir/base.iso --index-out=2=dir/driver.iso file.torrent
说明: –index-out 选项针对通过 HTTP 方式获取种子文件的方式无效。它只能针对本地种子文件的下载。 aria2 不会记住 –index-out 选项中指定的地址,你必须在每次开始该任务的时候重新指定 –index-out 的值。如果你忘了再次指定输出文件的地址, aria2 不会提醒你,所以你必须谨慎地使用这个选项。
优先下载每个文件开头的 1MiB 的内容。
aria2c --bt-prioritize-piece=head file.torrent
aria2c --all-proxy='http://proxy:8080' http://host/file
说明: –all-proxy 选项会被具体的代理选项重载: –http-proxy, –https-proxy, –ftp-proxy.
aria2c --http-proxy='http://proxy:8080' http://host/file
aria2c --http-proxy='http://proxy:8080' --http-proxy-user='username' --http-proxy-passwd='password' http://host/file aria2c --http-proxy='http://username:password@proxy:8080' http://host/file
说明:用户名和密码需要是 percent-encoded 格式。比如,如果用户名是 myid@domain, 那么percent-encoded 格式就是 myid%40domain.
载入 Mozilla/Firefox(1.x/2.x) 和 Netscape 格式:
aria2c --load-cookies=cookies.txt http://host/file
载入 Firefox3 格式:
aria2c --load-cookies=cookies.sqlite http://host/file
说明:你可以不加任何修改直接读取 Firefox/Mozilla’s 的 cookie 内容。
aria2c -c -s2 http://host/partiallydownloadedfile.zip
aria2c --max-download-limit=100K http://host/file
aria2c -V file.metalink
说明:这个选项只能对支持校验码的 BitTorrent 或者 metalink 使用。
aria2c --lowest-speed-limit=10K file.metalink
你可以这样使用 URI :
aria2c -P http://{host1,host2,host3}/file.iso
你可以指定数字序号(You can specify numeric sequence using [])
aria2c -Z -P http://host/image[000-100].png
说明: -Z 选项是必须的,如果所有的 URL 都是指向不同的文件的话。
可以指定步长(You can specify step counter)
aria2c -Z -P http://host/image[A-Z:2].png
aria2 会在下载完成的时候从服务器拿到该文件的 timestamp 并设置到本地文件
aria2c -R http://host/file.iso
aria2c --on-download-complete=COMMAND http://example.org/file.iso
参见 –on-download-error, –on-download-start 和 –on-download-stop 选项, 或者执行:
aria2c -h #hook
aria2c -d /dev -o null --allow-overwrite=true http://example.org/file
需要 –allow-overwrite=true 是为了避免 aria2 重命名已经存在的 /dev/null。
http://server/file.iso http://mirror/file.iso dir=/iso_images out=file.img http://foo/bar
ssh-agent bash
ssh-add /home/admin/.ssh/id_rsa
1、安装pathogen
github: https://github.com/tpope/vim-pathogen
mkdir -p ~/.vim/autoload ~/.vim/bundle; \ curl -Sso ~/.vim/autoload/pathogen.vim \ https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim
在.vimrc中添加
execute pathogen#infect() syntax on filetype plugin indent on
2、移动.vimrc文件到.vim目录:
mv .vimrc ~/.vim/vimrc
3、建立连接
ln -s ~/.vim/vimrc ~/.vimrc
4、初始化git仓库,提交
cd ~/.vim git init git add . git commit -m "Initial commit"
5、安装插件
cd ~/.vim mkdir ~/.vim/bundle git submodule add http://github.com/tpope/vim-fugitive.git bundle/fugitive git add . git commit -m "Install Fugitive.vim bundle as a submodule." git push -u origin master
6、在新机器上安装
cd ~ git clone https://github.com/yseasony/xvim.git ~/.vim ln -s ~/.vim/vimrc ~/.vimrc ln -s ~/.vim/gvimrc ~/.gvimrc cd ~/.vim git submodule init git submodule update
7、更新插件
cd ~/.vim/bundle/fugitive git pull origin master
更新所有插件
git submodule foreach git pull origin master
除了在一个目录结构下查找文件这种基本的操作,你还可以用find命令实现一些实用的操作,使你的命令行之旅更加简易。
本文将介绍15种无论是于新手还是老鸟都非常有用的Linux find命令。
首先,在你的home目录下面创建下面的空文件,来测试下面的find命令示例。
# vim create_sample_files.sh touch MybashProgram.sh touch mycprogram.c touch MyCProgram.c touch Program.c mkdir backup cd backup touch MybashProgram.sh touch mycprogram.c touch MyCProgram.c touch Program.c # chmod +x create_sample_files.sh # ./create_sample_files.sh # ls -R .: backup MybashProgram.sh MyCProgram.c create_sample_files.sh mycprogram.c Program.c ./backup: MybashProgram.sh mycprogram.c MyCProgram.c Program.c
这是find命令的一个基本用法。下面的例子展示了用MyCProgram.c作为查找名在当前目录及其子目录中查找文件的方法。
# find -name "MyCProgram.c" ./backup/MyCProgram.c ./MyCProgram.c
这是find命令的一个基本用法。下面的例子展示了用MyCProgram.c作为查找名在当前目录及其子目录中查找文件的方法,忽略了大小写。
# find -iname "MyCProgram.c" ./mycprogram.c ./backup/mycprogram.c ./backup/MyCProgram.c ./MyCProgram.c
3. 使用mindepth和maxdepth限定搜索指定目录的深度
在root目录及其子目录下查找passwd文件。
# find / -name passwd ./usr/share/doc/nss_ldap-253/pam.d/passwd ./usr/bin/passwd ./etc/pam.d/passwd ./etc/passwd
在root目录及其1层深的子目录中查找passwd. (例如root — level 1, and one sub-directory — level 2)
# find -maxdepth 2 -name passwd ./etc/passwd
在root目录下及其最大两层深度的子目录中查找passwd文件. (例如 root — level 1, and two sub-directories — level 2 and 3 )
# find / -maxdepth 3 -name passwd ./usr/bin/passwd ./etc/pam.d/passwd ./etc/passwd
在第二层子目录和第四层子目录之间查找passwd文件。
# find -mindepth 3 -maxdepth 5 -name passwd ./usr/bin/passwd ./etc/pam.d/passwd
4. 在find命令查找到的文件上执行命令
下面的例子展示了find命令来计算所有不区分大小写的文件名为“MyCProgram.c”的文件的MD5验证和。{}将会被当前文件名取代。
find -iname "MyCProgram.c" -exec md5sum {} \; d41d8cd98f00b204e9800998ecf8427e ./mycprogram.c d41d8cd98f00b204e9800998ecf8427e ./backup/mycprogram.c d41d8cd98f00b204e9800998ecf8427e ./backup/MyCProgram.c d41d8cd98f00b204e9800998ecf8427e ./MyCProgram.c
5. 相反匹配
显示所有的名字不是MyCProgram.c的文件或者目录。由于maxdepth是1,所以只会显示当前目录下的文件和目录。
find -maxdepth 1 -not -iname "MyCProgram.c" . ./MybashProgram.sh ./create_sample_files.sh ./backup ./Program.c
6. 使用inode编号查找文件
任何一个文件都有一个独一无二的inode编号,借此我们可以区分文件。创建两个名字相似的文件,例如一个有空格结尾,一个没有。
touch "test-file-name" # touch "test-file-name " [Note: There is a space at the end] # ls -1 test* test-file-name test-file-name
从ls的输出不能区分哪个文件有空格结尾。使用选项-i,可以看到文件的inode编号,借此可以区分这两个文件。
ls -i1 test* 16187429 test-file-name 16187430 test-file-name
你可以如下面所示在find命令中指定inode编号。在此,find命令用inode编号重命名了一个文件。
find -inum 16187430 -exec mv {} new-test-file-name \; # ls -i1 *test* 16187430 new-test-file-name 16187429 test-file-name
你可以在你想对那些像上面一样的糟糕命名的文件做某些操作时使用这一技术。例如,名为file?.txt的文件名字中有一个特殊字符。若你想执行“rm file?.txt”,下面所示的所有三个文件都会被删除。所以,采用下面的步骤来删除”file?.txt”文件。
ls file1.txt file2.txt file?.txt
找到每一个文件的inode编号。
ls -i1 804178 file1.txt 804179 file2.txt 804180 file?.txt
如下所示:?使用inode编号来删除那些具有特殊符号的文件名。
find -inum 804180 -exec rm {} \; # ls file1.txt file2.txt [Note: The file with name "file?.txt" is now removed]
7. 根据文件权限查找文件
下面的操作时合理的:
找到具有指定权限的文件
忽略其他权限位,检查是否和指定权限匹配
根据给定的八进制/符号表达的权限搜索
此例中,假设目录包含以下文件。注意这些文件的权限不同。
ls -l total 0 -rwxrwxrwx 1 root root 0 2009-02-19 20:31 all_for_all -rw-r--r-- 1 root root 0 2009-02-19 20:30 everybody_read ---------- 1 root root 0 2009-02-19 20:31 no_for_all -rw------- 1 root root 0 2009-02-19 20:29 ordinary_file -rw-r----- 1 root root 0 2009-02-19 20:27 others_can_also_read ----r----- 1 root root 0 2009-02-19 20:27 others_can_only_read
找到具有组读权限的文件。使用下面的命令来找到当前目录下对同组用户具有读权限的文件,忽略该文件的其他权限。
find . -perm -g=r -type f -exec ls -l {} \; -rw-r--r-- 1 root root 0 2009-02-19 20:30 ./everybody_read -rwxrwxrwx 1 root root 0 2009-02-19 20:31 ./all_for_all ----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read -rw-r----- 1 root root 0 2009-02-19 20:27 ./others_can_also_read
找到对组用户具有只读权限的文件。
find . -perm g=r -type f -exec ls -l {} \; ----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read
找到对组用户具有只读权限的文件(使用八进制权限形式)。
find . -perm 040 -type f -exec ls -l {} \; ----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read
8. 找到home目录及子目录下所有的空文件(0字节文件)
下面命令的输出文件绝大多数都是锁定文件盒其他程序创建的place hoders
find ~ -empty
只列出你home目录里的空文件。
find . -maxdepth 1 -empty
只列出当年目录下的非隐藏空文件。
find . -maxdepth 1 -empty -not -name ".*"
9. 查找5个最大的文件
下面的命令列出当前目录及子目录下的5个最大的文件。这会需要一点时间,取决于命令需要处理的文件数量。
find . -type f -exec ls -s {} \; | sort -n -r | head -5
10. 查找5个最小的文件
方法同查找5个最大的文件类似,区别只是sort的顺序是降序。
find . -type f -exec ls -s {} \; | sort -n | head -5
上面的命令中,很可能你看到的只是空文件(0字节文件)。如此,你可以使用下面的命令列出最小的文件,而不是0字节文件。
find . -not -empty -type f -exec ls -s {} \; | sort -n | head -5
11. 使用-type查找指定文件类型的文件
只查找socket文件
find . -type s
查找所有的目录
find . -type d
查找所有的一般文件
find . -type f
查找所有的隐藏文件
find . -type f -name ".*"
查找所有的隐藏目录
find -type d -name ".*"
12. 通过和其他文件比较修改时间查找文件
显示在指定文件之后做出修改的文件。下面的find命令将显示所有的在ordinary_file之后创建修改的文件。
ls -lrt total 0 -rw-r----- 1 root root 0 2009-02-19 20:27 others_can_also_read ----r----- 1 root root 0 2009-02-19 20:27 others_can_only_read -rw------- 1 root root 0 2009-02-19 20:29 ordinary_file -rw-r--r-- 1 root root 0 2009-02-19 20:30 everybody_read -rwxrwxrwx 1 root root 0 2009-02-19 20:31 all_for_all ---------- 1 root root 0 2009-02-19 20:31 no_for_all # find -newer ordinary_file . ./everybody_read ./all_for_all ./no_for_all
13. 通过文件大小查找文件
使用-size选项可以通过文件大小查找文件。
查找比指定文件大的文件
find ~ -size +100M
查找比指定文件小的文件
find ~ -size -100M
查找符合给定大小的文件
find ~ -size 100M
注意: – 指比给定尺寸小,+ 指比给定尺寸大。没有符号代表和给定尺寸完全一样大。
14. 给常用find操作取别名
若你发现有些东西很有用,你可以给他取别名。并且在任何你希望的地方执行。
常用的删除a.out文件。
alias rmao="find . -iname a.out -exec rm {} \;" # rmao
删除c程序产生的core文件。
alias rmc="find . -iname core -exec rm {} \;" # rmc
15. 用find命令删除大型打包文件
下面的命令删除大于100M的*.zip文件。
find / -type f -name *.zip -size +100M -exec rm -i {} \;"
用别名rm100m删除所有大雨100M的*.tar文件。使用同样的思想可以创建rm1g,rm2g,rm5g的一类别名来删除所有大于1G,2G,5G的文件。
alias rm100m="find / -type f -name *.tar -size +100M -exec rm -i {} \;" # alias rm1g="find / -type f -name *.tar -size +1G -exec rm -i {} \;" # alias rm2g="find / -type f -name *.tar -size +2G -exec rm -i {} \;" # alias rm5g="find / -type f -name *.tar -size +5G -exec rm -i {} \;" # rm100m # rm1g # rm2g # rm5g
1、svnsync init
初始化,建立目标库和源库之间的同步关系
svnsync init 目标库URL 源库URL
2、svnsync sync
真正的同步
svnsync sync 目标库URL 源库URL
在目标库中的hooks中创建pre-revprop-change
#!/bin/sh exit 0
chmod +x pre-revprop-change
今天刚买了一个linode玩,在启动iptables时,出现了Setting chains to policy ACCEPT: security raw nat[FAILED]filter
google一搜找到了解决办法
vi /etc/init.d/iptables 找到
for i in $tables; do echo -n "$i " case "$i" in raw) $IPTABLES -t raw -P PREROUTING $policy \ && $IPTABLES -t raw -P OUTPUT $policy \ || let ret+=1 ;;
加入以下内容到“case “$i” in”下面:
security) $IPTABLES -t filter -P INPUT $policy \ && $IPTABLES -t filter -P OUTPUT $policy \ && $IPTABLES -t filter -P FORWARD $policy \ || let ret+=1 ;;
结果
for i in $tables; do echo -n "$i " case "$i" in security) $IPTABLES -t filter -P INPUT $policy \ && $IPTABLES -t filter -P OUTPUT $policy \ && $IPTABLES -t filter -P FORWARD $policy \ || let ret+=1 ;; raw) $IPTABLES -t raw -P PREROUTING $policy \ && $IPTABLES -t raw -P OUTPUT $policy \ || let ret+=1 ;;
保存后,重启则可
service iptables restart
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
No module named yum
Please install a package which provides this module, or
verify that the module is installed correctly.
It’s possible that the above module doesn’t match the
current version of Python, which is:
2.7.3 (default, Feb 13 2013, 19:20:25)
[GCC 4.4.6 20120305 (Red Hat 4.4.6-4)]
If you cannot solve this problem yourself, please go to
the yum faq at:
http://yum.baseurl.org/wiki/Faq
系统版本 centos6.3
自带python为2.6
指定yum的python版本即可
vi /usr/bin/yum
#!/usr/bin/python2.6
80%相似哦
1.您的计算机是DNS域example.com中一个成员。所有example.com域入得主机
都在172.24.80.0/255.255.255.0网段内。
2.在考试结束后,您的计算机会被自动重新启动,因此,请确保您做的所有修改在重新启动之后仍然能够生效。
3.您正在使用的、用于考试的该版本Red Hat Enterprise Linux6.0 的软件包资源
可以通过YUM访问:http://instructor.example.com/pub/rhel6/dvd
4. 测试环境:.example.com 172.24.80.0/255.255.255.0
5. 测试环境: .my133.org 172.25.0.0/255.255.0.0
6.如果您选择使用kernel级防火墙,您必须使用REJECT而不是DROP去阻止不希望通过的包
8.某些题目要求服务对于DNS域,server1.my133.org是不可用的。这个域内得所有系统都在172.25.0.0/255.255.0.0
9.所有得操作都是在KVM虚拟机中,不要在物理机上操作
10.设置您的系统使用下述静态网络配置:
root用户密码修改为thuctive
x代表您得做位编号
*主机名: serverX.example.com
* IP地址:172.24.80.x/24
* 子网掩码:255.255.255.0
* 网关:172.24.254.254
* 域名解析服务器:172.24.254.254
为了获得其他考试信息,您必须按照上述要求更改网络配置。考试说明位于:
http://www.example.com/rhel6/test.html
在您重新配置网络之前,这个URL是不可访问的。
在评估之前,您的系统会被重新启动。其应该启动到运行级别5。