shell脚本学习(1)入门
1脚本语言和编译型语言的区别:编译型的要从源码转换成目标代码,多运行于底层。脚本语言有解释器读入程序代码, 转成内部形式再执行。
2脚本语言,写的时间快,一般有awk,pwel, python Ruby和shell
3 使用who 和 wc算登录人数

4 用cat创建文件, 写入程序,修改权限,执行程序

5 创建shell脚本,
#! 用来提示内核扫描其他部分, 是否存在执行程序的解释器的完整路径
#! /bin/csh -f cshell的解释器
shell 脚本通常开头是
#! /bin/sh
6 shell 识别3中基本命令
内建命令:cd read echo 等
shell函数:功能健全的一系列代码
外部命令 :用新进程执行shell的副本
7 变量名定义同c语言变量的语法
8 变量赋值
first=isaac middle=bashevis last=singer
9 变量的值获取,在变量名 前加$
fullname="$first $middle $last"
10 echo , printf输出
echo “enter 有人name”
printf“first program '%s, %s' \n" hello world

11 重定向和管道
用<改变标准输入 (输入file中数据当做缓存数据, 删除缓存中的 ‘回车’符号)
tr -d '\r\n' < file.txt
用>改变标准输出 (输入file中数据当做缓存数据, 删除缓存中的 ‘回车’符号, 输出修改后的数据到 dest_file)
tr -d '\r\n' <file.txt > dest_file.txt
用>>附加到文件中 (输入file中数据当做缓存数据, 删除缓存中的 ‘回车’符号, 输出修改后的数据到 dest_file尾部, 如果dest_file不存在,就创建一个)
tr -d '\r\n' <file.txt >> dest_file.txt
用 | 建立管道, 能把两个执行程序连接到一起, 程序1的结果作为程序 2的输入
(输入file中数据当做缓存数据, 删除缓存中的 ‘回车’符号, 对数据进行排序, 输出修改后的数据到 dest_file尾部, 如果dest_file不存在,就创建一个)
tr -d '\r\n' <file.txt > | sort > dest_file.txt
12 位桶,系统的垃圾桶, /dev/null
13 其他控制终端或者串口 /dev/tty
14 自定义的bin目录,添加到$path的方法
.profile 就在home的用户目录下

.profile
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package. # the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask # if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi # set PATH so it includes user's private bin directories
PATH="$HOME/bin:$HOME/.local/bin:$PATH"
永久生效的方法: 在.profile中加入 PATH= $PATH:$HOME/bin
一次性生效的方法: 在shell中 PATH= $PATH:$HOME/bin
15 显示脚本参数,0-9 echo $1
10 以上 echo ${10}
16本地化环境
yuyuyu@ubuntu:/usr/share/locale/zh_CN/LC_MESSAGES$
locale -a 列出所有locale 名称

