Linux命令,一看就明白,再看更明白

本文详细介绍了SSH及其相关命令的使用方法,包括通过SecureShell远程连接和执行命令、文件安全复制、用户切换、文件查找、文本搜索、进程状态查看及网络状态检查等常见Linux命令的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ssh

 1. ssh是什么:利用Secure Shell进行远程主机连接并执行命令的command
 2. 命令规则:ssh [option] host-name [command]
 3. 例子1:ssh aaa.bbb.ccc.ddd #用主机ip地址登陆
 4. 例子2:ssh bigdata #用主机名登陆,主机名是在/etc/hosts已记录的
 5. 例子3:ssh bigdata-username@bigdata #用user名加主机名登陆
 6. 例子4:ssh bigdata ls #用主机名登陆并执行ls命令

scp


 1. scp是什么:Secure copy
 2. 命令规则:scp [option] copy-source copy-dest
 3. 例子1:scp tmp.txt karuma@aaa.bbb.ccc.ddd:~/ 
#将本地机器的当前路径下的tmp.txt 拷贝到 ip为aaa.bbb.ccc.ddd远程主机的用户名为karuma的家目录下,也就是/home/karuma/下

su root 和 su - root


 1.1. su root是什么:switch user to root;登陆shell仍然使用原user,从1.2.例子可以看到切换前后的路径并没有改变
 1.2. 例子1:

[bigdata@bigdata bin]$ su root 

Password:

[root@bigdata bin]# exit 

 2.1. su - root是什么:switch user to root;登陆shell使用切换后的user的shell,从22.例子可以看到切换前后的路径有了改变
 2.2. 例子2:

[bigdata@bigdata bin]$ su - root

Password:

[root@bigdata ~]#

find


 1. find是什么:指定目录下查找文件
 2. 命令规则:find [目录] [条件] [动作]
 3. 例子1:find ./ -name "*test*" -print #在当前路径下查找name为包含test的文件并打印到屏幕
 4. 例子1:find ./ -name "*test*"  #在当前路径下查找name为包含test的文件并打印到屏幕
 5. 例子1:find -name "*test*" -print #在当前路径下查找name为包含test的文件并打印到屏幕
 6. 例子1:find -name "*test*"  #在当前路径下查找name为包含test的文件并打印到屏幕
 7. 例子1:find ./ -name "*test*" | xargs ls #在当前路径下查找name为包含test的文件并用ls到屏幕

grep


 1. grep是什么:从文件中查找包含某字符串的行
 2. 命令规则:grep [option] partten [file]
 3. 例子1:grep test-str test-file #打印出test-file中包含test-str的行
 4. 例子2:grep -v test-str test-file #打印出test-file中不包含test-str的行
 5. 例子3:grep -n test-str test-file #打印出test-file中包含test-str的行 以及 行号

nohub和&

 1. nohup:主sheel死亡也不退出,但crtl+c会被中断
 2. &:在后台运行,跟nohup反一反
 3. 故,用nohup加上&作一组合来使用一个守护进程。

ps


 1. ps是什么:print status,也就是打印当前进程快照信息
 2. 命令规则:ps [option]
 3. 关于ps -ef 和 ps aux的区别:
 3.1. 命令格式上差别:其一为带一条横杠的unix风格,其二为不带横杠的BSD风格,另外带两条横杠的为GNU风格
 3.2. 打印快照信息的差异:请对比以下例子去体会 
 4. 例子1:ps:打印出自身终端进程信息
