学习shell的第二天
程序 = 指令 + 数据
命令 变量
数据输入:键盘 -- 标准输入,但是并不是唯一输入方式;
--stdin
echo "123456" | passwd --stdin "username"
./useradd.sh a
./useradd.sh b
...
./useradd.sh < user.txt
while line ; do
循环体 $line
done < /etc/passwd
数据输出: 显示器 -- 标准输出,但是并不是唯一输出方式
ls /etc/ > a.txt
0 1 2
0 -- 标准输出
1 -- 标准输入
2 -- 错误输入输出(标准错误)
1、标准输出
> 覆盖重定向、非常危险
set -C 关闭覆盖重定向功能
>| 强制重定向
>> 追加重定向
不覆盖
2、标准输入
< tr 替换文件内容
tr set1 [set2] < file.txt
<< 将多行数据同时输入
cat >>a.txt<<EOF
>1
>2
>3
>EOF
3、错误输出
2> 2>>
扩展:不需要输出内容,只需要输出状态;
ls /etc/ > /dev/null 2> /dev/null
echo $? ($?--变量:上一条命令的执行状态)
if $?等于0;么?
OK--干!
否则
不
结束
/dev/null 黑洞文件 来什么吃什么(删除)
/dev/zero 吹泡泡
&> &>> == 2&>1
ls /etc/ &> /dev/null
前一个命令的执行结果交给后一个命令来执行;
【Linux思想:结合小功能实现大功能】
free -m | grep "^Mem" | cut -d' ' -f19
free -m | grep "^Mem" | awk '{print $3}'
tee /tmp/tee.out
如果没有文件,会创建,默认如果文件存在有内容,会覆盖;
将/etc/passwd文件中的前5行内容转换为大写后保存至/tmp/passwd.out文件中;
head -5 /etc/passwd | tr [a-z] [A-Z] > /tmp/passwd.out
who | tail -3 | cut -d' ' -f1 | tr [[:lower:]] [[:upper:]] | tee /tmp/who.out
-n tail -n 5 /etc/passwd == 简写 tail -5 /etc/passwd
-f 实时查看文件更新内容
tail -f /var/log/message
head 查看文件头部多少行(默认时行)
-n # 前#行, 简写 -#
取 10 - 20 行: head -20 /etc/passwd | tail -10
tr 替换
cut 切
转载于:https://www.cnblogs.com/dongxu2019/p/11353701.html
学习shell的第二天相关推荐
- 通过脚本案例学习shell(五) 通过创建DNS脚本一步一步教你将一个普通脚本规范到一个生产环境脚本...
通过脚本案例学习shell(五) 通过创建DNS脚本一步一步教你将一个普通脚本规范到一个生产环境脚本 版权声明: 本文遵循"署名非商业性使用相同方式共享 2.5 中国大陆"协议 ...
- 鸟哥的Linux私房菜-第10/11/12/13章(vim程序编辑器、学习bash、正则表达式与文件格式化处理、学习Shell Scripts)...
第10章 vim程序编辑器 可以将vim看做vi的进阶版本,vim可以用颜色或底线等方式来显示出一些特殊的信息. 为何要学习vim?因为: a. 所有的 Unix Like 系统都会内建 vi 文书编 ...
- 零基础学习Shell编程
一:起因 (0)也许由于一时的冲动使得你开始关注并学习shell编程:亦许由于是"道听途说"shell的威力很大:亦许由于shell编程的魅力:亦许由于作为一个coder的偏好:亦 ...
- 《Linux命令行大全》学习笔记1——学习 Shell
文章目录 前言 一.什么是Shell 二.导航 三.探索 Linux 系统 ls file less 四.操作文件和目录 通配符 mkdir cp mv rm ln 五.和命令打交道 六.重定向 标准 ...
- 《Linux命令行大全》重点笔记——第一部分 学习shell
<Linux命令行大全>重点笔记 第一部分 学习shell 第一章 shell是什么 1.3 简单命令 1.date:系统时间.日期. 2.cal:当月日历. 3.df:磁盘可用空间. 4 ...
- 学习 shell 有什么好书推荐?
linux命令行与shell脚本编程大全 这本书是入门级的读物,作为入门材料非常合适.可惜我入门的时侯没有遇到它.虽然很大 部头,其实一天也就能看完了.讲的东西比较全面,也比较简单.三颗星推荐. li ...
- 小白学习shell命令---自学笔记
Linux系统介绍. 什么是操作系统 首先,操作系统是一个软件,控制计算机整体运行的系统软件.可以管理计算机的硬件与软件资源.提供用户使用计算机的接口;提供了软件运行的环境.常用的操作系统有windo ...
- 【Linux命令】《鸟哥Linux基础》第十二章 学习shell脚本
第十二章 学习shell脚本 通常利用shell脚本完成服务器的检测工作,不涉及大量运算. 12.1 简单shell脚本介绍 12.2 简单shell脚本练习 12.2.1 简单范例 范例1:永远的开 ...
- (1)Shell 编程学习 Shell是什么?Shell的浅显原理 为什么要学Shell 及其第一个Shell脚本 CTF角度学习Shell
最近刷CTF题目的时候经常要用到Shell语言,但是自己并没有系统的学习,所以最近花了点时间学习一下,所以重新来梳理一下.对于稍微有一点编程语言基础的同学,能上手Shell其实不需要半小时(甚至更短) ...
- 「学习笔记-Linux」学习Shell Script
学习Shell Script Table of Contents 1 什么是Shell Scipt 1.1 程序书写 1.2 程序执行 2 简单Shell练习 2.1 例1 接收用户输入 2.2 例2 ...
最新文章
- [微信官方文档] 小程序-错误码信息与解决方案表
- UA MATH523A 实分析3 积分理论16 截口与单调类、特征函数的Fubini定理
- 实例谈谈this在JavaScript中如何工作
- Pygame 使用Djkstra广度搜索寻找迷宫(相对)最短路径
- Java内存泄漏的介绍
- nodejs入门_如何在NodeJS中使用套接字创建专业的Chat API解决方案[入门级]
- (124)FPGA面试题-ZYNQ的PS和PL端怎么交互的?
- iOS中利用UISearchBar实现搜索
- 猪肉新鲜度光谱特征指数构建及敏感性分析
- node.js常见问题之:解决npm install出错(Cannot find module ‘internal/util/types‘)
- Debian 中使用apt-get update 出现NO_PUBKEY 解决方法
- JAVA判断素数法+引用方法
- 易方机器人教育怎么样_易方机器人教育加盟费用
- 数控加工零件工艺性分析
- 显卡+cuda+cudnn+tensorflow安装教程
- 重新定义股票交易中的试错和复盘
- ModuleNotFoundError: No module named ‘official‘
- 安卓SDK和安卓版本的对应关系
- 独享ip和共享ip的区别
- DJI Care 行业无忧悦享基础版