Linux常用基本命令【转】

Linux 基本命令

 
 

Linux是一个基于命令的系统,它有很多很强的命令. 但它也有桌面系统,比如KDE, Gnome等,甚至还有仿windows桌面. 但真正在Linux下面工作的人,却不喜欢这些桌面,独爱命令行. 当你学会了在命令行下工作的时候,会体会到它的强大(黑客大都在命令行下干活的). 要学好使用Linux,得从命令行开始. Les go now.

 
 

Note:这里所讲的都是命令的基本用法,每个命令都有很多参数可用. 如果想了解其复杂使用,可以使用man查看命令帮助. 比如想看ls使用: man ls .

 

1. 文件管理

 

文件管理的基本命令包括ls, rm, mv, ln, mkdir,touch,cat ....

 
 

ls - 是查看文件列表.

 
 

 比如:要查看当前目录文件列表: ls.

 
 

         查看根目录文件列表:ls /

 
 

        查看文件列表并显示文件属性,包括时间,组, 用户, 权限等: ls -l

 
 

        按时间排序: ls -lctr

 
 

如果文件熟悉的前面字符是d,表示是一个目录. 比如:

 
 

drwxr-xr-x  2 root    root      4096 Apr 16  2007 filterip

 
 

-rm 删除文件

 
 

 比如删除文件a: rm a

 
 

删除目录b: rm -r b

 
 

-mv 移动/改名文件

 
 

比如改名文件名a为b: mv a b

 
 

将文件a移动到目录/tmp: mv a /tmp

 
 

-mkdir 创建目录

 
 

比如创建目录 a: mkdir a

 
 

-touch 修改文件时间/生成新文件

 
 

比如生成一个新的空文件a: touch a

 
 

修改文件b到当前时间: touch b

 
 

-cat 输出文件内容

 
 

比如输出文本文件A.TXT到屏幕: cat A.TXT.

 

2. 进程管理

 

-ps 查看系统进程

 
 

比如查看当前用户进程: ps

 
 

查看所有进程,包括活动非活动进程: ps -ef.

 
 

查看所有java进程: ps -ef | grep java

 
 

显示的第二列为进程号.

 
 

 -kill/killall 终止进程

 
 

比如终止进程号500的进程: kill 500

 
 

比如终止进程名为java的所有进程: killall p1

 
 

-bg/fg 切换进程到后台/前台

 
 

当进程运行在当前命令行的时候,可以按Ctrl+z暂停进程,再用命令bg将进程切换到后台.  相反,可以用命令fg将进程切换到前台. 有时候用&符号将进程运行在了后台,这个时候可以用fg将其切换到前台来.

 
 

-查询系统进程树

 
 

运行pstree可以输出当前进程树.

 

3.用户管理

 

-who 查看登陆的用户

 
 

-adduser 为系统创建新的用户(需要root权限,下同)

 
 

比如增加用户qq: adduser qq;

 
 

增加用户qq,秘密123456: adduser -p 123456 qq

 
 

-passwd修改用户密码

 
 

比如修改qq的密码为666666: passwd qq,系统提示输入旧的密码,再输入新的密码.

 
 

-userdel 删除用户

 
 

比如删除用户qq: userdel aa

 
 

-usermod 修改用户属性

 
 

比如修改qq到admin组: usermod -p admin aa

 

 4.资源管理

 

-top 查看系统资源状况

 
 

top是最常用的查看系统当前状态的工具.可以查看CPU, memory, load等.

 
 

-查看主机CPU信息

 
 

运行cat /proc/cpuinfo, 输出:

 
 

.....

 
 

......

 
 

processor       : 3

 

vendor_id       : GenuineIntel

 

cpu family      : 6

 

model           : 15

 

model name      : Intel(R) Xeon(R) CPU            5120  @ 1.86GHz

 

stepping        : 6

 

cpu MHz         : 1862.093

 

cache size      : 4096 KB

 

physical id     : 3

 

siblings        : 2

 

core id         : 7

 

cpu cores       : 2

 

fdiv_bug        : no

 

hlt_bug         : no

 

f00f_bug        : no

 

coma_bug        : no

 

fpu             : yes

 

fpu_exception   : yes

 

cpuid level     : 10

 

wp              : yes

 

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl est tm2 xtpr

 

bogomips        : 3724.15

 
 

这个表示是第4颗CPU, 这个CPU有2个core, 也就是系统有4个双核的CPU. 如果系统开启了超线程, 则等价于系统有8个CPU. (注: 超线程选项一般在BIOS中开启)

 
 

