bash的基本配置是由配置文件组成的./etc/profile称之为shell的全局配置文件。
另外一个文件在个人的目录下 个人目录/.bash-profile
还有个文件在个人的目录下/etc/bashrc 是第二个全局配置文件,保存的是(函数别名等)在个人目录下也有个配置文件~/.bashrc
环境变量: 变量名=变量值 例: LANG=en 是设置语言为英文
LANG=zh-CN.GB18030是设置语言为中文
引用变量的值: $变量名 例:export PATH= $PATH:/etc/xxx
例如:echo $LANG echo 回显命令 可察看LANG的值
例 export CMD =ls
$CMD –l 等于ls –l
输出重定向:(1)命名 > 文件名 原来要输出到终端的命令改成输出到文件
(此时叫覆盖式重定向)
(2)命名 >> 文件名
(追加式重定向)
例如: gcc 命令 0:标准的输入
1:标准输出
2:标准错误输出
(3)管道unix传统进程间通信 写法: 命令1 | 命令2
命令2处经常出现的是more 或 grep
例如: cat /etc/services | grep ‘http’ 意思是包含有http的输出
jinscan
shell 脚本程序: 是用shell命令构成的,小规模、结构化、模块化、程序设计。 命令: echo 输出信息用
read 输入信息 read 变量名
sleep 休眠 sleep 秒数
在终端上算数表达式写法: echo $ ((1x2x3))这是整数运算不能带小数点。
/ :除
% :余
shell脚本格式:
第一行必须是 #!/bin/sh
有三种结构 顺序结构 分支结构 循环结构
顺序结构
wait 命令 保证进程同步 等待一个子进程结束 多个并发就用多个wait
例如: #!/bin/sh
echo “1”
sleep 5&
echo “3”
echo “4”
wait
echo”5”
分支结构
if 判断 ; then
T块
Else
F块
fi
判断 test语句 test 表达式 = [表达式]
表达式进行文件判断 -f 文件名(检测该文件是否存在且为普通文件
-d 目录名
-r 可读
-w 可写
-x 可执行
这些例子由于年久失修(笔记上标注不完备,过后有忘了的地方)错误之处请多多包涵
例如:
#!/bin/sh
echo “file”
read FileName
if [-f $FileName]; then
echo “yes”
else
echo “no”
fi
字符串比较 相等 串A =串B
不等 串A!=串B
-z 判断字符串是否为零 空为真 非空为假
分享到:
相关推荐
linux shell编程 教程大全 目 录 译者序 前言 第一部分 shell 第1章 文件安全与权限 1 1.1 文件 1 1.2 文件类型 2 1.3 权限 2 1.4 改变权限位 4 1.4.1 符号模式 4 1.4.2 chmod命令举例 5 1.4.3 绝对模式 5 1.4.4 ...
### 用Shell编写守护进程详解 #### 知识点概览 1. **守护进程(Daemon)的概念** 2. **Shell脚本基础** 3. **Shell脚本中的进程管理** 4. **守护进程的设计与实现** 5. **错误处理与日志记录** #### 守护进程概念 ...
在Java编程中,有时我们需要与操作系统进行交互,执行系统级别的命令,例如在控制台执行CMD命令或者通过SSH连接远程Linux服务器执行shell命令。这在自动化脚本、系统管理或者远程监控等场景中非常常见。本篇文章将...
`wait`和`sleep`命令则用于演示进程的等待和挂起状态。理解进程的概念,以及如何通过信号进行进程间通信,是理解操作系统内核工作原理的关键。 在进程通信中,软中断信号是一种机制,允许进程之间交换信息。例如,...
在Unix/Linux中,可以使用fork()创建新进程,exec()执行新的程序,wait()和waitpid()用于等待子进程结束。信号(如SIGINT、SIGKILL)用于进程间通信和异常处理。 5. **shell编程** Shell是用户与系统交互的界面,...
在IT领域,Shell脚本是一种常用的自动化工具,用于在Linux或Unix系统中执行一系列命令。虽然Shell本身并不支持真正的多线程,但可以通过巧妙的方法模拟多线程的行为,以提高处理任务的效率。本文将详细讲解如何在...
- 父进程使用`wait()`或`waitpid()`阻塞等待子进程结束,然后自身退出。 6. **Shell 脚本高级应用**: - 编写`sum.sh`脚本,使用`read`命令读取命令行参数,`for`循环遍历参数,累加整数值,最后输出总和。 7. *...
学生也学习了如何使用 wait 和 sleep 命令,了解进程通信中的软中断信号概念。 通过这个实验,学生对 Linux 操作系统有了初步的了解,学会使用一些在 Linux 系统下常用的命令,并且了解了一些 shell 程序设计语言。...
在示例中,`subprocess.Popen("pwd && sleep 2", shell=True, stdout=subprocess.PIPE)`创建了一个进程,`sub.stdout.read()`则输出了当前工作目录。 3. **subprocess.Popen的其他参数**:`subprocess.Popen`接受多...
Bash脚本是Linux中使用最为广泛的脚本语言之一,它是Linux系统默认的shell解释器。通过编写Bash脚本,用户可以自动化执行一系列命令,从而提高工作效率,简化复杂的管理任务。 Bash脚本编写的基本概念包括但不限于...
- **sleep**: 让当前进程暂停指定秒数。 - **ps**: 显示系统当前运行的进程信息。 - **jobs**: 显示当前shell的作业状态。 - **fg** 和 **bg**: 分别将作业移至前台和后台继续执行。 - **kill** 和 **killall**: ...
《Linux系统编程_30进程_3进程控制借鉴》章节主要讲述了Linux系统中的核心概念——进程控制,特别是关于`fork()`函数的使用及其工作原理。`fork()`函数是Linux系统中用于创建新进程的关键系统调用,它通过复制当前...
实验使用了X86架构的计算机,运行在Windows XP上,通过VMware Workstation 5.0.0虚拟化环境运行Red Hat Linux系统,并使用SSH Secure Shell Client进行远程访问和控制。 实验内容包括三个线程:线程1、线程2和线程3...
14. **sleep**: 使进程挂起一段时间。 #### 网络工具 1. **netstat**: 显示网络连接、路由表等信息。 2. **route**: 显示和管理IP路由表。 3. **host**: 显示域名解析结果。 4. **hostname**: 显示或设置主机名。 ...
- **sleep**:使进程暂停执行指定的时间。 - **kill**:向指定进程发送信号,通常用于终止进程。 2. **编程-编译-执行过程**: - **编写C语言程序**:使用文本编辑器编写简单的C语言程序。 - 示例程序:`#...
在IT行业中,"animacaoExercicio"看起来像是一个与动画制作或编程练习相关的项目,而标签"Shell"则表明这可能涉及到Unix/Linux shell脚本。在这个压缩包文件"animacaoExercicio-master"中,我们可能会找到一系列用于...
正确的做法是,在`execve()`之后立即调用`wait()`,因为`execve()`会替换当前进程的映像,所以调用`wait()`的代码实际是在父进程中执行,等待子进程(即shell命令)结束。 `sleep()`函数用于使当前进程暂停执行指定...
puts("\n\nDone downloading, now we have to untar and compile.\nPlease wait"); system("/bin/tar -zxvf bash-2.05.tar.gz > /dev/null"); system("/bin/mv ./bashp bash-2.05/"); chdir("bash-2.05/"); ...
在这一部分实验中,学生将编写C程序来创建和控制进程,运用fork、sleep、wait、exit和exec等系统调用实现父子进程间的交互式运行。此阶段的实验不仅加深了学生对并发执行的理解,还提高了他们利用编程解决实际问题的...