Shell概述1
Shell概述1
脚本文件内容(vim ex2)
#!/bin/bash
#If no arguments,then listing the current directory.
#Otherwise,listing each subdirectory.
if test $#=0
then ls .
else
for i
do
ls -l $i | grep '^d'
done
fi
#如果Shell脚本执行过程中没有参数,就列出当前工作目录的内容,如果有参数的话,就遍历参数,列出指定目录下的所有文件内容。
#后跟的内容为注释,#!/bin/bash例外,它表示当前脚本要要/bin/bash解释执行。
test后是测试条件,在Shell脚本中以$符号开始后面跟着的字符串通常都会被当做变量处理,#是一个特殊字符,一般表示数量,$#表示这个脚本执行过程中的参数个数。
无参数执行: ./ex2
有参数执行: /ex2 . ..
Shell预先定义的特殊变量及其含义
- $# 命令行上参数的个数,但不包含shell脚本名
- $? 上一条命令执行后的返回值
- $$ 当前进程的进程号
- $! 上一个后台命令对应的进程号
- $* 表示在命令行中实际给出的所有实参字符串
- $@ 它与$*基本功能相同
特殊字符
单引号
- 单引号里的都当做普通字符处理
双引号
除了"`","$","\" 外都当做普通字符处理;
"`"为命令替换(英文模式下TAB上面那个键),倒引号括起来的字符串会被shell解释为命令行
"$"为变量替换
"\"为转义
输入/输出重定向
输入重定向
bash < ex2 (用bash执行ex2命令)
输出重定向
who > w.txt(将who命令的结果直接输入到w.txt,如果w.txt之前存在内容,则会被覆盖)
who >> w.txt(将who命令的结果输入到w.txt原有内容之后)
注释
- 通常#后跟的即为注释
管道线
- 使用"|",管道线之前的命令结果作为管道线之后命令的输入
例:cat w.txt | wc -l(查看w.txt的内容并统计行数)
- 使用"|",管道线之前的命令结果作为管道线之后命令的输入
后台命令
- 使用"&",在需要后台执行的命令后跟&即可
例:apt-get update&
- 使用"&",在需要后台执行的命令后跟&即可
Shell概述1的更多相关文章
- shell概述与echo命令
一.Shell概述 1.什么是shell? 由此可见shell是用户与系统进行交互的接口,通过执行各种命令来完成时间处理与调度. 2.shell分类 Shell类别 易学性 可移植性 编辑性 快捷性 ...
- Shell概述
一,Shell原理
- Linux系列教程(二十)——Linux的shell概述以及如何执行脚本
从这篇博客开始,我们将进入Linux的shell脚本的学习,这对于Linux学习爱好者而言是特别重要的一节,也是特别有意思的一节,shell 脚本就像我们知道的Java,php类似的编程语言一样,通过 ...
- HoloLens开发手记 - HoloLens shell概述 HoloLens shell overview
使用HoloLens时,shell是由你周围的世界和来自系统的全息图像构成.我们将这种空间成为混合世界(mixed world). shell包含了一个可以让你将全息图像和应用放置在世界中的开始菜单( ...
- 【第一章】Shell 概述
一.什么是Shell? shell是一个命令解释器,它不仅包含大量的命令以实现操作系统的对话,还可以实现定义变量.条件判断.循环控制.函数调用等功能. 作用:解释执行用户输入的命令及程序等. 从键盘输 ...
- Shell 概述、截取字符操作等
Shell 是用C语言编写的程序,便于用户与Linux内核系统进行交互. Linux的Shell种类众多,常见的有: Bourne Again Shell (/bin/bash) Bourne She ...
- Linux学习笔记 (八)Shell概述
一.什么是Shell? Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动,挂起,停止甚至是编写一些程序.Shell还是一 ...
- hbase shell概述
hbase shell-general(常规指令):http://www.cnblogs.com/husky/p/6374867.html hbase shell-ddl(表定义指令):http:// ...
- Shell 01 shell概述
1.查看shells:/etc/shells /bin/sh /bin/bash /sbin/nologin /usr/bin/sh /usr/bin/bash /usr/sbin/nologin / ...
随机推荐
- Nacos作为配置中心时,多个服务共用一个dataId的配置
写在前面 本文是对我之前一篇文章<Spring Cloud+nacos+Feign,实现注册中心及配置中心>的补充.此文章中简单写了如何将Nacos作为配置中心.在使用配置中心时,我们会遇 ...
- 聊聊算法——BFS和DFS
如果面试字节跳动和腾讯,上来就是先撕算法,阿里就是会突然给你电话,而且不太在意是周末还是深夜, 别问我怎么知道的,想确认的可以亲自去试试.说到算法,直接力扣hard三百题也是可以的,但似乎会比较伤脑, ...
- Vue + Element-ui实现后台管理系统(3)---面包屑 + Tag标签切换功能
面包屑 + Tag标签切换功能 有关后台管理系统之前写过两遍博客,看这篇之前最好先看下这两篇博客.另外这里只展示关键部分代码,项目代码放在github上: mall-manage-system 1.V ...
- 【Spark】一张图看懂Spark的运行架构,以standAlone模式为例
- spark on yarn安装
网上关于spark的安装说明很多了,这里就以spark pre-build with user provided hadoop 安装包为例讲解, 下载spark pre-build with us ...
- Semaphore和AQS
Semaphore意思的信号量,它的作用是控制访问特定资源的线程数量 构造方法: public Semaphore(int permits) public Semaphore(int permits, ...
- 给出两个单词(start和end)与一个字典,找出从start到end的最短转换序列
问题 给出两个单词(start和end)与一个字典,找出从start到end的最短转换序列.规则如下: 一次只能改变一个字母 中间单词必须在字典里存在 例如: 给出 start = "hit ...
- 暴力破解-HTTP Basic认证
0x01 HTTP Basic认证介绍 基本认证 basic authentication ← HTTP1.0提出的认证方法 基本认证步骤: 1. 客户端访问一个受http基本认证保护的资源. 2. ...
- 对background: url("~assets/img/common/collect.svg") 0 0/14px 14px 的理解
需求:给收藏数字前面通过::before伪元素添加图标 相关代码: .goods-info .collect { position: relative; } .goods-info .collect: ...
- .Net Core3.0 WebApi 项目框架搭建:目录
一.目录 .Net Core3.0 WebApi 项目框架搭建 一:实现简单的Resful Api .Net Core3.0 WebApi 项目框架搭建 二:API 文档神器 Swagger .Net ...