[bigdata@bigdata Desktop]$ ps
   PID TTY          TIME CMD
  2482 pts/0    00:00:00 bash
  2610 pts/0    00:00:00 ps

 5. 例子2:ps aux
 5.1. ps a :打印出所有端末操作的进程信息
 [bigdata@bigdata Desktop]$ ps a 
   PID TTY      STAT   TIME COMMAND
  2105 tty2     Ss+    0:00 /sbin/mingetty /dev/tty2
  2107 tty3     Ss+    0:00 /sbin/mingetty /dev/tty3
  2109 tty4     Ss+    0:00 /sbin/mingetty /dev/tty4
  2115 tty5     Ss+    0:00 /sbin/mingetty /dev/tty5
  2117 tty6     Ss+    0:00 /sbin/mingetty /dev/tty6
  2131 tty1     Ss+    0:05 /usr/bin/Xorg :0 -nr -verbose -audit 4 -auth /var/run/gdm/auth-for-gdm-FzvXzD/database -nolisten tcp vt1
  2482 pts/0    Ss     0:00 /bin/bash
  2705 pts/0    R+     0:00 ps a

  5.2. ps x :打印出所有非端末操作的进程信息
  [bigdata@bigdata Desktop]$ ps x | head
   PID TTY      STAT   TIME COMMAND
  2290 ?        Sl     0:00 /usr/bin/gnome-keyring-daemon --daemonize --login
  2300 ?        Ssl    0:00 gnome-session
  2308 ?        S      0:00 dbus-launch --sh-syntax --exit-with-session
  2309 ?        Ssl    0:00 /bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
  2327 ?        S      0:00 /usr/libexec/gconfd-2
  2335 ?        Ssl    0:00 /usr/libexec/gnome-settings-daemon
  2336 ?        Ss     0:00 seahorse-daemon
  2339 ?        S      0:00 /usr/libexec/gvfsd
  2355 ?        S      0:00 metacity

  5.3. ps u :打印出自身端末操作的进程信息,并带有cpu和内存使用率等的信息
  [bigdata@bigdata Desktop]$ ps u | head
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
bigdata    2482  0.0  0.0 108472  1900 pts/0    Ss   07:36   0:00 /bin/bash
bigdata    2741  0.0  0.0 110240  1136 pts/0    R+   08:01   0:00 ps u
bigdata    2742  0.0  0.0 100920   616 pts/0    S+   08:01   0:00 head

  5.4. ps aux:打印出所有端末的进程信息,并带有cpu和内存使用率等的信息
  [bigdata@bigdata Desktop]$ ps aux | head -10
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.0  19364  1536 ?        Ss   07:34   0:01 /sbin/init
root          2  0.0  0.0      0     0 ?        S    07:34   0:00 [kthreadd]
root          3  0.0  0.0      0     0 ?        S    07:34   0:00 [migration/0]
root          4  0.0  0.0      0     0 ?        S    07:34   0:00 [ksoftirqd/0]
root          5  0.0  0.0      0     0 ?        S    07:34   0:00 [migration/0]
root          6  0.0  0.0      0     0 ?        S    07:34   0:00 [watchdog/0]
root          7  0.0  0.0      0     0 ?        S    07:34   0:01 [events/0]
root          8  0.0  0.0      0     0 ?        S    07:34   0:00 [cgroup]
root          9  0.0  0.0      0     0 ?        S    07:34   0:00 [khelper]

 6. 例子3:ps -ef
 [bigdata@bigdata Desktop]$ ps -f
UID         PID   PPID  C STIME TTY          TIME CMD
bigdata    2482   2480  0 07:36 pts/0    00:00:00 /bin/bash
bigdata    2795   2482  0 08:07 pts/0    00:00:00 ps -f
[bigdata@bigdata Desktop]$ ps -e | head
   PID TTY          TIME CMD
     1 ?        00:00:01 init
     2 ?        00:00:00 kthreadd
     3 ?        00:00:00 migration/0
     4 ?        00:00:00 ksoftirqd/0
     5 ?        00:00:00 migration/0
     6 ?        00:00:00 watchdog/0
     7 ?        00:00:01 events/0
     8 ?        00:00:00 cgroup
     9 ?        00:00:00 khelper
[bigdata@bigdata Desktop]$ ps -ef | head
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 07:34 ?        00:00:01 /sbin/init
root          2      0  0 07:34 ?        00:00:00 [kthreadd]
root          3      2  0 07:34 ?        00:00:00 [migration/0]
root          4      2  0 07:34 ?        00:00:00 [ksoftirqd/0]
root          5      2  0 07:34 ?        00:00:00 [migration/0]
root          6      2  0 07:34 ?        00:00:00 [watchdog/0]
root          7      2  0 07:34 ?        00:00:01 [events/0]
root          8      2  0 07:34 ?        00:00:00 [cgroup]
root          9      2  0 07:34 ?        00:00:00 [khelper]

