10 个鲜为人知的实用 Linux 命令 - 第五部分
在“鲜为人知的 Linux 命令”系列文章大获成功之后,我们在此向您介绍该系列的最后一篇文章,当然,这也不是最不重要的。之前的文章是:
- 11 个鲜为人知的实用 Linux 命令 - 第一部分
- 10 个鲜为人知的 Linux 命令 - 第二部分
- 10 个鲜为人知的 Linux 命令 - 第三部分
- 10 个鲜为人知的有效 Linux 命令 - 第四部分
42. lsb_发布
命令 ' lsb_release ' 打印特定于发行版的信息。如果未安装lsb_release ,您可以在Debian上使用 apt ' lsb-core '或在Red Hat上使用 yum ' redhat-lsb ' 来安装软件包。
# lsb_release -a LSB Version: :base-4.0-ia32:base-4.0-noarch:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32: Distributor ID: CentOS Description: CentOS release 6.3 (Final) Release: 6.3 Codename: Final
注意:选项“ -a ”显示有关版本、ID、描述、发布和代号的所有可用信息。
43. nc -zv 本地主机 80
检查端口80是否打开。我们可以用任何其他端口号替换“ 80 ”来检查它是打开还是关闭。
$ nc -zv localhost 80 Connection to localhost 80 port [tcp/http] succeeded!
检查端口8080是否开放。
$ nc -zv localhost 8080 nc: connect to localhost port 8080 (tcp) failed: Connection refused
44. curl ipinfo.io
以下命令将输出所提供的IP 地址的“地理位置” 。
$ curl ipinfo.io "ip": "xx.xx.xx.xx", "hostname": "triband-del-aa.bbb.cc.ddd.bol.net.in", "city": null, "region": null, "country": "IN", "loc": "20,77", "org": "AS17813 Mahanagar Telephone Nigam Ltd."
45. 查找 .-user root
以下命令输出与用户(root)拥有的文件相关的文件。当前目录中用户“root”拥有的所有文件。
# find . -user root ./.recently-used.xbel ./.mysql_history ./.aptitude ./.aptitude/config ./.aptitude/cache ./.bluefish ./.bluefish/session-2.0 ./.bluefish/autosave ./.bash_history
当前目录中用户“ avi ”拥有的所有文件。
# find . -user avi ./.cache/chromium/Cache/f_002b66 ./.cache/chromium/Cache/f_001719 ./.cache/chromium/Cache/f_001262 ./.cache/chromium/Cache/f_000544 ./.cache/chromium/Cache/f_002e40 ./.cache/chromium/Cache/f_00119a ./.cache/chromium/Cache/f_0014fc ./.cache/chromium/Cache/f_001b52 ./.cache/chromium/Cache/f_00198d ./.cache/chromium/Cache/f_003680
46. sudo apt-get build-dep ffmpeg
以下命令将在安装相应软件包时自动构建依赖项。因此,软件包安装过程非常流畅和简单。
# apt-get build-dep ffmpeg libxinerama-dev libxml-namespacesupport-perl libxml-sax-expat-perl libxml-sax-perl libxml-simple-perl libxrandr-dev libxrender-dev x11proto-render-dev x11proto-xinerama-dev xulrunner-dev The following packages will be upgraded: libpixman-1-0 1 upgraded, 143 newly installed, 0 to remove and 6 not upgraded. Need to get 205 MB of archives. After this operation, 448 MB of additional disk space will be used. Do you want to continue [Y/n]?
47. lsof -iTCP:80 -sTCP:监听
以下命令输出使用特定端口80 的进程/服务的名称。为了更好地理解在端口80上运行以下命令,它将列出在端口上运行的所有服务/进程。
root@localhost:/home/avi# lsof -iTCP:80 -sTCP:LISTEN COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME apache2 1566 root 5u IPv6 5805 0t0 TCP *:www (LISTEN) apache2 1664 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN) apache2 1665 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN) apache2 1666 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN) apache2 1667 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN) apache2 1668 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
同样的方法,你也可以检查22端口正在运行的服务/进程。
root@localhost:/home/avi# lsof -iTCP:22 -sTCP:LISTEN COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 2261 root 3u IPv4 8366 0t0 TCP *:ssh (LISTEN) sshd 2261 root 4u IPv6 8369 0t0 TCP *:ssh (LISTEN)
48. 查找 -大小 +100M
find 命令以递归方式列出当前目录中所有大于指定大小(此处为100 MB)的文件。
# find -size +100M ./.local/share/Trash/files/linuxmint-15-cinnamon-dvd-32bit.iso ./Downloads/Fedora-Live-Desktop-i686-19-1.iso ./Downloads/Ant Videos/shakira 2.avi ./Downloads/Deewar.avi ./Desktop/101MSDCF/MOV02224.AVI ./Desktop/101MSDCF/MOV02020.AVI ./Desktop/101MSDCF/MOV00406.MP4 ./Desktop/squeeze.iso
递归列出当前目录中所有大小超过1000 MB的文件。
root@localhost:/home/avi# find -size +1000M ./Downloads/The Dark Knight 2008 hindi BRRip 720p/The Dark Knight.mkv.part ./Downloads/Saudagar - (1991) - DVDRiP - x264 - AAC 5.1 - Chapters - Esubs - [DDR]/Saudagar - (1991) - DVDRiP - x264 - AAC 5.1 - Chapters - Esubs - [DDR].mkv ./Downloads/Deewar.avi ./Desktop/squeeze.iso
49. pdftk
pdftk命令将多个 pdf 文件合并为一个。您必须安装pdftk程序。如果没有,请执行 apt 或 yum 来获取所需的包。
$ pdftk 1.pdf 2.pdf 3.pdf …. 10.pdf cat output merged.pdf
50. ps -LF -u 用户名
以下命令输出用户的进程和线程。选项“ L ”(列出线程)和“ -F ”(完整格式列表)。
$ ps -LF -u avi avi 21645 3717 21766 0 5 66168 117164 1 18:58 ? 00:00:00 /usr/ avi 21645 3717 21768 0 5 66168 117164 1 18:58 ? 00:00:00 /usr/ avi 22314 3717 22314 0 2 42797 50332 0 19:00 ? 00:00:40 /usr/ avi 22314 3717 22316 0 2 42797 50332 1 19:00 ? 00:00:00 /usr/ avi 22678 24621 22678 0 1 969 1060 1 21:05 pts/1 00:00:00 ps -L avi 23051 3717 23051 0 2 37583 45444 1 19:03 ? 00:00:52 /usr/ avi 23051 3717 23053 0 2 37583 45444 0 19:03 ? 00:00:03 /usr/ avi 23652 1 23652 0 2 22092 12520 0 19:06 ? 00:00:22 gnome avi 23652 1 23655 0 2 22092 12520 0 19:06 ? 00:00:00 gnome
51. Startx — :1
共享X会话意味着频繁登录和退出,这时Startx命令就可以派上用场了。该命令会创建一个新会话,因此无需频繁登录和退出会话。为了在两个X会话之间切换,我们需要在“ ctrl+Alt+F7 ”和“ ctrl+Alt+F8 ”之间切换。
注意:键“ ctrl+Alt+F1 ”、“ ctrl+Alt+F6 ”用于控制台会话,“ ctrl+Alt+F7 ”、“ ctrl+Alt+F12 ”用于 X 会话。因此有6 个控制台会话和6 个X 会话,无需频繁登录和退出。上述顺序适用于大多数发行版,但不同的发行版可能有不同的实现方式。我在 Debian 上检查过,它运行良好。
目前就这些了。我们将在以后的文章中继续根据需要提供其他鲜为人知的命令和一行脚本。不要忘记对我们的文章和“鲜为人知的 Linux 命令”系列提供宝贵的反馈。我很快就会发布我的下一篇文章,在那之前,请保持健康、关注并关注示例。