sh

shell命令解釋器

補充說明

sh命令 是shell命令語言解釋器,執行命令從標準輸入讀取或從一個文件中讀取。通過用戶輸入命令,和內核進行溝通!Bourne Again Shell (即bash)是自由軟件基金會(GNU)開發的一個Shell,它是Linux系統中一個默認的Shell。Bash不但與Bourne Shell兼容,還繼承了C Shell、Korn Shell等優點。

語法

1bash [options] [file]

選項

1-c string:命令從-c後的字符串讀取。
2-i:實現腳本交互。
3-n:進行shell腳本的語法檢查。
4-x:實現shell腳本逐條語句的跟蹤。

實例

使用-x選項跟蹤腳本調試shell腳本,能打印出所執行的每一行命令以及當前狀態:

 1[root@AY1307311912260196fcZ satools]# sh -x check_ssh_login.sh
 2+ DEFINE=30
 3+ cat /var/log/secure
 4+ awk '/Failed/ {++ip[$(NF-3)]} END {for (i in ip) print i"="ip[i]}'
 5++ cat /root/satools/black.txt
 6+ for i in '`cat /root/satools/black.txt`'
 7++ echo 121.42.0.16=1427
 8++ awk -F= '{print $1}'
 9+ IP=121.42.0.16
10++ echo 121.42.0.16=1427
11++ awk -F= '{print $2}'
12+ NUM=1427
13+ '[' 1427 -gt 30 ']'
14+ grep 121.42.0.16 /etc/hosts.deny
15+ '[' 1 -gt 0 ']'
16+ echo sshd:121.42.0.16
17+ echo vsftpd:121.42.0.16
18+ for i in '`cat /root/satools/black.txt`'
19++ echo 121.42.0.72=276
20++ awk -F= '{print $1}'
21+ IP=121.42.0.72
22++ awk -F= '{print $2}'
23++ echo 121.42.0.72=276
24+ NUM=276
25+ '[' 276 -gt 30 ']'
26+ grep 121.42.0.72 /etc/hosts.deny
27+ '[' 1 -gt 0 ']'
28+ echo sshd:121.42.0.72
29+ echo vsftpd:121.42.0.72

來源:https://github.com/jaywcjlove/linux-command

最後修改於: Wednesday, January 31, 2024

相關文章:

翻譯: