Bash入门

书籍(一本深入学习 shell 脚本艺术的书籍)

http://www.tldp.org/LDP/abs/html/

 

关于#!/bin/bash(不可省略)

    在 BASH 中 第一行的 "#!" 及后面的 /bin/bash 就表明该文件是一个 BASH 程序,需要由 /bin 目录下的 bash 程序来解释执行。BASH 这个程序一般是存放在 /bin 目录下,如果你的 Linux 系统比较特别,bash 也有可能被存放在 /sbin 、/usr/local/bin 、/usr/bin 、/usr/sbin 或 /usr/local/sbin 这样的目录下;如果还找不到,你可以用 locate bash ,find / -name bash 2>/dev/null 或 whereis bash 这三个命令找出 bash 所在的位置;如果仍然找不到,那你可能需要自己动手安装一个 BASH 软件包了。

 

运行Bash脚本的方式

# 使用shell来执行

$ sh hello.sh

#

$ bash hello.sh

使用.来执行

$ . ./hello.sh

使用source来执行

$ source hello.sh

还可以赋予脚本所有者执行权限,允许该用户执行该脚本 

$ chmod u+rx hello.sh

$ ./hello.sh 

 

 

【实例】清理日志文件的脚本

#!/bin/bash

# 初始化一个变量

LOG_DIR=/var/log

cd $LOG_DIR

 

cat /dev/null > wtmp

echo "Logs cleaned up."

exit

【要点】

1.要给执行脚本赋予权限(管理员权限)

sudo chmod +x cleanlogs.sh

sudo ./cleanlogs.sh

2. /dev/null 可以理解为一个黑洞,里面是空的,重定向到 /var/log/wtmp 文件后,就清空了 wtmp 文件的内容

 

 
 
 
 

 

 

posted @ 2020-07-14 13:35  akihi2325  阅读(133)  评论(0编辑  收藏  举报