-查询系统内存信息

 
 

运行cat /proc/meminfo,可以查看当前系统的内存信息:

 
 

MemTotal:      4149104 kB

 

MemFree:        706788 kB

 

Buffers:        220900 kB

 

Cached:        2981520 kB

 

SwapCached:          0 kB

 

Active:        2734120 kB

 

Inactive:       572920 kB

 

HighTotal:     3276448 kB

 

HighFree:       608064 kB

 

LowTotal:       872656 kB

 

LowFree:         98724 kB

 

SwapTotal:     2096472 kB

 

SwapFree:      2096472 kB

 

Dirty:               4 kB

 

Writeback:           0 kB

 

Mapped:         129976 kB

 

Slab:           117164 kB

 

CommitLimit:   4171024 kB

 

Committed_AS:  2507740 kB

 

PageTables:       1968 kB

 

VmallocTotal:   106488 kB

 

VmallocUsed:      2984 kB

 

VmallocChunk:   102920 kB

 

HugePages_Total:     0

 

HugePages_Free:      0

 

Hugepagesize:     2048 kB

 
 

-fdisk 查看硬盘分区

 
 

fdisk -l /dev/sda 可以输出硬盘/dev/sda的分区列表,比如输出类似:

 
 

Disk /dev/sda: 72.7 GB, 72746008576 bytes

 

255 heads, 63 sectors/track, 8844 cylinders

 

Units = cylinders of 16065 * 512 = 8225280 bytes

 
 

   Device Boot      Start         End      Blocks   Id  System

 

/dev/sda1   *           1          16      128488+  83  Linux

 

/dev/sda2              17         526     4096575   83  Linux

 

/dev/sda3             527         787     2096482+  82  Linux swap

 

/dev/sda4             788        8844    64717852+   5  Extended

 

/dev/sda5             788        2062    10241406   83  Linux

 

/dev/sda6            2063        2572     4096543+  83  Linux

 

/dev/sda7            2573        3082     4096543+  83  Linux

 

/dev/sda8            3083        3569     3911796   83  Linux

 

/dev/sda9            3570        8844    42371406   83  Linux

 
 

这里可以看出,/dev/sda硬盘被分成了9个区, 带*号的是启动分区.

 
 

 

 
 

 -df 查看在用文件系统

 
 

运行df -h, 输出类似:

 
 

Filesystem            Size  Used Avail Use% Mounted on

 

/dev/sda2             3.9G  278M  3.4G   8% /

 

/dev/sda1             122M   17M   99M  15% /boot

 

/dev/sda9              40G   21G   17G  56% /home

 

/dev/sda8             3.7G   40M  3.5G   2% /opt

 

none                  2.0G     0  2.0G   0% /dev/shm

 

/dev/sda6             3.9G   40M  3.7G   2% /tmp

 

/dev/sda5             9.7G  5.4G  3.8G  59% /usr

 

/dev/sda7             3.9G  1.2G  2.5G  32% /var

 

192.168.206.231:/opt/taobao                    3.9G  3.2G  537M  86% /opt/taobao

 

192.168.206.231:/home/admin/cms         40G  3.8G   34G  11% /opt/cms

 

192.168.206.231:/home/admin/htdocs     40G  3.8G   34G  11% /opt/htdocs

 

10.1.6.131:/home/images                         167G   83G   76G  53% /opt/images

 

10.1.6.131:/home/imagesvr                      167G   83G   76G  53% /mnt

 
 

每个/dev/xxx代表一个分区. 同时,这里还有远程文件系统. 百分比代表已经使用的空间比例.

 
 

 -查询系统有几个网卡

 
 

运行 lspci | grep Ethernet, 输出类似:

 
 

05:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet (rev 12)

 
 

有几条记录就是几个网卡.

 
 

想进一步查看网卡信息,运行 lspci -vv -s 05:00.0

 
 

-hdparm查看硬盘信息

 
 

比如查看硬盘hda转速, 运行hdparm -i /dev/hda,

 
 

 -查询系统usb接口信息

 
 

运行命令lsusb可以知道当前系统有几个usb接口,比如输出:

 
 

Bus 004 Device 001: ID 0000:0000

 

Bus 003 Device 001: ID 0000:0000

 

Bus 002 Device 001: ID 0000:0000

 

Bus 001 Device 002: ID 04b4:6560 Cypress Semiconductor Corp. CY7C65640 USB-2.0 "TetraHub"

 

Bus 001 Device 001: ID 0000:0000

 
 

表示有5个usb接口可用.

你可能感兴趣的:(linux)