# nc -z localhost 1-10000 //扫描本机1到10000端口,获取打开的端口 Connection to localhost 22 port [tcp/ssh] succeeded! Connection to localhost 80 port [tcp/http] succeeded! Connection to localhost 111 port [tcp/sunrpc] succeeded! Connection to localhost 199 port [tcp/smux] succeeded! Connection to localhost 3306 port [tcp/mysql] succeeded! Connection to localhost 6010 port [tcp/x11-ssh-offset] succeeded! Connection to localhost 6011 port [tcp/*] succeeded! #
nc -w2 -z -t $ip $port //根据返回值,可以判断是否succeed之类的!
-z Specifies that nc should just scan for listening daemons, without sending any data to them. It is an error to use this option in conjunction with the -l option.
kumu
mysql> select from_unixtime(1631111148);
方法1、 ####################router#################### # route del -net 192.168.0.0 netmask 255.255.255.0 dev eth1 # route add -net 192.168.0.0 netmask 255.255.255.0 dev eth1 # route add default gw 192.168.0.1 //增加默认路由 # route del default //删除默认路由 # route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1 # route del -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1 方法2、 ####################ip router#################### # ip route | column -t 192.168.0.0/24 dev eth1 scope link 10.2.0.0/16 dev eth2 proto kernel scope link src 10.2.0.111 default via 10.2.255.254 dev eth2 # ip route del 192.168.0.0/24 dev eth1 # ip route add 192.168.0.0/24 dev eth1 # ip route del via 10.2.255.254 //删除默认路由 # ip route add via 10.2.255.254 //增加默认路由 # ip route add 192.168.1.0/24 via 192.168.0.1 //增加静态路由,192.168.0.1为下一跳地址 # ip route del 192.168.1.0/24 via 192.168.0.1 //删除静态路由
0--标准输入
1--标准输出
2--错误输出
在命令状态下,在某一行上按"J"键将Join下一行。
:r !ifconfig eth0
set nu set smarttab set tabstop=4 set expandtab set shiftwidth=4 set smartindent set encoding=utf-8
sleep some number of microseconds
Nice[root@taolr:~]# time `usleep 1000000;echo nice` 0 real 0m1.033s user 0m0.001s sys 0m0.009s Nice[root@taolr:~]# time `sleep 1;echo nice` 0 real 0m1.025s user 0m0.001s sys 0m0.022s
。。。
分享一个第三方的yum源
### Name: RPMforge RPM Repository for RHEL 6 - dag ### URL: http://rpmforge.net/ [rpmforge] name = RHEL $releasever - RPMforge.net - dag baseurl = http://apt.sw.be/redhat/el6/en/$basearch/rpmforge mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge #mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge enabled = 1 protect = 0 gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag gpgcheck = 1 [rpmforge-extras] name = RHEL $releasever - RPMforge.net - extras baseurl = http://apt.sw.be/redhat/el6/en/$basearch/extras mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge-extras #mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-extras enabled = 0 protect = 0 gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag gpgcheck = 1 [rpmforge-testing] name = RHEL $releasever - RPMforge.net - testing baseurl = http://apt.sw.be/redhat/el6/en/$basearch/testing mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge-testing #mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge-testing enabled = 0 protect = 0 gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag gpgcheck = 1
RPM-GPG-KEY
/etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
The following public key can be used to verify RPM packages downloaded from http://dag.wieers.com/apt/ using 'rpm -K' if you have the GNU GPG package. Questions about this key should be sent to: Dag Wieers <[email protected]> -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.2.1 (GNU/Linux) mQGiBD9JMT0RBAC9Q2B0AloUMTxaK73sD0cOu1MMdD8yuDagbMlDtUYA1aGeJVO6 TV02JLGr67OBY+UkYuC1c3PUwmb3+jakZd5bW1L8E2L705wS0129xQOZPz6J+alF 5rTzVkiefg8ch1yEcMayK20NdyOmhDGXQXNQS8OJFLTIC6bJs+7MZL83/wCg3cG3 3q7MWHm3IpJb+6QKpB9YH58D/2WjPDK+7YIky/JbFBT4JPgTSBy611+bLqHA6PXq 39tzY6un8KDznAMNtm+NAsr6FEG8PHe406+tbgd7tBkecz3HPX8nR5v0JtDT+gzN 8fM3kAiAzjCHUAFWVAMAZLr5TXuoq4lGTTxvZbwTjZfyjCm7gIieCu8+qnPWh6hm 30NgA/0ZyEHG6I4rOWqPks4vZuD+wlp5XL8moBXEKfEVOMh2MCNDRGnvVHu1P3eD oHOooVMt9sWrGcgxpYuupPNL4Uf6B6smiLlH6D4tEg+qCxC17zABI5572XJTJ170 JklZJrPGtnkPrrKMamnN9MU4RjGmjh9JZPa7rKjZHyWP/z/CBrQ1RGFnIFdpZWVy cyAoRGFnIEFwdCBSZXBvc2l0b3J5IHYxLjApIDxkYWdAd2llZXJzLmNvbT6IWQQT EQIAGQUCP0kxPQQLBwMCAxUCAwMWAgECHgECF4AACgkQog5SFGuNeeYvDQCeKHST hIq/WzFBXtJOnQkJGSqAoHoAnRtsJVWYmzYKHqzkRx1qAzL18Sd0iEYEEBECAAYF Aj9JMWAACgkQoj2iXPqnmevnOACfRQaageMcESHVE1+RSuP3txPUvoEAoJAtOHon g+3SzVNSZLn/g7/Ljfw+uQENBD9JMT8QBACj1QzRptL6hbpWl5DdQ2T+3ekEjJGt llCwt4Mwt/yOHDhzLe8SzUNyYxTXUL4TPfFvVW9/j8WOkNGvffbs7g84k7a5h/+l IJTTlP9V9NruDt1dlrBe+mWF6eCY55OFHjb6nOIkcJwKxRd3nGlWnLsz0ce9Hjrg 6lMrn0lPsMV6swADBQP9H42sss6mlqnJEFA97Fl3V9s+7UVJoAIA5uSVXxEOwVoh Vq7uECQRvWzif6tzOY+vHkUxOBRvD6oIU6tlmuG3WByKyA1d0MTqMr3eWieSYf/L n5VA9NuD7NwjFA1kLkoDwfSbsF51LppTMkUggzwgvwE46MB6yyuqAVI1kReAWw+I RgQYEQIABgUCP0kxPwAKCRCiDlIUa4155oktAKDAzm9QYbDpk6SrQhkSFy016BjE BACeJU1hpElFnUZCL4yKj4EuLnlo8kc= =mqUt -----END PGP PUBLIC KEY BLOCK-----
用它来安装一些小软件,真的很给力哟,要不是试试 tmux!你会得到很大的惊喜,因为tmux真的太酷了……
...... server { listen 80; server_name tao.test.com; root /path/to/tomcat/webapps/ROOT; location / { proxy_pass http://tomcat1_servers; proxy_set_header Host $host; proxy_set_header X-Real-Ip $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } access_log /var/log/nginx/tomcat1_access.log main; } ....... upstream tomcat1_servers { server 192.168.8.8:8080; server x.x.x.x:x; } ......
[root@taolr:/]# cat test.txt abc def ghi jkl mno [root@taolr:/]# sed "s/abc/ABC/g" test.txt ABC def ghi jkl mno [root@taolr:/]# ln -s test.txt test1.txt [root@taolr:/]# ll ... lrwxrwxrwx. 1 root root 8 Jul 16 14:29 test1.txt -> test.txt -rw-r--r--. 1 root root 20 Jul 16 14:28 test.txt [root@taolr:/]# sed -i "s/abc/ABC/g" test1.txt [root@taolr:/]# ll ... -rw-r--r--. 1 root root 20 Jul 16 14:30 test1.txt -rw-r--r--. 1 root root 20 Jul 16 14:28 test.txt [root@taolr:/]# rm -rf test1.txt root@taolr:/]# ln -s test.txt test1.txt [root@taolr:/]# sed -i -c "s/abc/ABC/g" test1.txt //sed -c 注意点 [root@taolr:/]# ls -l ... lrwxrwxrwx. 1 root root 8 Jul 16 14:32 test1.txt -> test.txt -rw-r--r--. 1 root root 20 Jul 16 14:32 test.txt [root@taolr:/]# cat test1.txt ABC def ghi jkl mno [root@taolr:/]# cat test.txt ABC def ghi jkl mno
man sed
-c, --copy
use copy instead of rename when shuffling files in -imode. While this will avoid breaking links (symbolic or hard), the resulting editing oper-
ation is not atomic. This is rarely the desired mode; --follow-symlinks is usually enough, and it is both faster and more secure.
#!/bin/bash ps -C $1 -O rss |gawk '{ count ++; sum += $2 };\ END { count --; print "Number of processes=",count;\ print "Mememory usage per process =", sum/1024/count, "MB";\ print "Total memory usage =", sum/1024, "MB" ;};'
shell>./mem.sh java Number of processes = 3 Memory usage per process = 153.672 MB Total memory usage = 461.016 MB shell>./mem.sh oracle Number of processes = 71 Memory usage per process = 47.5638 MB Total memory usage = 3377.03 MB
Cpu(s):表示这一行显示CPU总体信息 0.0%us:us = user mode! 用户态进程占用CPU时间百分比,不包含renice值为负的任务占用的CPU的时间。 0.7%sy:sy = system mode! 内核占用CPU时间百分比 0.0%ni:ni = low priority user mode (nice)! renice值为负的任务的用户态进程的CPU时间百分比。nice是优先级的意思 99.3%id:id = idle task! 空闲CPU时间百分比 0.0%wa:wa = I/O waiting! 系统I/O等待输入输出的的CPU时间百分比 0.0%hi:hi = servicing IRQs! CPU硬中断时间百分比 0.0%si:si = servicing soft IRQs! CPU软中断时间百分比 0.0%st:st = steal (time given to other DomU instances)
① 生产环境下要存有谨慎,例如,修改了nginx的配置文件,一定要先“../nginx –t “ 检测语法,然后再“../nginx –s reload” 重新加载配置文件!注意细节!
② If 模块可以放到Location模块的里面,也可以放到location的外面,server的里面,注意有 If 和没有 if 对 rewrite 的区别!如下:
(rewrite前面也有#号~所以实验是不对的啦~)
没有if 的话,如果b3.html 文件不存在了,那么不跳转!
如果有 if 的话,如果 b3.html 文件不存在了,那么就不会跳转了!要注意细节:
Notice: 后来又测试了几次,发现它都会跳转过去!不过有没有If !b3.html 没有的话,也会跳转的!?
③ 几个小实验
3.1 index和autoindex
得到的实验结果是:
如果将目录 /www/server0 下面的 index.html文件更名或删除,访问的结果是:
另外,如果实验配置中,启动 autoindex,那么 agx_index失效之后,会启动 agx_autoindex模块
该配置下的实验结果是:
当然,如果找得到index.html,结果依然是:
。。。。。。
还有很多nginx的内容需要实践,最重要的是看需求是什么,然后用相应的配置。
极力推荐 agentzh的Nignx的教程
还算全面
1 crond服务未启动
crontab不是Linux内核的功能,而是依赖一个crond服务,这个服务可以启动当然也可以停止。如果停止了就无法执行任何定时任务了,解决的方法是打开它:
crond
或
service crond start
如果提示crond命令不存在,可能被误删除了,CentOS下可以通过这个命令重新安装:
yum -y install crontabs
2 权限问题
比如:脚本没有x执行权限,解决方法:
增加执行权限,或者用bash abc.sh的方法执行
3 路径问题
有的命令在shell中执行正常,但是在crontab执行却总是失败。有可能是因为crontab使用的sh未正确识别路径,比如:以root身份登录shell后执行一个/root/test.sh,只要执行
./test.sh
就可以了。但是在crontab中,就会找不到这个脚本,比如写完整:
/root/test.sh
4 时差问题
因为服务器与客户端时差问题,所以crontab的时间以服务器时间为准。
5 变量问题
有时候命令中含有变量,但crontab执行时却没有,也会造成执行失败。
转载这样我想起以前写的一篇新浪博客,与crontab相关,看第5小节的所谓的“思想的火花”吧!
shell> du --max-depth=1 这个参数就是目录层数的意思 shell> du -h --max-depth=1
①主机是win7共享wifi上网.
②edit--Virtual network editor--VMnet0--Bridged (connect VMs to directly to the external network) -- 下拉菜单 --选择 Bridged to 无线上网卡型号或者是 AutoMatic.
③虚拟机选择桥接.
-- 基本使用
tmux //运行C-b d //返回主 shell , tmux 依旧在后台运行,里面的命令也保持运行状态tmux attach //恢复tmux-- 快捷键
tmux 的使用主要就是依靠快捷键,通过 C-b 来调用。
C-b ? // 显示快捷键帮助
C-b C-o //调换窗口位置
C-b 空格键 //采用下一个内置布局
C-b ! // 把当前窗口变为新窗口
C-b " // 模向分隔窗口
C-b % // 纵向分隔窗口
C-b q // 显示分隔窗口的编号
C-b o // 跳到下一个分隔窗口
C-b 上下键 // 上一个及下一个分隔窗口
C-b C-方向键 //调整分隔窗口大小
C-b & // 确认后退出 tmux
C-b c // 创建新窗口
C-b ,//修改当前窗口名称
C-b 0~9 //选择几号窗口
C-b c // 创建新窗口
C-b n // 选择下一个窗口
C-b l // 最后使用的窗口
C-b p // 选择前一个窗口
C-b w // 以菜单方式显示及选择窗口
C-b s // 以菜单方式显示和选择会话
C-b t //显示时钟
几个常用命令:
shell>tmux list-session
shell>tmux new -s session-name
shell>tmux kill-session -tsession-name
shell>tmux attach -tsession-name
参考
tmux 配置 & 使用
CentOS安装使用配置tmux
为什么使用tmux
linux终端利器 tmux
进BIOS,开启CPU虚拟化的支持!
date 081915062013.00 (月日时分年.秒)
clock -w //写入BIOS
①Character encoding 选 "utf8"
②字体选择的时候可能要考虑.(--虽然在terminal中偶比较讨厌这种字体--)
for (( i = 0; i <= $(( $j - 1 )); i++ )) do { //内部逻辑... 注意变量的使用,最好封装到子shell中. } & //关键是这个 "&" 符号. done wait//等待所有子进程结束,不wait也OK,完了最后ps检查.
$ python -m SimpleHTTPServer
如果需要修改端口,如下操作即可:
$ python -m SimpleHTTPServer 8080