`
天梯梦
  • 浏览: 13628119 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

11 个很少人知道但很有用的 Linux 命令

 
阅读更多

Linux命令行吸引了大多数Linux爱好者。一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务。Linux命令和它们的转换对于Linux用户Shell脚本程序员管理员来说是最有价值的宝藏。有些Linux命令很少人知道,但不管你是新手还是高级用户,它们都非常方便有用。

 

 

这篇文章的目的是介绍一些少有人知的Linux命令,它们一定会高效地帮你管理你的桌面/服务器。

 

 

1. sudo !!命令

 

没有特定输入sudo命令而运行,将给出没有权限的错误。那么,你不需要重写整个命令,仅仅输入'!!'就可以抓取最后的命令。

 

$ apt-get update

E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied) 
E: Unable to lock directory /var/lib/apt/lists/ 
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied) 
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

 

$ sudo !!

sudo apt-get update 
[sudo] password for server: 
…
..
Fetched 474 kB in 16s (28.0 kB/s) 
Reading package lists... Done 
server@localhost:~$

 

 

2. python命令

 

下面的命令生产一个通过HTTP显示文件夹结构树的简单网页,可以通过浏览器在端口8000访问,直到发出中断信号。

 

 

# python -m SimpleHTTPServer

 

 

 

3. mtr命令

 

我们大多数都熟悉pingtraceroute。那对于把两个命令的功能合二为一的mtr命令呢。如果mtr没在你的机子上安装,apt或者yum需要的包。

 

$ sudo apt-get install mtr (On Debian based Systems)

 

# yum install mtr (On Red Hat based Systems)

 

现在运行mtr命令,开始查看mtr运行的主机和google.com直接的网络连接。

 

# mtr google.com

 

 

 

4. Ctrl+x+e命令

 

这个命令对于管理员和开发者非常有用。为了使每天的任务自动化,管理员需要通过输入vivimnano等打开编辑器。

 

仅仅从命令行快速的敲击“Ctrl-x-e”,就可以在编辑器中开始工作了。

 

 

5. nl命令

 

nl命令”添加文件的行数。一个叫做'one.txt'的文件,其每行的内容是(FedoraDebianArchSlackSuse),给每行添加行号。首先使用cat命令显示“one.txt”的文件内容。

 

# cat one.txt 

fedora 
debian 
arch 
slack 
suse

 

 

现在运行“nl命令”,以添加行号的方式来显示。

 

# nl one.txt 

1 fedora 
2 debian 
3 arch 
4 slack 
5 suse

 

 

6. shuf命令

 

“Shut”命令随机从一个文件文件夹中选择行/文件/文件夹。首先使用ls命令来显示文件夹的内容。

 

# ls 
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos

#  ls | shuf (shuffle Input)
Music 
Documents 
Templates 
Pictures 
Public 
Desktop 
Downloads 
Videos

#  ls | shuf -n1 # 随机选择一个
Public

# ls | shuf -n1 
Videos

# ls | shuf -n1 
Templates

# ls | shuf -n1 
Downloads

 

 

注意:你可以把‘ n1’替换成‘ n2’来输出两个随机选择或者使用 n3、 n4等数字输出其他任意的随机选择。

 

 

7. ss命令

 

ss”表示socket统计。这个命令调查socket,显示类似netstat命令的信息。它可以比其他工具显示更多的TCP和状态信息。

 

# ss 

State      Recv-Q Send-Q      Local Address:Port          Peer Address:Port   
ESTAB      0      0           192.168.1.198:41250        *.*.*.*:http    
CLOSE-WAIT 1      0               127.0.0.1:8000             127.0.0.1:41393   
ESTAB      0      0           192.168.1.198:36239        *.*.*.*:http    
ESTAB      310    0               127.0.0.1:8000             127.0.0.1:41384   
ESTAB      0      0           192.168.1.198:41002       *.*.*.*:http    
ESTAB      0      0               127.0.0.1:41384            127.0.0.1:8000

 

 

8. last命令

 

last”命令显示的是上次登录用户的历史信息。这个命令通过搜索文件“/var/log/wtmp”,显示logged-inlogged-out及其tty‘s的用户列表。

 

#  last 
server   pts/0        :0               Tue Oct 22 12:03   still logged in   
server   tty8         :0               Tue Oct 22 12:02   still logged in   
…
...
(unknown tty8         :0               Tue Oct 22 12:02 - 12:02  (00:00)    
server   pts/0        :0               Tue Oct 22 10:33 - 12:02  (01:29)    
server   tty7         :0               Tue Oct 22 10:05 - 12:02  (01:56)    
(unknown tty7         :0               Tue Oct 22 10:04 - 10:05  (00:00)    
reboot   system boot  3.2.0-4-686-pae  Tue Oct 22 10:04 - 12:44  (02:39)    

wtmp begins Fri Oct  4 14:43:17 2007

 

 

9. curl ifconfig.me

那么如何得到你的外部IP地址呢?使用google?那么这个命令就在你的终端输出你的外部IP地址。

# curl ifconfig.me

注意:你可能没有按照curl包,你需要 apt/yum来按照包。

 

10. tree命令

以树式的格式得到当前文件夹的结构。

# tree
. 
|-- Desktop 
|-- Documents 
|   `-- 37.odt 
|-- Downloads 
|   |-- attachments.zip 
|   |-- ttf-indic-fonts_0.5.11_all.deb 
|   |-- ttf-indic-fonts_1.1_all.deb 
|   `-- wheezy-nv-install.sh 
|-- Music 
|-- Pictures 
|   |-- Screenshot from 2013-10-22 12:03:49.png 
|   `-- Screenshot from 2013-10-22 12:12:38.png 
|-- Public 
|-- Templates 
`-- Videos 

10 directories, 23 files

 

11. pstree

这个命令显示当前运行的所有进程及其相关的子进程,输出的是类似‘tree’命令的树状格式。

# pstree 
init─┬─NetworkManager───{NetworkManager} 
     ├─accounts-daemon───{accounts-daemon} 
     ├─acpi_fakekeyd 
     ├─acpid 
     ├─apache2───10*[apache2] 
     ├─at-spi-bus-laun───2*[{at-spi-bus-laun}] 
     ├─atd 
     ├─avahi-daemon───avahi-daemon 
     ├─bluetoothd 
     ├─colord───{colord} 
     ├─colord-sane───2*[{colord-sane}] 
     ├─console-kit-dae───64*[{console-kit-dae}] 
     ├─cron 
     ├─cupsd 
     ├─2*[dbus-daemon] 
     ├─dbus-launch 
     ├─dconf-service───2*[{dconf-service}] 
     ├─dovecot─┬─anvil 
     │         ├─config 
     │         └─log 
     ├─exim4 
     ├─gconfd-2 
     ├─gdm3─┬─gdm-simple-slav─┬─Xorg 
     │      │                 ├─gdm-session-wor─┬─x-session-manag─┬─evolution-a+ 
     │      │                 │                 │                 ├─gdu-notific+ 
     │      │                 │                 │                 ├─gnome-scree+ 
     │      │                 │                 │                 ├─gnome-setti+ 
     │      │                 │                 │                 ├─gnome-shell+++ 
     │      │                 │                 │                 ├─nm-applet──+++ 
     │      │                 │                 │                 ├─ssh-agent 
     │      │                 │                 │                 ├─tracker-min+ 
     │      │                 │                 │                 ├─tracker-sto+ 
     │      │                 │                 │                 └─3*[{x-sessi+ 
     │      │                 │                 └─2*[{gdm-session-wor}] 
     │      │                 └─{gdm-simple-slav} 
     │      └─{gdm3} 
     ├─6*[getty] 
     ├─gnome-keyring-d───9*[{gnome-keyring-d}] 
     ├─gnome-shell-cal───2*[{gnome-shell-cal}] 
     ├─goa-daemon───{goa-daemon} 
     ├─gsd-printer───{gsd-printer} 
     ├─gvfs-afc-volume───{gvfs-afc-volume}

 

目前为止就这么多。在下篇文章中,我将涉及一些其他很少有人知道的有趣的Linux命令。到那时连接 Tecmint保持收看。喜欢和分享将有助于我们传播。

 

英文原文:11 Lesser Known Useful Linux Commands 

via: http://www.oschina.net/translate/11-lesser-known-useful-linux-commands

来源:http://linux.cn/thread/11925/1/1/

 

 

 

分享到:
评论

相关推荐

    入门学习Linux常用必会60个命令实例详解doc/txt

    如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。 一般界面是这样的: Manddrake Linux release 9.1(Bamboo) for i586 renrel 2.4.21-0.13mdk on i686 / tty1 localhost login:root ...

    windows实用dos命令大全

    (2)卷标名由1至11个字符组成。  (六)VOL——显示磁盘卷标命令  1.功能:查看磁盘卷标号。  2.类型:内部命令  3.格式:VOL[盘符:]  4.使用说明:省略盘符,显示当前驱动器卷标。  (七)SCANDISK——...

    Linux 一句话精彩问答

    Linux 一句话精彩问答由中国 Linux 和开源战略经理、Intel 开源技术中心(OTC) 陈绪编写!分为:系统设置篇、网络相关篇、程序开发篇、经典图书篇和数据库相关篇!...很多有用的小命令你别处搞不到o !

    Asus-C100P-Chromebook:我在Chromebook寿命终止后安装Arch Linux的持续经验

    我能够在线找到一些非常有用的资源,然后将它们放到几个脚本和配置文件中。 希望其他人会有所帮助,希望更多有知识的linux用户能够解决我遇到的一些问题。 我花了很多时间在Arch Wiki上。 我真的很喜欢C100P,当它...

    javashuffle源码-cfg-note:Linux系统常用配置笔记,非项目,包含网络、基本工具、环境变量、Jdk、Scala、Tomca

    身为码农,表示十分痛恨服务器上的各种乱七八糟配置,平时很少用到Linux命令,对Linux一直保持在学了就忘,忘了再学的死循环中,故做此笔记,可能以后翻看的机会也不多,毕竟总有用到的时候 PS:本文仅针对CentOS,...

    Git+TortoiseGit+中文语言包 分布式版本控制系统

    有了Git,我可以信心十足,因为团队里每个人在自己电脑上的克隆就是一份可用的备份。另外Git里的几乎每个操作都是增加数据(很少有删除的)。想搞砸都很难。这种感觉很好。 5. 产生有用的提交 把牛奶、冰淇淋和...

    新版Android开发教程.rar

    � 由于采用了 Java 作为应用开发语言,目前可用的传统第三方应用还很少,但由于 Android 是一款完全 开 源的移动计算平台,相信第三方应用会很快的丰富起来。 � Google 提供了一套 Java 核心包 (J2SE 5,J2SE 6) 的...

    VIM实用技术 技巧、插件和定制

    选择模式之一选定文本块之后,可以使用“Ctrl-G”切换到另一模式——该模式很少在Linux上 使用,本文中就不再介绍了。 Vim带有完整的帮助文档。在当前的Vim 6.4的标准发布中,有一百多章、近六十万英文词的帮助文 件...

    初级java笔试题-bash-basics:基本的和高级的bash终端命令和技巧

    这个页面不长,但如果你能使用和回忆这里的所有项目,你就会知道很多。 这项工作是 . 其中一些在 上,但后来转移到 GitHub,在那里比原作者更有才华的人进行了许多改进。 如果您有与命令行相关的问题。 如果您看到...

    deeptrio

    建议在conda虚拟环境中安装依赖项,以便仅需很少的安装命令即可运行DeepTrio。 您可以通过以下命令准备所有依赖项。 安装Miniconda Miniconda是conda的免费最小安装程序。 它是Anaconda的小型引导程序版本,仅包含...

    holoviews:使用Holoviews,您的数据可以可视化

    HoloViews 停止绘制数据-注释数据并使其可视化。 HoloViews是一个Python库,旨在使数据分析和可视化变得无缝和简单。...尽管HoloViews本身仅依赖于Numpy Pandas和Param ,但此命令将安装对HoloViews最有用的典

    devkitadv-GBA开发工具

    这个控制台shell,命令行支持的是类式linux的指令,你可能不太了解,不过你不用担心呵 我们不需要记太多的命令指令,很简单的几句这可以了 就当是dos命令,只不过命令名称变了而已 下面是几个对应 ls 相当于dos下的...

    VMWare 7.0.1 build-227600

     这个HOST OS可以是Windows 2000 Server以上的Windows系统或者是Linux(官方支持列表中只有RH,SUSE,Mandrake很少的几种),和VMware-ESX-Server一样带有远程web管理和客户端管理功能。  VMware-WorkStation  这个...

    c语言编写单片机技巧

    而汇编语言,一条指令就对应一个机器码,每一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。 如果对单片机C语言有...

    PHP基础教程 是一个比较有价值的PHP新手教程!

    只需要很少的编程知识你就能使用PHP建立一个真正交互的WEB站点。本教程并不想让你完全了解这种语言,只是能使你尽快加入开发动态web站点的行列。我假定你有一些HTML(或者HTML编辑器)的基本知识和一些编程思想。 1...

    MyFiles_RC

    最后,下面显示了与各种操作相关的各种技巧(通常是那些经常需要足够有用的技巧,但很少需要被轻易忘记的技巧)。重击获得不同月份的cal 可以使用通过某种操纵传递的date作为cal输入,以获取其他月份的月历。 date ...

    Docker 数据卷,数据卷容器详细介绍

    数据卷是一个可供容器使用的特殊目录,它绕过文件系统,可以提供很多有用的特性: – 数据卷可以在容器之间共享和重用 – 对数据卷的修改会立马生效 – 对数据卷的更新,不会影响镜像 – 卷会一直存在,直到没有...

    网管教程 从入门到精通软件篇.txt

    该信息在运行 fixboot 和 fixmbr 命令时非常有用。  map 命令仅在使用故障恢复控制台时才可用。  Map [ arc]  参数  arc  指示 map 命令显示高级 RISC 计算 (ARC)设备名称而不是设备名称。以下是 ARC 设备...

    A-customized-MCM-LaTeX-template-based-on-ctexart:华北理工大学数学建模协会定制的美赛LaTeX模板,附2019年C题一等奖论文,适配至2021年

    本模板已经在Windows10,MacOS,Linux(Arch)下全线跑通。 如果作者不是很忙,会持续跟进每年的美赛模板变动情况,并更新。 写在前面 当年一起寒暑假不回家,机房培训刷夜一起建模的小伙伴早已各奔东西,入海工作或...

    用matlab生成谐波代码-rheoQCM:用于QCM数据采集和分析的Python程序

    具有QCM-D数据的数据导入功能对于进行QCM-D测试的社区很有用。 不管如何生成QCM数据,某些分析例程通常都是有用的。 入门 该软件的分析部分应在Windows / Mac / Linux平台上运行。 但是,在所有情况下,您都需要熟悉...

Global site tag (gtag.js) - Google Analytics