netstat


 1. netstat是什么:network status,即网络状态
 2. 命令规则:netstat [option]
 3. 例子1:netstat -anp
 3.1.netstat | less :不带listen状态的socket
 Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node Path
unix  18     [ ]         DGRAM                    13055  /dev/log
unix  2      [ ]         DGRAM                    9645   @/org/kernel/udev/udevd
unix  2      [ ]         DGRAM                    13712  @/org/freedesktop/hal/udev_event
unix  3      [ ]         STREAM     CONNECTED     24241  /home/bigdata/.pulse/a150a26261c8c6ce484fea6b00000010-runtime/native
unix  3      [ ]         STREAM     CONNECTED     24240  
unix  3      [ ]         STREAM     CONNECTED     19937  
unix  3      [ ]         STREAM     CONNECTED     19936  
unix  3      [ ]         STREAM     CONNECTED     19931  @/tmp/dbus-rUrxIbN5hg
unix  3      [ ]         STREAM     CONNECTED     19930  
unix  3      [ ]         STREAM     CONNECTED     19929  /tmp/orbit-bigdata/linc-9b0-0-125a28cfbc7a4
unix  3      [ ]         STREAM     CONNECTED     19928  
unix  3      [ ]         STREAM     CONNECTED     19925  /tmp/orbit-bigdata/linc-917-0-2755758c89d3
unix  3      [ ]         STREAM     CONNECTED     19924  
unix  3      [ ]         STREAM     CONNECTED     19921  @/tmp/dbus-rUrxIbN5hg
unix  3      [ ]         STREAM     CONNECTED     19920  
unix  3      [ ]         STREAM     CONNECTED     19919  @/tmp/.ICE-unix/2300
unix  3      [ ]         STREAM     CONNECTED     19918  
unix  3      [ ]         STREAM     CONNECTED     19915  @/tmp/.X11-unix/X0
unix  3      [ ]         STREAM     CONNECTED     19914  
unix  3      [ ]         STREAM     CONNECTED     19869  @/dbus-vfs-daemon/socket-ip9mUlzm
unix  3      [ ]         STREAM     CONNECTED     19868  
unix  3      [ ]         STREAM     CONNECTED     19870  @/dbus-vfs-daemon/socket-ncC8FzDG
unix  3      [ ]         STREAM     CONNECTED     19867  
unix  3      [ ]         STREAM     CONNECTED     19859  @/tmp/dbus-rUrxIbN5hg
unix  3      [ ]         STREAM     CONNECTED     19858  
unix  3      [ ]         STREAM     CONNECTED     19839  @/tmp/dbus-rUrxIbN5hg
unix  3      [ ]         STREAM     CONNECTED     19838  
:
 3.2. netstat -a| less:包含listen状态的socket
 Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 *:6379                      *:*                         LISTEN      
