csh 逻辑_linux之shell基本认知操作和简单shell练习

本文介绍了Linux shell的作用,详细讲解了shell编程的基础,包括shell的版本、命令别名、环境变量、脚本执行方式、预定义变量、用户自定义变量以及基本的算术运算。此外,还提供了shell编程的实例,如查找文件软件包名字、创建用户、删除僵尸进程等,帮助读者深入理解shell的逻辑与操作。
摘要由CSDN通过智能技术生成

shell编程:

1.Shell的作用

命令解释器,“翻译官”。介于操作系统内核与用户之间,负责解释命令行。

shell功能非常强大,除负责解释名另外,还可以将多个命令组合起来,完成复杂的任务,这就是SEHLL编程。

CentOS7之前(Linux核心3.0之前)的各版本都是通过shell程序进行服务控制的。

1.编译器

将系统外围使用高级语言(如:JAVA、C#等)编写的程序翻译成系统内核及硬件能够识别的低级程序或机器语言程序的工具,称为编译器

编译器其实也是一个程序,不同操作系统的编译器也不同。

shell是另外一种程序的执行方式,解释执行。

shell有很多的版本,如:sh、ksh、csh、bash等,RHEL(redhat、CentOS)常用的是bash

2.可以执行的命令(linux系统中)

二进制程序

shell程序

函数

别名

别名

命令别名

功能:给一个复杂的、较长的命令起一个简化的代用命令

alias  jinWang="cd  /etc/sysconfig/network-scripts"

alias---查看系统中所有命令别名

unalias  jinWang---取消别名

传统的shell有3种:

Born SHELL-------------------sh

Korn SHELL ------------------ksh

C SHELL   -------------------csh

linux系统支持多种shell。但常用的是bash -- Born Again Shell。Linux系统中的/etc/shells文件记录了系统支持的有效登录Shell。

每一种shell都支持如:

重定向

管道

作业控制jobs  fg bg &等功能,这些功能可用于shell程序控制,即shell编程。

3.切换shell环境

Linux支持的shell都可以使用。可以随时切换

临时切换:

直接执行其他Shell程序,示例ksh、zsh等

永久更改:

更改用户登录Shell:

需修改/etc/passwd文件中用户记录的最后一个字段

或执行:

usermod -s  Shell程序路径  用户名

5527aee2100426556b191df261ac4085.png

最简单的shell编程就是shell命令的罗列:

my_prog

date

pwd

ls -l

abc

whoami

echo "My test messages"

脚本基本编写:

以"#"开头的行shell不执行,都是注释,但第一行是"#!"例外。

#!/bin/bash---指定脚本的shell

4.脚本的执行:

1.方式一:通过shell,调用脚本

bash  /shell/my_prog

特点:脚本可以没有执行权限

2.方式二:有执行权限,缺省的shell或指定的shell("#!")

/shell/my_prog---输入脚本的绝对路径,执行脚本,前提要求:脚本必须有执行权限

cd  /shell--进入脚本所在目录

./my_prog--- . 表示当前路径

说明:

系统中的shell是一个程序,为了实现多任务处理,shell在执行命令时,并不是自己执行,而是再调用另一个shell去执行,被调用的shell称为子shell。而调用用子shell的shell称为子shell的父shell。输入exit,可以退出shell。

3.方式三:不开启子shell,在当前shell中运行脚本

source  /shell/my_prog--- source 表示当前shell

或. /shell/my_prog

cd  /shell

.  ./my_prog--- .前后有空格,表示当前shell,等同于source ; .后紧跟/,如:  ./  表示当前目录

观察子shell

ps -ejH

pstree

输入输出数据流:

标准输入stdin

标准输出stdout

错误输出stderr

文件描述符0 1 2

2.shell变量

shell变量是用来代表某个值的符号名,变量是shell传递数据的一种方法。

为灵活管理,Linux系统提供特定参数,<

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值