Linux Shell 小脚本

3 篇文章 0 订阅

1、读取文本跳过前2行,打印第1列,去掉字符串的双引号,保存文件

cat aaaa.csv | awk -F "," 'NR <= 2 {next} {print "aliyun",$1}' | sed 's/\"//g' > bbbb.csv
cat aaaa.csv | while read line;   do  echo $line | awk -F "," '{print "echo "$1 }' | sed 's/\"//g'  >> cccc.csv   ; done;

from: other

bash语法、rc、test

while [ 1 ]; do sleep 1; ll; done # 无限循环
while [ $i -lt 10 ]; do echo $i;let "i=$i+1"; done # 有限循环
cat raw.txt | while read line; do echo $line; done # readline
until [ 1 = 0 ]; do sleep 1; ll; done # 无限循环,另一中语义
for i in /media/m* ; do ls -l $i; done  # 与目录资源结合
if [ 1 -eq 1 ]; then ll ;fi # test常用判断
if [[ 0 -eq 0 && 1 -eq 0 ]]; then ll ;fi  ## || or  多条件test的写法1  && and  (注意2层中括号)
if [ 0 -eq 0 -a 1 -eq 0 ]; then ll ;fi    ## -o or  多条件test的写法2  -a and
if [ ! -e /tmp/111 -a -z "$a" ]; then ll ;fi   ## 不存在111文件 且a变量长度为0 则执行ll(对应的否定是)

文件内容查看、加工(vi、cat、grep、awk、tr、sed)

ps -ef | grep java | grep -v eclipse # 查看进程,筛选出java的,排除eclipse的
echo helloworld | tr -d "o"  # 删除字符o,输出 hellwrld
echo 'a:b:c' | tr -s ':' '*'  # 替换字符:为*,输出 a*b*c
echo 'a:b:c' | awk -F ':' '{print $1 "+" $3 "+" $2}' # 按:切分后,按下标调整顺序,空格分割输出。a+c+b
awk -F':' '{print $1}' temp2.log | awk '{ arr[$1]++ } END { for( no in arr) { print no , arr[no] } }' | sort -n -t" " -k 2 -r # 一句话实现group by,这条不细说,自己研究
echo 'a:b:c' | sed -e 's#:#*#g'  # 替换字符:为*,输出 a*b*c

sudo、top、ps、vmstat、iostat、sar、zip

sudo su admin # 切换为admin身份
sudo -u admin kill -9 xxx  # 以admin身份执行kill命令
ps -ef # 查看java进程
zip -9 -p haha -r bak.zip src # 以9级压缩比、haha为密码,压缩src目录,压缩后的文件是bak.zip

ssh、scp、rsync

ssh -p 1022 root@192.168.1.200  # 从1022端口,以root身份登录到远程
scp -P 1022 openwrt-*  root@192.168.1.200:/tmp/  # 通过1022端口,把openwrt开头的多个文件,传输到远程机器上的tmp目录,以root做为鉴权
rsync -avz -e 'ssh -p 1022' openwrt-* root@192.168.1.200:/tmp/ # 效果基本同上,但是只是增量同步
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值