tcp        0      0 *:ssh                       *:*                         LISTEN      
tcp        0      0 localhost:ipp               *:*                         LISTEN      
tcp        0      0 localhost:smtp              *:*                         LISTEN      
tcp        0      0 *:6379                      *:*                         LISTEN      
tcp        0      0 *:ssh                       *:*                         LISTEN      
tcp        0      0 localhost:ipp               *:*                         LISTEN      
tcp        0      0 localhost:smtp              *:*                         LISTEN      
udp        0      0 *:ipp                       *:*                                     
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node Path
unix  18     [ ]         DGRAM                    13055  /dev/log
unix  2      [ ACC ]     STREAM     LISTENING     17852  /tmp/orbit-bigdata/linc-920-0-35c6553c3e3bd
unix  2      [ ACC ]     STREAM     LISTENING     17948  /tmp/orbit-bigdata/linc-933-0-1e17ae9753127
unix  2      [ ACC ]     STREAM     LISTENING     18030  /tmp/orbit-bigdata/linc-93a-0-169118d6619a3
unix  2      [ ACC ]     STREAM     LISTENING     18116  /tmp/orbit-bigdata/linc-940-0-6c7df3b9eb72
unix  2      [ ACC ]     STREAM     LISTENING     18190  /tmp/orbit-bigdata/linc-943-0-390c45bfad14c
unix  2      [ ACC ]     STREAM     LISTENING     18385  /tmp/orbit-bigdata/linc-94e-0-6c3944e7d480a
unix  2      [ ACC ]     STREAM     LISTENING     18388  /tmp/orbit-bigdata/linc-94b-0-678e3b4fd5b46
unix  2      [ ACC ]     STREAM     LISTENING     18826  /tmp/orbit-bigdata/linc-95d-0-757fa9d163eb
unix  2      [ ACC ]     STREAM     LISTENING     19030  /tmp/orbit-bigdata/linc-959-0-7f1bd89328176
unix  2      [ ACC ]     STREAM     LISTENING     19280  /tmp/orbit-bigdata/linc-975-0-4533fe1173ce0
unix  2      [ ACC ]     STREAM     LISTENING     14089  /var/run/sdp
unix  2      [ ACC ]     STREAM     LISTENING     19178  /tmp/orbit-bigdata/linc-966-0-5b157fa937a65
unix  2      [ ACC ]     STREAM     LISTENING     13482  /var/run/cups/cups.sock
unix  2      [ ACC ]     STREAM     LISTENING     19196  /tmp/orbit-bigdata/linc-941-0-1652f027395f8
unix  2      [ ACC ]     STREAM     LISTENING     19291  /tmp/orbit-bigdata/linc-95c-0-7e6362c375b9b
unix  2      [ ACC ]     STREAM     LISTENING     19346  /tmp/orbit-bigdata/linc-96c-0-108b48a4882e0
unix  2    
 3.3.netstat -an| less:将ip地址等显示出来
 Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 0.0.0.0:6379                0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      
