2.1
who | wc -l
who 查看登录的用户
wc 字数计算 line 行数 word 字数 character 字符数
-l line 行数
| 管道符 在两程序之间建立管道 who的输出成了wc的输入 wc所列出的结果就是已登录用户的个数
$ cat > nusers 建立文件,使用cat复制终端的输入
who | wc -l 程序的内容
^D Ctrl + D表示结束
$ chmod 744 nusers 让文件有执行的权限
$ ./nusers 执行输出
6 输出的结果
2.5.2
$ myvar=this_is_a_long 设置变量
this_is_a_long 输出显示
first=isaac middle=bashevis last=singer
单行可以多次赋值
fullname="isaac bashevis singer"
有空格时请使用引号
oldname=$fullname
这样也行,但不需要使用引号
newname="$first $middle $last"
多个变量相连时,要使用引号
echo -n "123"
打印,-n表示去掉最后的换行符
printf "what you name? '%s.%s'\n" sem zhang
打印,第一部分为要输出的文本 %s 表示动态数据的站位符,\n表示换行,printf不带换行功能
第二部分为站位符的参数列表
最后输出:what you name? 'sem.zhang'
百分符号最常用的有两个,%s用于字符串,%d用于十进字数字
参数大于站位符个数,将循环输出
如:printf "what you name? '%s.%s'\n" sem zhang sss
输出:what you name? 'sem.zhang'
what you name? 'sss.'
参数小于站位符个数,缺少的部分,将忽略
如:printf "what you name? '%s.%s...............'\n" sem
输出:what you name? 'sem................'
tr -d 'how' < do-file.txt
在控制台中显示do-file.txt文件中的内容,但所有h o w 都不显示
< 修改输入源
tr -d 'how' < do-file.txt > UNIX-file.txt
将do-file.txt文件中的内容输出到UNIX-file.txt文件中,但所有h o w都将删除
< 指定输入源
> 指定输出源
tty-testl.sh
printf "Enter new password:" 打印
stty -echo 关闭自动打印输入的功能,及键盘输入的字符不显示
read pass < /dev/tty 读取输入
printf "\n" 换行
printf "Enter again:" 打印
read pass2 < /dev/tty 读取输入
printf "\n" 打印
stty echo 打开自动打印输入功能
关于基本命令
$PATH 是一个以冒号分隔的目录列表,你可以在列表所指定的目录下找到所要执行的命令
所找到的命令可能是编译后的可执行文件,也可能是shell脚本
默认的路径至少包含/bin与/usr/bin
名称为bin的目录用来保存可执行文件,bin是binary的缩写
如果编写自己的角本,并让shell能够自动的找到它们,只要建立自己的bin目录,并将他们加入$PATH中的列表中就可以了
如: PATH=$PATH:$HOME/bin
$PATH中的空项目表示当前目录
如:PATH=:/bin:/var/bin 最先找当前目录
PATH=/bin:/var/bin: 最后找当前目录
PATH=/bin::/var/bin 找完bin后找当前目录,再找/var/bin目录
shell的脚本的参数
例子
#! /bin/sh
# finduser ---- 察看第一个参数所指定的用户是否登录
who | grep $1
$ ./finduser sem
输出
sem pts/1 2011-10-29 06:07 (192.168.1.100)
但这里如果不给参数或都参数数目不对,就会出现问题
注:当参数号大于9时,就应该用大括号把数字框起来,${10}
执行跟踪
$ sh -x nusers 打开执行跟踪功能
+ who 被跟踪的命令
+ wc -l
2 实际的输出
在角本中使用
#! /bin/sh
#打开跟踪功能
set -x
echo 1st echo
set +x
#已关闭跟踪功能
echo 2st echo
分享到:
相关推荐
《LINUX与UNIX SHELL编程指南》是一本深入解析LINUX和UNIX系统中shell编程的权威书籍,对于理解和掌握shell脚本编写具有极其重要的价值。本书涵盖了从基础概念到高级技巧,旨在帮助读者全面理解shell编程的核心原理...
- **Shell脚本学习指南.pdf**:可能深入探讨了Shell脚本编写的具体技巧和最佳实践。 - **Linux_shell.pdf、shell编程实例.pdf、Shell+编程.pdf**:更多的教程和实例,帮助深化对Shell编程的理解。 - **Unix+Shell+...
2. **Shell脚本编程**:学习编写简单的Shell脚本,以自动化执行日常任务,提高工作效率。 3. **网络配置与管理**:如何设置网络连接,使用SSH远程登录,以及网络服务的配置和管理。 4. **软件包管理**:了解如何...
本篇PHP笔记涵盖了从基础到进阶的知识点,适合初学者和有一定基础的开发者参考学习。主要内容包括简单的“Hello World”示例、网页内容抓取技巧、编码转换方法、缓存逻辑设计、数据解析方式、Ajax与PHP之间的交互、...
### Java/JavaEE 学习笔记关键知识点概览 #### 1. Unix 学习笔记 - **Unix 前言** - Unix 是一种多用户、多任务的操作系统,广泛应用于...这些内容不仅适合初学者作为入门指南,也为进阶学习者提供了深入研究的方向。
- **一键安装Apache**:通过编写Shell脚本来实现Apache Web服务器的一键安装。 - **批量创建账号**:用于快速批量创建用户账号的脚本。 - **磁盘利用率检查**:监测磁盘空间使用的脚本。 - **一键搭建CA**:自动...
2. **编写脚本**: 创建简单shell脚本,实现自动化任务。 **八、故障排查** 1. **日志分析**: 通过日志找出系统问题。 2. **错误代码解析**: 学习理解系统返回的错误代码。 3. **系统诊断工具**: 使用dmesg、netstat...
在Linux操作系统中,Bash(Bourne-Again SHell)是默认的命令行解释器,也是用户与系统交互的主要...通过阅读“linux常用命令之bash入门指南.doc”文档,你可以系统地了解和学习这些知识,逐步成长为Linux操作的高手。
这些文档提供了学习Unix/Linux、Shell脚本、批处理编程、编译器使用和实时操作系统的宝贵资源,对于希望提升系统管理和软件开发技能的人来说,是一份宝贵的参考资料。通过深入学习和实践,可以掌握这些关键技能,...
《高级Bash脚本指南》英文原版是一本深入探讨Shell脚本艺术的专业书籍,由Mendel Cooper撰写。这本书致力于帮助读者掌握Bash shell编程的高级技巧和实践方法。以下是书中部分内容的详细解释: 在书的前言部分,作者...
### Linux基础知识精讲 ...以上涵盖了Linux基础操作中的核心命令和概念,对于初学者来说是非常实用的入门指南。这些命令可以帮助用户高效地管理文件系统、网络连接、软件包以及用户账户等各个方面。
"Prentice.Hall-Unix.Shells.By.Example,4th.Edition.chm"是一个关于Unix shell编程的教程,涵盖了Bash、Ksh和C shell等多个shell的用法,帮助读者理解和掌握Unix环境下的脚本编写,从而更高效地管理操作系统和自动...
首先,"Shell脚本学习指南笔记.doc"可能是对基本Shell脚本语法的详细解释,包括变量声明、函数定义、流程控制结构等。学习Shell编程时,理解这些基础知识至关重要。例如,变量的声明不需要类型声明,直接赋值即可;...
- **实用部分**:涉及samba服务、网络配置、cron定时任务、JDK安装、Apache服务器配置、Linux下JAVA网络编程、SHELL脚本初步。 #### 五、Linux实战重点 - **初步了解**:Linux简介、首次操作体验。 - **用户管理**...
### Spark 2 笔记详解 #### 一、Spark 概念 Spark 是一款用于大规模数据处理的统一计算框架,其核心设计目的是实现高效的数据处理能力。Spark 的关键特性包括高性能计算、易于使用的API以及丰富的生态系统。在较高...
### Python入门课程笔记及实用总结 #### 一、PythonIcourse163 ##### week0 内容导学 - **课程目标**:通过为期九周的学习,掌握Python的基础语法和七个常用的设计模块,并完成十六个实践案例。 - **学习时间**:...
通过编写shell脚本,你可以自动化日常任务,提高效率。学习bash shell,你需要了解变量、条件语句、循环结构、函数以及如何调用其他命令。比如,`if`和`fi`用于条件判断,`for`和`done`用于循环,`echo`用于打印字符...
本资源"嵌入式Linux入门到精通"是一个全面的学习指南,旨在帮助初学者理解并掌握这一领域的核心概念和技术。 一、Linux基础知识 1. Linux操作系统:Linux是一种自由开源的操作系统,基于Unix,由全球各地的开发者...