Category: Linux
-
awk使用方法
awk算是一门很强大的语言,这里只有常用的一些命令 awk 的特性 awk 能按行,列读取文件 和其他语言一样,有变量,条件,循环 有计算和字符串操作 可以生成格式化的输出 语法要注意 awk ‘/search pattern1/ {Actions} /search pattern2/ {Actions}’ file search 可以是正则表达式 action 为要执行的动作 程序中间要用单引号引起来 匹配符 ~ 匹配 !~ 不匹配 特殊变量 NF 字段个数 NR 记录个数(行数) FS filed separator awk取出指定行,如第20行 cat /etc/hosts | awk ‘NR==20’ awk取出偶数行 awk ‘NR % 2 == 0’ /etc/passwd awk取出有3列的行 cat /etc/hosts | awk ‘NF==3’…
-
shell数组使用
shell数组的定义可以通过如下方式 (1) array=(var1 var2 var3 … varN) 直接写每个元素的value (2) array=([0]=var1 [1]=var2 [2]=var3 … [n]=varN) 写形式[下标]=value (3) 对每一个变量分开定义 array[0]=var1 arrya[1]=var2 … array[n]=varN 可以发现shell数组下标是确定的,有一个备份实践一下array的使用 #!/bin/bash arrayip=( [0]=192.168.1.15 [1]=192.168.1.16 ) arraypath=( [0]=/home/www/bbs [1]=/home/www/user ) i=0 while [ “$i” -lt “${#arrayproject[@]}” ] ; do rsync -a root@${arrayip[$i]}:${arraypath[$i]} /backup/ i=`expr $i + 1` done
-
tee命令
The tee utility copies standard input to standard output, making a copy in zero or more files. The output is unbuffered. 将date执行的命令保存到文件里 date > today.txt 将date的输出传到today.txt,且打印到屏幕上 date | tee today.txt 结合管道命令,实现更多功能,比如cron文件如下 */10 * * * * /usr/sbin/ntpdate 192.168.1.22 15 5 * * * touch /tmp/nginx/fcgi 现在需要将cron备份,并将ip更换为192.168.1.88,使用tee可实现备份并修改 crontab -l | tee cron.backup | sed ‘s/192.168.1.22/192.168.1.88/g’ |…
-
rabbitmq添加用户
现添加admin,密码admin,管理员权限 add_user rabbitmqctl add_user admin admin rabbitmqctl list_users rabbitmqctl set_user_tags admin administrator rabbitmqctl list_users 添加成功后赋权限 rabbitmqctl set_permissions -p / myuser “.*” “.*” “.*” 测试用户名密码正确性 curl -i -u ‘admin’:’123456′ rabbitmq.foobar.io:15672/api/whoami
-
time命令
time命令用于计算一个命令执行的时间 例如sleep 2运行时间是2秒钟 /usr/bin/time sleep 2 0.00user 0.00system 0:02.00elapsed 0%CPU (0avgtext+0avgdata 2656maxresident)k 0inputs+0outputs (0major+211minor)pagefaults 0swaps time后面可以加很多参数,如-o output.txt将结果输出到文件 /usr/bin/time -o output.txt sleep 2 -f “%P” command 可以按需求输出cpu使用率 /usr/bin/time -f “%P cpu percentage” find ./ -name abc -f “%M” command 可以按需求输出内存使用率, /usr/bin/time -f “%M Max Resident Set Size (Kb)” find ./ -name abc -f “%e” command 按秒输出命令执行的时间…
-
xargs使用方法
xargs用于接收输出并将其做为参数传给后面的命令,如 ls /etc/hosts | xargs cat 如果想要编辑多个eth文件 ls /etc/sysconfig/network-scripts/ifcfg-eth* | xargs vim 删除过滤到的文件 ls index.html* | xargs rm -f 接下来有一个很cool的功能,如果你按行在一个文件中记录了一些id号,想让一列变成两列,可以这样使用 ➜ ~ cat myfile.txt 1 2 3 4 5 6 ➜ ~ xargs -n 2 < myfile.txt 1 2 3 4 5 6 如果想要全部一行显示,-n后面加一个足够大的数字,则会显示一行 ➜ ~ xargs -n 10 < myfile.txt 1 2 3 4…