linux ls -l \!* |egrep ^l\|:\$\|^\$
时间: 2023-09-16 14:13:15 浏览: 90
这个命令是用来列出指定目录中的所有文件和目录,并且只显示符号链接、目录和空文件。让我解释一下每个部分的含义:
- `ls -l \!*`:`ls` 命令用于列出文件和目录的详细信息,`-l` 参数表示以长格式显示。`\!*` 是一个特殊的历史扩展符号,表示使用此命令时在命令行中指定的参数。
- `|`:管道符号,将前一个命令的输出作为后一个命令的输入。
- `egrep ^l\|:\$\|^\$`:`egrep` 命令用于在输入中搜索匹配指定模式的行。这个模式由三个部分组成:
- `^l\|`:以字母 "l" 开头后紧跟着一个竖线 "|"
- `:\$`:包含一个冒号 ":" 并且以 "$" 结尾
- `^\$`:以 "$" 开头并且以 "$" 结尾
所以这个命令的作用是,在 `ls -l` 命令的输出中,只显示符号链接、目录和空文件的详细信息。
相关问题
解析一下另外这条linux命令[ "$(which systemctl 2>/dev/null)"x != ""x ] && systemctl list-unit-files --type service --type socket|egrep '^\bdiscard\b|^\bsendmail\b|^\bident\b|^\bprinter\b|^\bbootps\b|^\blpd\b|^\bnfs\b|^\bnfs.lock\b|^\bypbind\b|^\bdaytime\b|^\btime\b|^\becho\b|^\bchargen\b|^\bntalk\b|^\btftp\b|^\bamanda\b|^\bcups\b|^\bcups-lpd\b|^\beklogin\b|^\bekrb5-telnet\b|^\bfinger\b|^\bgssftp\b|^\bimap\b|^\bimaps\b|^ \bipop2\b|^\bipop3\b|^\bklogin\b|^\bkrb5-telnet\b|^\bkshell\b|^\bktalk\b|^\brexec\b|^\brlogin\b|^\brsh\b|^\brsync\b|^\btalk\b|^\btcpmux-server\b|^\btelnet\b|^\buucp\b'|awk 'BEGIN{num=0} /enabled/{num+=1;print $0}END{if(num>0){print "result=false"}else{print "result=true"}}'
这条 Linux 命令的作用是检查系统中是否安装了 systemctl 命令。具体来说,它会先执行 which systemctl 命令,将结果输出到 /dev/null 中,然后再将标准错误输出重定向到 /dev/null 中。最后,它会将 which systemctl 命令的输出与空字符串进行比较,如果不相等,则表示系统中已经安装了 systemctl 命令。这条命令通常用于 shell 脚本中,以检查系统是否支持 systemd 系统管理器。
ss -antp |grep 16443 |egrep -cv "grep|$$"什么意思?
这个命令的含义是:列出所有 TCP 连接,过滤出本地端口为 16443 的连接,并通过管道将结果传递给 grep 命令,进一步过滤掉包含关键字 "grep" 和当前进程 ID 的行,最终输出剩余行数。换句话说,它的作用是检查是否存在本地端口为 16443 的活动连接。如果输出结果为 0,则表示没有这样的连接;如果大于 0,则表示存在至少一个这样的连接。