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
分享到:
相关推荐
shell脚本自动安装mysql-5.5.30.docx
shell脚本自动安装mysql-5.5.30.pdf
sqlite-shell-win32-x86-3080200.zip sqlite的windows版本
shell脚本学习指南-中文版shell脚本学习指南-中文版shell脚本学习指南-中文版shell脚本学习指南-中文版shell脚本学习指南-中文版shell脚本
藏经阁-Shell 脚本速查手册-29
Linux shell脚本入门教程 - blotemj
很全面的Shell编程 脚本专家指南 很合适新手使用
Linux shell脚本攻略--数学运算.docx
Shell脚本编程详解-吐血共享.pdf
shell脚本--xnode.sh
Shell-脚本常用命令-文档
Shell脚本培训资料-2015.zip
Shell脚本-从入门到精通.ppt
LINUX与UNIX Shell编程指南16-30.rar
整理了一份Linux shell学习笔记及基本命令合集,包含了LINUX常用操作命令和命令行编辑快捷键、shell基本命令,Linux相关使用配置教程等,需要的朋友可下载试试! shell是一个用C语言编写的程序,它是用户使用Linux的...
NSD-Linux云计算-Shell脚本100例-v0.8.pdf
Linux运维-运维工具箱-18个 Shell脚本经典案例-视频2-2.zip
Linux运维-3.Shell编程-11shell基础-101脚本执行方法.avi
shell脚本学习指南,中文清晰带书签, 程序员必备.
Linux运维-运维工具箱-18个 Shell脚本经典案例-视频1-2.zip