shell编程入门
来源:互联网 发布:网络信贷 编辑:程序博客网 时间:2024/06/13 00:15
Shell 简介
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。
Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。
Shell 脚本
Shell 脚本(shell script),是一种为 shell 编写的脚本程序。
业界所说的 shell 通常都是指 shell 脚本,但读者朋友要知道,shell 和 shell script 是两个不同的概念。
由于习惯的原因,简洁起见,本文出现的 "shell编程" 都是指 shell 脚本编程,不是指开发 shell 自身。
Shell 环境
Shell 编程跟 Java、PHP 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。
linux 的 Shell 种类众多,常见的有:
- Bourne Shell(/usr/bin/sh或/bin/sh)
- Bourne Again Shell(/bin/bash)
- C Shell(/usr/bin/csh)
- K Shell(/usr/bin/ksh)
- Shell for Root(/sbin/sh)
- ……
本教程关注的是 Bash,也就是 Bourne Again Shell,由于易用和免费,Bash 在日常工作中被广泛使用。同时,Bash 也是大多数Linux 系统默认的 Shell。
在一般情况下,人们并不区分 Bourne Shell 和 Bourne Again Shell,所以,像 #!/bin/sh,它同样也可以改为 #!/bin/bash。
#! 告诉系统其后路径所指定的程序即是解释此脚本文件的 Shell 程序。
#!/bin/bash必须写在脚本文件第一句
运行 Shell 脚本
作为可执行程序
将代码保存为 test.sh,并 cd 到相应目录:
注意,一定要写成 ./test.sh,而不是 test.sh,运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的当前目录通常不在 PATH 里,所以写成 test.sh 是会找不到命令的,要用 ./test.sh 告诉系统说,就在当前目录找。
基本命令
touch xxx 新建一个名为"xxx"的文件夹
tar -zcvf xx.tar.gz /xxx 打包命令
rm -rf xxxxx -r 就是向下递归,不管有多少级目录,一并删除 -f 就是直接强行删除,不作任何提示的意思
别名与快捷键
命令生效顺序:
常用快捷键:
输出重定向
标准输入输出
标准输出重定向
标准错误输出重定向
正确输出、错误输出同时保存
Tip:ls &>/dev/null /dev/null相当于一个黑洞,垃圾站,将ls的输出结果丢入其中,没有任何输出
输入重定向
管道符 '|'
多命令顺序执行
通配符
特殊符号
- TCSH shell 编程入门
- TCSH shell 编程入门
- csh shell编程入门
- TCSH shell编程入门
- shell编程快速入门
- shell编程入门
- shell编程:入门例子
- Linux Shell编程入门
- linux Shell编程入门
- shell编程入门指南
- Linux Shell编程入门
- Shell扩展编程入门
- 【原创】shell编程入门
- Linux Shell编程入门
- Shell编程入门
- Linux Shell编程入门
- Linux Shell编程入门
- Linux Shell编程入门
- POJ 2184 Cow Exhibition(01背包)
- STL空间配置器
- 大数据学习笔记:Linux基础复习
- jquery layui
- Ubuntu16.04 安装流程 -3 编程-计算机视觉(201705)
- shell编程入门
- 优秀开源项目之四:CrashRptProbe,查询程序奔溃的利器
- HDU 1205(鸽巢原理)
- 可爱的中国
- 突然代码片不能创建了,只能这么写了.......
- javascript模块化编程
- ASP.NET MVC – 视图
- 微信返回键的监控
- 【洛谷】P1002-过河卒