Shell Step by Step (1) —— Introduction

来源:互联网 发布:苍云正太捏脸数据 编辑:程序博客网 时间:2024/05/16 10:24

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 (只给脚本的所有者可读和执行权限)


0 0