tcp        0      0 :::6379                     :::*                        LISTEN      
tcp        0      0 :::22                       :::*                        LISTEN      
tcp        0      0 ::1:631                     :::*                        LISTEN      
tcp        0      0 ::1:25                      :::*                        LISTEN      
udp        0      0 0.0.0.0:631                 0.0.0.0:*                               
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node Path
unix  18     [ ]         DGRAM                    13055  /dev/log
unix  2      [ ACC ]     STREAM     LISTENING     17852  /tmp/orbit-bigdata/linc-920-0-35c6553c3e3bd
unix  2      [ ACC ]     STREAM     LISTENING     17948  /tmp/orbit-bigdata/linc-933-0-1e17ae9753127
unix  2      [ ACC ]     STREAM     LISTENING     18030  /tmp/orbit-bigdata/linc-93a-0-169118d6619a3
unix  2      [ ACC ]     STREAM     LISTENING     18116  /tmp/orbit-bigdata/linc-940-0-6c7df3b9eb72
unix  2      [ ACC ]     STREAM     LISTENING     18190  /tmp/orbit-bigdata/linc-943-0-390c45bfad14c
unix  2      [ ACC ]     STREAM     LISTENING     18385  /tmp/orbit-bigdata/linc-94e-0-6c3944e7d480a
unix  2      [ ACC ]     STREAM     LISTENING     18388  /tmp/orbit-bigdata/linc-94b-0-678e3b4fd5b46
unix  2      [ ACC ]     STREAM     LISTENING     18826  /tmp/orbit-bigdata/linc-95d-0-757fa9d163eb
unix  2      [ ACC ]     STREAM     LISTENING     19030  /tmp/orbit-bigdata/linc-959-0-7f1bd89328176
unix  2      [ ACC ]     STREAM     LISTENING     19280  /tmp/orbit-bigdata/linc-975-0-4533fe1173ce0
unix  2      [ ACC ]     STREAM     LISTENING     14089  /var/run/sdp
unix  2      [ ACC ]     STREAM     LISTENING     19178  /tmp/orbit-bigdata/linc-966-0-5b157fa937a65
unix  2      [ ACC ]     STREAM     LISTENING     13482  /var/run/cups/cups.sock
unix  2      [ ACC ]     STREAM     LISTENING     19196  /tmp/orbit-bigdata/linc-941-0-1652f027395f8
unix  2      [ ACC ]     STREAM     LISTENING     19291  /tmp/orbit-bigdata/linc-95c-0-7e6362c375b9b
unix  2      [ ACC ]     STREAM     LISTENING     19346  /tmp/orbit-bigdata/linc-96c-0-108b48a4882e0
unix  2      [ ACC ]     STREAM     LISTENING     19378  /tmp/orbit-bigdata/linc-973-0-5e9139649104d
:
 3.3. netstat -anp| less:对应的pid也一并显示出来
 Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 0.0.0.0:6379                0.0.0.0:*                   LISTEN      -                   
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      -                   
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      -                   
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      -                   
tcp        0      0 :::6379                     :::*                        LISTEN      -                   
tcp        0      0 :::22                       :::*                        LISTEN      -                   
tcp        0      0 ::1:631                     :::*                        LISTEN      -                   
tcp        0      0 ::1:25                      :::*                        LISTEN      -                   
udp        0      0 0.0.0.0:631                 0.0.0.0:*                               -                   
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node PID/Program name    Path
unix  18     [ ]         DGRAM                    13055  -                   /dev/log
unix  2      [ ACC ]     STREAM     LISTENING     17852  2336/seahorse-daemo /tmp/orbit-bigdata/linc-920-0-35c6553c3e3bd
unix  2      [ ACC ]     STREAM     LISTENING     17948  2355/metacity       /tmp/orbit-bigdata/linc-933-0-1e17ae9753127
unix  2      [ ACC ]     STREAM     LISTENING     18030  2362/gnome-panel    /tmp/orbit-bigdata/linc-93a-0-169118d6619a3
unix  2      [ ACC ]     STREAM     LISTENING     18116  2368/gconf-helper   /tmp/orbit-bigdata/linc-940-0-6c7df3b9eb72
unix  2      [ ACC ]     STREAM     LISTENING     18190  2371/bonobo-activat /tmp/orbit-bigdata/linc-943-0-390c45bfad14c
unix  2      [ ACC ]     STREAM     LISTENING     18385  2382/trashapplet    /tmp/orbit-bigdata/linc-94e-0-6c3944e7d480a
unix  2      [ ACC ]     STREAM     LISTENING     18388  2379/wnck-applet    /tmp/orbit-bigdata/linc-94b-0-678e3b4fd5b46
unix  2      [ ACC ]     STREAM     LISTENING     18826  2397/gdm-user-switc /tmp/orbit-bigdata/linc-95d-0-757fa9d163eb
unix  2      [ ACC ]     STREAM     LISTENING     19030  2393/gpk-update-ico /tmp/orbit-bigdata/linc-959-0-7f1bd89328176
unix  2      [ ACC ]     STREAM     LISTENING     19280  2447/gnome-screensa /tmp/orbit-bigdata/linc-975-0-4533fe1173ce0
unix  2      [ ACC ]     STREAM     LISTENING     14089  -                   /var/run/sdp
unix  2      [ ACC ]     STREAM     LISTENING     19178  2406/gnome-power-ma /tmp/orbit-bigdata/linc-966-0-5b157fa937a65
unix  2      [ ACC ]     STREAM     LISTENING     13482  -                   /var/run/cups/cups.sock
unix  2      [ ACC ]     STREAM     LISTENING     19196  2369/nautilus       /tmp/orbit-bigdata/linc-941-0-1652f027395f8
unix  2      [ ACC ]     STREAM     LISTENING     19291  2396/notification-a /tmp/orbit-bigdata/linc-95c-0-7e6362c375b9b
unix  2      [ ACC ]     STREAM     LISTENING     19346  2412/nm-applet      /tmp/orbit-bigdata/linc-96c-0-108b48a4882e0
unix  2      [ ACC ]     STREAM     LISTENING     19378  2419/bluetooth-appl /tmp/orbit-bigdata/linc-973-0-5e9139649104d
:

lsof

 1. lsof是什么:list open files,这里的file指的是广义的file,比如socket其实也是file的一种,当socket打开的时候,会有一个file descripter
 2. 例子1:sudo lsof -i:6379  -->打印port端口为6379的进程信息
 [bigdata@bigdata Desktop]$ sudo lsof -i:6379
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
redis-ser 1962 root    4u  IPv6  14295      0t0  TCP *:6379 (LISTEN)
redis-ser 1962 root    5u  IPv4  14297      0t0  TCP *:6379 (LISTEN)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值