linux知识
1.vi 删除-dd i-insert 最后一行-G 第一行-g 查找-/ 替换-:s/old/new/g
2.wc -》 行数 字符数 字节数 -w 统计字数
3. sort -k 按某一列排序 -r reverse -n 按字符排
4.uniq -c 统计重复数量
5.head -4 取文件前4行
6.date --date="1 days ago"
date +"%Y%m%D %H%M%S"
7.ps 进程 -ef 所有进程 pid
8.netstat 端口 -anp连用
9.jps 装java后 看进程
10.top 看资源 1 切换cpu mem use condition
11.kill 杀进程 -9 强制杀
12.grep 查找字符 -v 不显示指定
13.sed 行处理命令 -i直接将结果写入目标文件 [address 指定第几行]s搜索/new/old/g 全局 2每一行的第2个匹配
d删除 s替换 i指定行前插入/a指定行后加入 如 sed '1a\\T' hello.txt 在第一行后面加入一行T
Sed [address]s/patern/replacement/flags
Address 指定第几行 patern需要替换的内容 replacement要替换为的内容
flags:第一种写数字1~512 如2代表匹配指定行的第2个匹配项;第二种g 全局匹配 第三种 不写 与写1相同
14.awk -F: 指定:作为分隔符
awk '{print $0}' file 表示打印全部内容 $1 第一列
awk '($1~ /world/){print $0}' file (第几行 ~匹配 !~不匹配)
ip 设置 vi /etc/sysconfig/network-scripts/ifcfg-eth0
onboot=yes
IPADDR=192.168.70.128
GATEWAY=
DNS1=
防火墙
centos6 service iptables stop [temp] chkconfig iptables off [perm]
centos7 systemctl stop firewalld [temp] systemctl disable firewalld [perm]
shell -x 单步执行
直接定义变量 name=1
当前进程以及子进程有效 export name=1
永久有效 vim /etc/profile ->export name=1 ->source /etc/profile
echo $0 紧跟着变量之后的第一个参数
echo $1 第二个参数
echo $? 返回0表示前一条命令执行成功 $# 返回输入了多少个参数
echo "$name" 解析变量的含义并当作命令执行
echo '$name' 不解析变量
echo '"$name"' 不解析变量
echo "'$name'" 解析变量并带上单引号,拼接sql字符串有用
shell中for循环
for((i=0;i<10;i++))
do
echo $i
done
for i in 1 2 3
do
echo $i
done
while循环
format1:
while test 2 -gt(大于) 1
do
done
format2:
while [ 2 -gt 1 ]
do
done
while [ "abc" = "abc" ]
do
done
shell中if
if [ $1 -eq 4 ]
then
echo one
elif [ $1 -eq 3 ]
then
echo two
else
echo "nn"
exit 100
fi
& 后台执行
nohup 每次关闭一个shell都会对正在执行的程序发出中断信号,nohup阻止信号发出
用法: nohup sh while11.sh &
文件描述符:
1 标准输出
2 标准错误输出
> 覆盖重定向
>> 追加重定向
ll >a.txt 将ll命令的输出内容 覆盖重定向到a.txt
默认 1>a.txt
nohup sh while11.sh >/dev/null 2>&1 &
/dev/null 黑洞,任何信息进去都会消失掉
重定向符后跟文件描述符时需加&
crontab
centos 6.7 service crond status / service crond stop
centos 7 systemctl status crond / systemctl start crond
vim /etc/crontab 在文件中设置定时任务:
* * * * * root sh showTime.sh >> /tmp/showTime.log
分 时 日 月 星期几
5个 * 号代表 每月每个星期每日每时每分钟执行一次
tail -f /var/log/cron 查看定时任务执行的情况