shell脚本学习(1)入门的更多相关文章
- Shell 脚本学习资料搜集
Shell文档 ChinaUnix上大神“網中人”总结的Shell十三问,强烈推荐,这本书讲得比较精炼,而且都是一些Shell学习中容易把握不住的一些细节难点.每一问都写得非常精彩.ChinaUnix ...
- 转 shell脚本学习指南
shell脚本学习指南 以下八点不敢说就能成为你shell脚本学习指南de全部,至少可以让你编写出可靠的shell脚本. 1. 指定bashshell 脚本的第一行,#!之后应该是什么?如果拿这个问题 ...
- 笔记——shell脚本学习指南
<shell脚本学习指南>机械工业出版 ISBN 987-7-111-25504-8 第2章 2.4 初级陷阱 1.当今的系统,对#!这一行的长度限制从63到1024个字符都有,尽量不要超 ...
- 学习笔记之Shell脚本学习指南 & sed与awk & 正则表达式
正则表达式_百度百科 http://baike.baidu.com/link?url=ybgDrN2WQQKN64_gu-diCqdeDqL8LQ-jiQ-ftzzPaNUa9CmgBRDNnyx50 ...
- Shell脚本学习 - 运算符
继续shell脚本学习.上一篇是基本数据类型和语法的总结,这一篇是运算相关的操作. 运算符 bash不支持简单的数学计算,需要依赖其他命令实现. expr可以代为实现. # 表达式一般这么写 ` + ...
- shell脚本学习总结02--数组
bash同时支持普通数组个关联数组,普通数组只能使用整数作为数组的索引,关联数组可以使用字符串作为数组的索引. 数组的定义方法: 在单行中使用一列值定义一个数组 [root@new ~]# array ...
- Shell脚本学习指南笔记
Shell脚本学习指南 作者:Danbo 2015-8-3 脚本编程语言与编译型语言的差异 许多中型.大型的程序都是用编译型语言写的,例如:C.C+.Java等.这类程序只要从源代码(Source C ...
- shell脚本学习之6小时搞定(1)
shell脚本学习之6小时搞定(1) 简介 Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本. Unix/Linux上常见的Shell脚本解释器有bash.sh.csh.ksh等,习惯上把 ...
- Shell脚本学习指南 [ 第一、二章 ] 背景知识、入门
摘要:第一章介绍unix系统的发展史及软件工具的设计原则.第二章介绍编译语言与脚本语言的区别以及两个相当简单但很实用的Shell脚本程序,涵盖范围包括了命令.选项.参数.Shell变量.echo与pr ...
- Shell脚本学习入门(一)
1.Shell脚本是解释型的语言. 2.Shell脚本建立的基本步骤: 3.Shell脚本文件的第一行一般可以是:"#! 路径名 -(选项)", 为了要使Shell脚本有移植性,请 ...
随机推荐
- mybatis框架之装饰模式
学习开源框架源码,除了储备点知识以便于与面试官互相忽略之外,我想最重要的还是去学习大神如何写代码,如何做到职责单一,如何做到可扩展等... 本篇,试着总结一下mybatis在缓存模块使用到的装饰模式. ...
- 多线程模拟生产者消费者示例之wait/notify
public class Test { public static void main(String[] args) throws InterruptedException { List<Str ...
- SSM + MySQL批量删除操作
最近项目中有个购物车功能需要能够选中商品,然后批量删除的操作,也可以单个删除,其实代码很简单就能实现. 这里需要注意的就是你前端是怎么传值的,我这里采用的数组的形式,用 ‘,’隔开. 然后控制层代码如 ...
- 专为渗透测试人员设计的 Python 工具大合集
如果你对漏洞挖掘.逆向工程分析或渗透测试感兴趣的话,我第一个要推荐给你的就是Python编程语言.Python不仅语法简单上手容易,而且它还有大量功能强大的库和程序可供我们使用.在这篇文章中,我们会给 ...
- C#面向对象笔记
1.面向对象核心概念 (1)类是抽象,对象是实例,new一个对象会分配一块堆空间,对象指向该空间的地址,将对象赋值给另一个对象,只是将地址赋给它,指向的是同一块空间. e.g. class Car { ...
- (60)c# com com+ dcom
一.创建COM组件 1.创建项目 2.设置使程序集可见 AssemblyInfo.cs中flase改为ture 或者 项目属性 设置可见 3.Guid生成器 在开始程序下能够找到Guid生成器 每次都 ...
- 小白学 Python 爬虫(26):为啥上海二手房你都买不起
人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...
- 如何设置Windows操作系统打印机与xlpd连接
Xlpd是Xmanager中负责远程打印的软件,除了打印远程文件,它还具备很多功能,本集将具体讲解Xlpd的主要功能. 主要功能如下: 1. 支持LPD协议(RFC1179) 在RFC1179中定义 ...
- Spring Boot & Redis 用起来真简单!
作者:java_老男孩 https://blog.51cto.com/14230003/2368721 Redis 是目前业界使用最广泛的内存数据存储.相比 Memcached,Redis 支持更丰 ...
- 什么是Spring Boot?
什么是Spring Boot? Spring Boot是Spring开源组织下的子项目,是Spring组件一站式解决方案,主要是简化了使用Spring的难度,简省了繁重的配置,提供了各种启动器,开发者 ...