Linux86 sheel流程控制前瞻4 判断vsftpd服务启动,如果启动,打印端口号,进程id
问题
ftp服务是否启动
rpm -ql vsftpd
[root@web ~]# naltp |grep vsftpd
bash: naltp: 未找到命令...
您在 /var/spool/mail/root 中有新邮件
[root@web ~]# naltp |grep vsftpd
bash: naltp: 未找到命令...
您在 /var/spool/mail/root 中有新邮件
[root@web ~]# netstat -naltp |grep vsftpd
tcp6 0 0 :::21 :::* LISTEN 1735/vsftpd
您在 /var/spool/mail/root 中有邮件
[root@web ~]# ss -naltp |grep vsftpd
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
您在 /var/spool/mail/root 中有邮件
判断是否输出成功
如何接收到变量信息,并判断结果
什么结果是输出成功 怎么判断输出成功 什么结果是输出失败 怎么判断
$? 0
$? 1
vsftpd 监听端口
echo $a | cut -c6
[root@web ~]# ss -naltp |grep vsftpd
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
您在 /var/spool/mail/root 中有邮件
b=$( echo $a | grep -w LISTEN )
c=$( echo $b | cut -c6)
d=$( echo $a |grep -w users)
e=$()
users:((“vsftpd”,pid=1735,fd=4))怎么截取出Pid
e=$( echo $d | cut -d, -f2 )
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd >/dev/null 2>&1 )
b=$( echo $a |grep -w LISTEN)
c=$( echo $a | cut -c6 )
d=$( echo $a |grep -w usersi)
echo $a,$b,$c,$d[root@web ~]# chmod +x vsftpd2.sh
[root@web ~]# ./vsftpd.sh
already be installed
您在 /var/spool/mail/root 中有邮件
[root@web ~]# ./vsftpd2.sh
,,,
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
b=$( echo "$a" |grep -w LISTEN)
c=$( echo "$a" | cut -c6 )
d=$( echo "$a" |grep -w user)
echo $a
echo $b
echo $c
echo $d[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
N您在 /var/spool/mail/root 中有邮件
[root@web ~]# ss- naltp |grep vsftpd
bash: ss-: 未找到命令...
[root@web ~]# ss -naltp | grep vsftpd
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
b=$( echo "$a" | cut -c6)
echo $a
echo $b您在 /var/spool/mail/root 中有邮件
[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
N
[root@web ~]#
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if ( -z $a );then"错误"
fi[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
./vsftpd2.sh:行3: -z: 未找到命令
您在 /var/spool/mail/root 中有邮件
[root@web ~]#
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z $a ];thenecho "错误"
fi您在 /var/spool/mail/root 中有邮件
[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
./vsftpd2.sh: 第 3 行:[: 参数太多
[root@web ~]#
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z "$a" ];thenecho "错误"
fi[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
判断是否存在vsftpd进程
打印pid
grep -o
pid=$(echo "$info" | grep -o 'pid=[0-9]*' | cut -d= -f2)
a=$( ss -naltp | grep vsftpd )
pidt=$(echo $a |grep -o 'pid=[0-9]*')
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z "$a" ];thenecho "错误"
fi
pid=$(echo $a | grep -o pid[0-9] )
echo $pid[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
如何获取端口号
[root@web ~]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f2 )
echo $port[root@web ~]# ./test3.sh
-bash: ./test3.sh: 没有那个文件或目录
[root@web ~]# chmod +x /test3.sh
[root@web ~]# .//test3.sh
-bash: .//test3.sh: 没有那个文件或目录
[root@web ~]# vim /test3.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f2 )
echo $port[root@web ~]# ./ /test3.sh
-bash: ./: 是一个目录
[root@web ~]# .//test3.sh
-bash: .//test3.sh: 没有那个文件或目录
[root@web ~]#
[root@web /]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f4 )
echo $port[root@web /]# .//test3.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
21 [
获取端口号
[root@web /]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f4|cut -c1-2 )
echo $port您在 /var/spool/mail/root 中有邮件
[root@web /]# .//test3.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
21
[root@web /]#
获取PID
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z "$a" ];thenecho "错误"
fi
pid=$(echo $a | grep -o pid=[0-9]* )
echo $pid[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
pid=1735
[root@web /]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
if [ "$a" -z ];thenecho "wrong"return 1;
fi
port=$( echo $a | cut -d : -f4 |cut -c1-2 )
pid=$( echo $a |grep -o pid=[1-9]*)
echo $port
echo $pid
[root@web /]# chmod +x vsftpd2.sh
[root@web /]# ./vsftpd2.sh
./vsftpd2.sh: 第 2 行:[: LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4)): 期待一元表达式
21
pid=1735
[root@web /]#
[root@web /]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
if [ "$a" -z ];thenecho "wrong"return 1;else
port=$( echo $a | cut -d : -f4 |cut -c1-2 )
pid=$( echo $a |grep -o pid=[1-9]*)
echo "vsftpd监听的端口是:"$port
echo "vsftpd的"$pid
fi
[root@web /]# ./vsftpd2.sh
./vsftpd2.sh: 第 2 行:[: LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4)): 期待一元表达式
vsftpd监听的端口是:21
vsftpd的pid=1735
您在 /var/spool/mail/root 中有邮件
记录
root@192.168.235.20's password:┌────────────────────────────────────────────────────────────────────┐│ • MobaXterm 20.0 • ││ (SSH client, X-server and networking tools) ││ ││ ➤ SSH session to root@192.168.235.20 ││ • SSH compression : ✘ ││ • SSH-browser : ✔ ││ • X11-forwarding : ✔ (remote display is forwarded through SSH) ││ • DISPLAY : ✔ (automatically set on remote server) ││ ││ ➤ For more info, ctrl+click on help or visit our website │└────────────────────────────────────────────────────────────────────┘Last login: Tue Aug 5 19:10:51 2025 from 192.168.235.1
[root@web ~]# rpm -ql vsft[d
未安装软件包 vsft[d
[root@web ~]# rpm -ql vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
/etc/vsftpd/vsftpd_conf_migrate.sh
/usr/lib/systemd/system-generators/vsftpd-generator
/usr/lib/systemd/system/vsftpd.service
/usr/lib/systemd/system/vsftpd.target
/usr/lib/systemd/system/vsftpd@.service
/usr/sbin/vsftpd
/usr/share/doc/vsftpd-3.0.2
/usr/share/doc/vsftpd-3.0.2/AUDIT
/usr/share/doc/vsftpd-3.0.2/BENCHMARKS
/usr/share/doc/vsftpd-3.0.2/BUGS
/usr/share/doc/vsftpd-3.0.2/COPYING
/usr/share/doc/vsftpd-3.0.2/Changelog
/usr/share/doc/vsftpd-3.0.2/EXAMPLE
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE/README.configuration
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE/vsftpd.conf
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE/vsftpd.xinetd
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE_NOINETD
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE_NOINETD/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE_NOINETD/README.configuration
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/INTERNET_SITE_NOINETD/vsftpd.conf
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/PER_IP_CONFIG
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/PER_IP_CONFIG/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/PER_IP_CONFIG/README.configuration
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/PER_IP_CONFIG/hosts.allow
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_HOSTS
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_HOSTS/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/README
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/README.configuration
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/logins.txt
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/vsftpd.conf
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS/vsftpd.pam
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS_2
/usr/share/doc/vsftpd-3.0.2/EXAMPLE/VIRTUAL_USERS_2/README
/usr/share/doc/vsftpd-3.0.2/FAQ
/usr/share/doc/vsftpd-3.0.2/INSTALL
/usr/share/doc/vsftpd-3.0.2/LICENSE
/usr/share/doc/vsftpd-3.0.2/README
/usr/share/doc/vsftpd-3.0.2/README.security
/usr/share/doc/vsftpd-3.0.2/REWARD
/usr/share/doc/vsftpd-3.0.2/SECURITY
/usr/share/doc/vsftpd-3.0.2/SECURITY/DESIGN
/usr/share/doc/vsftpd-3.0.2/SECURITY/IMPLEMENTATION
/usr/share/doc/vsftpd-3.0.2/SECURITY/OVERVIEW
/usr/share/doc/vsftpd-3.0.2/SECURITY/TRUST
/usr/share/doc/vsftpd-3.0.2/SIZE
/usr/share/doc/vsftpd-3.0.2/SPEED
/usr/share/doc/vsftpd-3.0.2/TODO
/usr/share/doc/vsftpd-3.0.2/TUNING
/usr/share/doc/vsftpd-3.0.2/vsftpd.xinetd
/usr/share/man/man5/vsftpd.conf.5.gz
/usr/share/man/man8/vsftpd.8.gz
/var/ftp
/var/ftp/pub
[root@web ~]# naltp |grep vsftpd
bash: naltp: 未找到命令...
您在 /var/spool/mail/root 中有新邮件
[root@web ~]# netstat -naltp |grep vsftpd
tcp6 0 0 :::21 :::* LISTEN 1735/vsftpd
您在 /var/spool/mail/root 中有邮件
[root@web ~]# ss -naltp |grep vsftpd
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
您在 /var/spool/mail/root 中有邮件
[root@web ~]# a=$( ss -naltp |grep vsftpd )
您在 /var/spool/mail/root 中有邮件
[root@web ~]# ls
1828.txt app bb.conf httpd-2.4.37.tar.bz2 okl readme7 vsftpd.sh
1837.txt apr-1.5.2 cc.conf initial-setup-ks.cfg php-7.2.17 readme.txt wordpress
1.txt apr-1.5.2.tar.bz2 code inotify-tools-3.13.tar.gz php-7.2.17.tar.xz serverOk.sh wordpress-4.7.3-zh_CN.tar.gz
2-1.java apr-util-1.5.4 dir1 mysql-5.6.31 ping2.sh Steam.dll
2.java apr-util-1.5.4.tar.bz2 file20.java mysql-5.6.31.tar.gz ping.sh uname.sh
alll1 axel-2.4 file23.java null process1.sh user.sh
anaconda-ks.cfg axel-2.4.tar.gz httpd-2.4.37 ok process.sh vsftpd1.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd1.sh
rpm -ql vsftpd >/dev/null 2>&1if [ $? -eq 0 ];thenecho "already be installed"elseecho "not be installed,will install"yum install vsftpd >/dev/null 2>&1if [ $? -eq 0 ];thenecho " be successfullly installed"elseecho "fail to installed"fi
fi
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd >/dev/null 2>&1 )
b=$( echo $a |grep -w LISTEN)
c=$( echo $a | cut -c6 )
d=$( echo $a |grep -w usersi)
echo $a,$b,$c,$d[root@web ~]# chmod +x vsftpd2.sh
[root@web ~]# ./vsftpd.sh
already be installed
您在 /var/spool/mail/root 中有邮件
[root@web ~]# ./vsftpd2.sh
,,,
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
b=$( echo "$a" |grep -w LISTEN)
c=$( echo "$a" | cut -c6 )
d=$( echo "$a" |grep -w user)
echo $a,$b,$c,$d[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4)),LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4)),N,
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
b=$( echo "$a" |grep -w LISTEN)
c=$( echo "$a" | cut -c6 )
d=$( echo "$a" |grep -w user)
echo $a
echo $b
echo $c
echo $d[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
N您在 /var/spool/mail/root 中有邮件
[root@web ~]# ss- naltp |grep vsftpd
bash: ss-: 未找到命令...
[root@web ~]# ss -naltp | grep vsftpd
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
b=$( echo "$a" | cut -c6)
echo $a
echo $b您在 /var/spool/mail/root 中有邮件
[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
N
[root@web ~]# vim /vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if ( -z $a );then"错误"
fi[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
./vsftpd2.sh:行3: -z: 未找到命令
您在 /var/spool/mail/root 中有邮件
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z $a ];thenecho "错误"
fi您在 /var/spool/mail/root 中有邮件
[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
./vsftpd2.sh: 第 3 行:[: 参数太多
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z "$a" ];thenecho "错误"
fi[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
[root@web ~]# vim vstest.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vstest.sh
a=$( ss -naltp | grep vsftpd )
pidt=$(echo $a |grep -o 'pid=[0-9]*')
echo $pidt
[root@web ~]# chmod +x vstest.sh
[root@web ~]# ./vstest.sh
pid=1735
您在 /var/spool/mail/root 中有邮件
[root@web ~]# pgrep -x vsftpd
1735
您在 /var/spool/mail/root 中有邮件
[root@web ~]# vim vstest.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vstest.sh
a=$( ss -naltp | grep vsftpd )
pidt=$(echo "$a" |grep -o 'pid=[0-9]*')
echo $pidt
[root@web ~]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z "$a" ];thenecho "错误"
fi
pid=$(echo $a | grep -o pid[0-9] )
echo $pid[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))[root@web ~]#
Network error: Software caused connection abort─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────Session stopped- Press <return> to exit tab- Press R to restart session- Press S to save terminal output to file
root@192.168.235.20's password:┌────────────────────────────────────────────────────────────────────┐│ • MobaXterm 20.0 • ││ (SSH client, X-server and networking tools) ││ ││ ➤ SSH session to root@192.168.235.20 ││ • SSH compression : ✘ ││ • SSH-browser : ✔ ││ • X11-forwarding : ✔ (remote display is forwarded through SSH) ││ • DISPLAY : ✔ (automatically set on remote server) ││ ││ ➤ For more info, ctrl+click on help or visit our website │└────────────────────────────────────────────────────────────────────┘Last login: Wed Aug 6 19:26:47 2025 from 192.168.235.1
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z "$a" ];thenecho "错误"
fi
pid=$(echo $a | grep -o pid[0-9] )
echo $pid您在 /var/spool/mail/root 中有新邮件
[root@web ~]# vim vsftpd2.sh
[root@web ~]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
echo $a
if [ -z "$a" ];thenecho "错误"
fi
pid=$(echo $a | grep -o pid=[0-9]* )
echo $pid[root@web ~]# ./vsftpd2.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
pid=1735
[root@web ~]# vim /test3.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f2 )
echo $port[root@web ~]# ./test3.sh
-bash: ./test3.sh: 没有那个文件或目录
[root@web ~]# chmod +x /test3.sh
[root@web ~]# .//test3.sh
-bash: .//test3.sh: 没有那个文件或目录
[root@web ~]# vim /test3.sh
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f2 )
echo $port[root@web ~]# ./ /test3.sh
-bash: ./: 是一个目录
[root@web ~]# .//test3.sh
-bash: .//test3.sh: 没有那个文件或目录
[root@web ~]# /root//test3.sh
-bash: /root//test3.sh: 没有那个文件或目录
您在 /var/spool/mail/root 中有邮件
[root@web ~]# cd /
[root@web /]# .//test3.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))[root@web /]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f2 )
echo $port[root@web /]# vim /test3.sh
您在 /var/spool/mail/root 中有邮件
[root@web /]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f4 )
echo $port[root@web /]# .//test3.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
21 [
[root@web /]# vim /test3.sh
您在 /var/spool/mail/root 中有邮件
[root@web /]# vim /test3.sh
您在 /var/spool/mail/root 中有邮件
[root@web /]# cat /test3.sh
a=$(ss -naltp | grep vsftpd)
echo $a
port=$(echo "$a"|cut -d: -f4|cut -c1-2 )
echo $port您在 /var/spool/mail/root 中有邮件
[root@web /]# .//test3.sh
LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4))
21
[root@web /]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web /]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web /]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
if [ "$a" -z ];thenecho "wrong"return 1;
fi
port=$( echo $a | cut -d : -f4 |cut -c1-2 )
pid=$( echo $a |grep -o pid=[1-9]*)
echo $port
echo $pid
[root@web /]# chmod +x vsftpd2.sh
[root@web /]# ./vsftpd2.sh
./vsftpd2.sh: 第 2 行:[: LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4)): 期待一元表达式
21
pid=1735
[root@web /]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web /]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
if [ "$a" -z ];thenecho "wrong"return 1;elseport=$( echo $a | cut -d : -f4 |cut -c1-2 )
pid=$( echo $a |grep -o pid=[1-9]*)
echo "vsftpd监听的端口是:"$port
echo "vsftpd的"$pid
[root@web /]# ./vsftpd2.sh
./vsftpd2.sh:行12: 语法错误: 未预期的文件结尾
[root@web /]# vim vsftpd2.sh
[root@web /]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
if [ "$a" -z ];thenecho "wrong"return 1;else
port=$( echo $a | cut -d : -f4 |cut -c1-2 )
pid=$( echo $a |grep -o pid=[1-9]*)
echo "vsftpd监听的端口是:"$port
echo "vsftpd的"$pid
fi
[root@web /]# ./vsftpd2.sh
./vsftpd2.sh: 第 2 行:[: LISTEN 0 32 [::]:21 [::]:* users:(("vsftpd",pid=1735,fd=4)): 期待一元表达式
vsftpd监听的端口是:21
vsftpd的pid=1735
您在 /var/spool/mail/root 中有邮件
[root@web /]# vim vsftpd2.sh
您在 /var/spool/mail/root 中有邮件
[root@web /]# cat vsftpd2.sh
a=$( ss -naltp | grep vsftpd )
if [ -z "$a" ];thenecho "wrong"return 1;else
port=$( echo $a | cut -d : -f4 |cut -c1-2 )
pid=$( echo $a |grep -o pid=[1-9]*)
echo "vsftpd监听的端口是:"$port
echo "vsftpd的"$pid
fi
[root@web /]# ./vsftpd2.sh
vsftpd监听的端口是:21
vsftpd的pid=1735
[root@web /]#