linux shell脚本攻略读书笔记

目前读了一半最让我感动的是作者对linux的热爱,不得不提他只是一个大二的学生,我已忘记我大二在干什么。但从读感来说我觉得这书挺难看的,故摘录一些看的不清不楚的命令补充资料于此。

1.xargs

xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。它能够将标准输入或管道中的数据转换为特定命令的命令行参数,也可以将单行或多行文本输入转换为其他格式的数据,比如单行变多行或者多行变单行。xargs的默认命令是echo,默认分隔符是空格。通过xargs的处理,换行和空白都会被替换为空格。
原文链接:https://blog.csdn.net/xuzhangze/article/details/80931542

2.expr

expr命令是一个手工命令行计数器,用于在UNIX/LINUX下求表达式变量的值,一般用于整数值,也可用于字符串。

语法:expr 表达式

表达式说明:
用空格隔开每个项;
用 / (反斜杠) 放在 shell 特定的字符前面;
对包含空格和其他特殊字符的字符串要用引号括起来
原文链接:
https://www.runoob.com/linux/linux-comm-expr.html

3.except

expect是一个自动化交互套件,主要应用于执行命令和程序时,系统以交互形式要求输入指定字符串,实现交互通信。

expect自动交互流程:

spawn启动指定进程—expect获取指定关键字—send向指定程序发送指定字符—执行完成退出.
例:
ssh登录远程主机执行命令,执行方法 expect 1.sh 或者 ./1.sh

#!/usr/bin/expect

spawn ssh saneri@192.168.56.103 df -Th
expect "*password"
send "123456\n"
expect eof

原文链接:
https://www.cnblogs.com/saneri/p/10819348.html

4. cat

作用:组合文件。
cat > file 从键盘读取数据,创建新文件或者替换已有文件
原文链接:
https://blog.csdn.net/weixin_38481963/article/details/88061855

5.read

Linux read命令用于从标准输入读取数值。

read 内部命令被用来从标准输入读取单行数据。这个命令可以用来读取键盘输入,当使用重定向的时候,可以读取文件中的一行数据。
例:简单读取

#!/bin/bash

#这里默认会换行  
echo "输入网站名: "  
#读取从键盘的输入  
read website  
echo "你输入的网站名是 $website"  
exit 0  #退出

原文链接:
https://www.runoob.com/linux/linux-comm-read.html

5.grep

通过正则表达式匹配文本文件(global regular expression)
例1、在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行。此时,可以使用如下命令:

grep test *file 

原文链接不粘了

6.script

script 是一个神奇命令,script 能够将终端的会话过程录制下来,然后使用 scriptreplay 就可以将其录制的结果播放给他人观看。script 的好处就在于你在终端中的所有操作、敲过的命令和打印出的结果它都可以原原本本地进行录制。可以应用于教学、演示、审计。

原文链接:
https://www.cnblogs.com/cheyunhua/p/11136161.html

7.awk

awk 是一种处理文本文件的语言,是一个强大的文本分析工具。

awk 其实不仅仅是工具软件,还是一种编程语言。

awk 是以文件的一行内容为处理单位的。awk读取一行内容,然后根据指定条件判断是否处理此行内容,若此行文本符合条件,则按照动作处理文本,否则跳过此行文本,读取下一行进行判断。

基本用法:
  condition:条件。若此行文本符合该条件,则按照 action 处理此行文本。不添加条件时则处理每一行文本;

action:动作。按照动作处理符合要求的内容。一般用于打印指定的内容信息;
例:

echo "aa bb  cc dd  ee ff" | awk  '{print $1}'
aa
echo "aa bb l cc dd l ee ff" | awk -F 'l' '{print $1}'
aa bb 
echo "aa bb  cc : dd  ee ff" | awk -F ':' '{print $1}'
aa bb  cc 

原文链接:
https://www.cnblogs.com/virgosnail/p/11103651.html

8.关于链接文件

硬链接和软连接 已经看过很多遍了…
参考链接:
https://www.cnblogs.com/2bjiujiu/p/7955435.html

9.sed

Linux sed 命令是利用脚本来处理文本文件。

sed 可依照脚本的指令来处理、编辑文本文件。

Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。

sed -e 4a\newLine testfile #在testfile第四行后添加newLine

转载:https://www.runoob.com/linux/linux-comm-sed.html

10. curl

在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具。

语法:# curl [option] [url]
例:
查看网页源码

curl www.sina.com

转载:https://blog.csdn.net/binglong_world/article/details/80755193

11.lynx

lynx命令是纯文本模式的网页浏览器,不支持图形、音频、视频等多媒体信息

lynx语法:lynx [options] [file]
POST方式:

转载:https://blog.csdn.net/u011641885/article/details/45459199

12.rsync

rsync是可以实现增量备份的工具。配合任务计划,rsync能实现定时或间隔同步,配合inotify或sersync,可以实现触发式的实时同步。

rsync可以实现scp的远程拷贝(rsync不支持远程到远程的拷贝,但scp支持)、cp的本地拷贝、rm删除和"ls -l"显示文件列表等功能。但需要注意的是,rsync的最终目的或者说其原始目的是实现两端主机的文件同步,因此实现的scp/cp/rm等功能仅仅只是同步的辅助手段,且rsync实现这些功能的方式和这些命令是不一样的。
转载:https://www.cnblogs.com/weikui/p/10584599.html

13.ftp服务器

FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。 FTP是File Transfer Protocol(文件传输协议)。顾名思义,就是专门用来传输文件的协议。简单地说,支持FTP协议的服务器就是FTP服务器。

14.crontab

crontab:定时任务的守护进程,精确到分,设计秒的我们一般写脚本 -->相当于闹钟
https://www.cnblogs.com/ftl1012/p/crontab.html

最后还有一点mysql的内容,先到这吧。
【完】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值