Shell Step by Step (1) -- Introduction

1. 查看当前用户(用户数)

root@kallen:~# who [ | wc -l]

root@kallen:~# who 
kallen tty4 2015-01-16 10:46 
kallen tty5 2015-01-16 10:47 
kallen tty2 2015-01-16 10:42 
kallen tty3 2015-01-16 10:42 
root tty6 2015-01-16 10:58 
kallen tty1 2015-01-15 13:10 
kallen tty7 2015-01-15 12:52  
root@kallen:~#

root@kallen:~# who | wc -l 
24

将管道l转化为独立的命令
root@kallen:~# cat > countUsers                      ---- 建立文件,使用cat复制终端输入      
root@kallen:~# who |  wc -l                               ---- 脚本内容
root@kallen:~# Ctrl + D ( end-of-file )             ---- end of file 
root@kallen:~# chmod +x countUsers             ---- 让文件拥有执行权限
root@kallen:~# ./countUsers                              ---- 执行脚本

wc命令

# Count Bytes
echo Testing one two three | wc -c               print the byte counts (计算字节数)
# Count Rows
echo Testing one two three | wc -l                print the character counts (计算字符数)
# Count Letters
echo Testing one two three | wc -w              print the newline counts (计算行数)

2.脚本声明

#!/bin/bash
#
#!/bin/bash -           -  表示没有shell选项,这是基于安全上的考虑,可避免某些欺骗式攻击(spoofing attack)
#
Shell的三种基本命令: 内建命令、Shell函数、外部命令

# 查看当前Shell类型
root@kallen:/# echo $SHELL 
/bin/bash

# Shell脚本执行方式
root@kallen:/# source shellFile
root@kallen:/# bash shellFile
root@kallen:/# ./shellFile    (文件必须有可执行权限    chmod +x 或 chmod 755)

编写完脚本之后,你可以使用sh scriptname,[或者bash scriptname 来调用它.
(不推荐使用sh scriptname,因为这禁用了脚本从stdin 中读数据的功能.
使用sh scriptname 来调用脚本的时候将会关闭一些Bash 特定的扩展,脚本可能 因此而调用失败.) 

更方便的方法是让脚本本身就具有可执行权限,通过chmod 命令可以修改.
比如:
    chmod 555 scriptname (允许任何人都具有可读和执行权限)
或:
    chmod +rx scriptname (允许任何人都具有可读和执行权限)
    chmod u+rx scriptname (只给脚本的所有者可读和执行权限)

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。