linux杂记

来源:互联网 发布:数据库代理 编辑:程序博客网 时间:2024/06/05 04:21

查看端口被什么程序占用

netstat -ntpl


iptables

进入/etc/sysconfig

查看iptables service iptables status

启动iptables service iptables start

关闭iptables service iptables stop

放开端口 iptables -I INPUT -p tcp --dport 3690 -j ACCEPT



ls -i:端口号



chmod 设置文件读取权限 chmod root=rwx,qiangzhang=x f1 chmod 775 f1 711所有者可读写,执行,其他用户只能执行 775所有者可以读写执行,其他只能读和执行 777所有用户有读写执行权限 
775代表拥有者权限 组权限 其他用户权限


1是执行2是写入4是读取:1)读写执行权限4+2+1 为7 2)读写权限4+2=6 3)读执行权限 4+1=5 4)写执行权限 2+1=3


chown 通过chown命令改变文件的用户或者组


ps -ef|grep 端口号或进程号


mkdir 创建目录


touch 创建文件


find -name '*.*' | xargs grep -l '1904022' 查找当前目录下所有包含关键字1794022的文件


su -u root 密码


vi 编辑文件


vi 删除多行 esc :3,5d


esc :  wq! 保存退出


#!使用哪种shell命令


#!/bin/bash


#注释


wc字符个数


替换字符 ${test:-"is null"} 空时输出但不替换变量
${test:+"is not null"} 不空时输出但不替换
${test:?"is null"}判断是否为空
${test:="replact"}替换


i 修改文件


dd输出行


dd -3 删除三行


vim查看文件


rm -rf f1 删除文件


mv f1 f1 移动文件 修改文件


date查看日期


paste 一行一行拼接
paste -d '=' 指定拼接分隔符
paste -s 单文件转为一行,然后cat


cut -c -3 -b 取指定区域


split ';'


join 相同的段拼接


cat 显示文件 链接文件在一个文件后面显示另一个文件


sort 排序 -r 倒序 -o 输出 -b 忽略空格 -f 忽略首字母大小写


sort|uniq -c 取重复的,并统计


more 分页显示 -3 每页三行 +5从第五行开始 -q退出


less


tail -f 显示后多少条


head -f 显示前多少条


管道|


重定向> 输出 <输入


exit 0退出当前shell,显示成功 


pwd 显示全路径


dirname 显示当前文件绝对路径+文件名的路径


basename 显示当前文件绝对路径+文件名的文件名


$0 显示绝对路径+文件名


``反引号,可执行命令


''不可执行命令,不可饮用变量,不可显示其他符号


“”可饮用变量,可显示其他符号


函数function f()


数组 myarr=(1 2 3)
变量饮用$a ${a} ${myarr[@]} ${myarr[1]} 
长度${#(a)} ${#(myarr[@])} $myarr取第一个


f 1 6 'ab'


$? 饮用返回值


return 返回值 否则默认最后一行返回


test判断条件是否成立
数字 ne eq lt le ge gt
字符串 == != z n
文件 !e !w !r


if() then fi   if() then else fi if() then elif() then elif() then else fi


注释 #


for var in ${arr[@]} do done


for var in do {}& done


sleep 3睡眠3秒


&后台进程,后台执行


wait 等待所有后台执行后再往下执行


read var 从控制面板读取


while() do done


expr 表达式计算 用``反引号包起来,特殊符号如*和/用\反斜杠
let c=($c * 9)
#!/bin/bash
c=2
let c=($c * 9)
echo "$c"
v=3
echo "`expr $v \* 3`"


#!/bin/bash
c=8
v=$(($c * 9))
echo "$v"




let 表达式计算


case var in 1) ;;2) ;;*) ;; esac


break


$1,$2function参数 或者shell脚本传递的参数


date -d $d +%Y%m%d 日期格式化


grep -q


if(NR > sindex && NR < eindex && flag != 0 ){echo -e "\033[31m$0\033[0m"}


echo 输出


shell可使用linux命令


awk行解析器
awk 'patter {action}' f1
模式{动作1;动作2}


awk -f awka1 f1
awk -F';' awka1 f1
awk  ‘patter’ f1 打印整行
相当于awk 'patter {print}' f1或者 awk 'patter {print $0}' f1
$0 代表整行 $1代表第一段
默认以空格或者制表符\t分段
NF 表示一行分为多少段 awk '/abc/ {print NF,$NF}' f1
NR 每一行的行号awk '/abc/,/bcn/ {print NR}' f1
字符串处理
length 长度 awk '/abc/ {print length($1)}' f1
index 位置 awk '/abc/ {print index($2,"zhang")}' f1
match 匹配 awk '/abc/ {print match($2,"zhang")}' f1
sub 替换 awk '/abc/ {print sub("zhang","wang")}}' f1 不会改变文件
substr 截取 awk '/ab/ {substring($0,12);print}' j1
split 分割


 
0 0
原创粉丝点击