linux---常用命令

Posted xuaijun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux---常用命令相关的知识,希望对你有一定的参考价值。

导出文件到win:

 0.sz/rz命令:

 一般来说,linux服务器大多是通过ssh来进行远程的登陆和管理的,如何在命令方式下上和下载文件到服务器和本地呢?与ssh有关的两个命令可以提供很方便的操作:

   sz:将选定的文件发送(send)到本地机器

   rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器(receive)设置上

  scp:直接从一台主机发送到另一台主机         列:scp   路径+文件名称   主机名称@主机IP:所接受文件位置路径

1、文件处理命令:ls

功能描述:显示目录文件

命令英文原意:list

命令所在路径:/bin/ls

执行权限:所有用户

语法:  ls  选项[-ald]  [文件或目录]

        -a    显示所有文件,包括隐藏文件

-l  详细信息显示

-d  查看目录属性

        $ ls –a > dir.txt ← 将ls –a命令执行结果输出到dir.txt文件。

        $ ls –a >> dir.txt ← 将ls –a命令执行结果附加到dir.txt文件之后。

 

 

2、文件处理命令:cd

功能描述:切换目录

 

命令英文原意:change directory

命令所在路径:shell内置命令

执行权限:所有用户

语法:cd [目录]

 

范例:  $ cd  / 切换到根目录

$ cd    。。 回到上一级目录

 

 

文件处理命令:pwd

功能描述:显示当前所在的工作目录

 

命令英文原意:print working directory

命令所在路径:/bin/pwd

执行权限:所有用户

语法:pwd

范例:  $ pwd

/etc/rc5.d

 

 

文件处理命令:touch

功能描述:创建空文件

 

命令名称:touch

命令所在路径:/bin/touch

执行权限:所有用户

语法:touch  [文件名]

范例:$ touch newfile

 

 

文件处理命令:mkdir

功能描述:创建新目录

 

命令英文原意:make directories

命令所在路径:/bin/mkdir

执行权限:所有用户

语法:mkdir  [目录名]

范例:$ mkdir newdir

 

 

文件处理命令:cp

功能描述:复制文件或目录

 

命令英文原意:copy

命令所在路径:/bin/cp

执行权限:所有用户

语法:    cp  -R  [源文件或目录] [目的目录]

              -R      复制目录

范例:    $ cp  file1 file2  dir1

              将文件file1、file2复制到目录dir1

$ cp  -R dir1 dir2

              将dir1下的所有文件及子目录复制到dir2

 

 

文件处理命令:mv

功能描述:移动文件、更名

 

命令英文原意:move

命令所在路径:/bin/mv

执行权限:所有用户

语法:mv  [源文件或目录]  [目的目录]

范例:    $ mv  file1 file3

              将当前目录下文件file1更名为file3

$ mv  file2  dir2

将文件file2移动到目录dir2下

 

 

文件处理命令:rm

功能描述:删除文件

 

命令英文原意:remove

命令所在路径:/bin/rm

执行权限:所有用户

语法:rm  -r   [文件或目录]

                -r        删除目录

范例:    $ rm file3

              删除文件file3

              $ rm -r dir1

              删除目录dir1

 

 

文件处理命令:cat

功能描述:显示文件内容

 

命令英文原意:concatenate and display files

命令所在路径:/bin/cat

执行权限:所有用户

语法:cat [文件名]

范例:    $ cat  /etc/issue

              $ cat  /etc/services

              $ cat preface.txt  more

              逐页显示preface.txt的内容;

              $ cat preface.txt >> outline.txt

              将preface.txt 附加到outline.txt文件之后;

              cat new.txt info.txt >readme.txt

              将new.txt和info.txt合并成readme.txt文件;

 

 

文件处理命令:more

命令所在路径:/bin/more

执行权限:所有用户

语法:more  [文件名]

       (空格) 或f           显示下一页

       (Enter)           显示下一行

q或Q            退出

 

 

文件处理指令:head

功能描述:查看文件的前几行

 

指令所在路径:/bin/head

执行权限:All User

语法:    head  -num  [文件名] 

              -num  显示文件的前num行

范例:$ head  -20  /etc/services

 

 

文件处理指令:tail

功能描述:查看文件的后几行

 

指令所在路径:/bin/tail

执行权限:All User

语法:    tail          -num  [文件名]

              -num       显示文件的后num行

-f            动态显示文件内容

范例:$ tail  -30  /etc/services

 

 

文件处理命令:ln

功能描述:产生链接文件

 

命令英文原意:link

命令所在路径:/bin/ln

执行权限:所有用户

语法:    ln  -s  [源文件]  [目标文件]

              -s  创建软链接

范例:    $ ln -s  /etc/issue  /issue.soft

              创建文件/etc/issue的软链接/issue.soft

              $ ln  /etc/issue  /issue.hard

              创建文件/etc/issue的硬链接/issue.hard

 

 

权限管理命令:chmod

功能描述:改变文件或目录权限

 

命令英文原意:change the permissions mode of a file

命令所在路径:/bin/chmod

执行权限:所有用户

语法:chmod  [{ugo}{+-=}{rwx}] [文件或目录]

[mode=421 ]  [文件或目录]

范例:    $ chmod  g+w  file1

              赋予文件file1所属组写权限

              $ chmod  777  dir1

              设定目录dir1为所有用户具有全部权限

代表字符

权限

对文件的含义

对目录的含义

r

读权限

可以查看文件内容

可以列出目录中的内容

w

写权限

可以修改文件内容

可以在目录中创建、删除文件

x

执行权限

可以执行文件

可以进入目录

 

 

权限管理命令:chown

功能描述:改变文件或目录的所有者

 

命令英文原意:change file ownership

命令所在路径:/bin/chown

执行权限:所有用户

语法:chown  [用户] [文件或目录]

范例:    $ chown  nobody  file1

              改变文件file1的所有者为nobody

 

 

权限管理命令:chgrp

功能描述:改变文件或目录的所属组

 

命令英文原意:change file group ownership

命令所在路径:/bin/chgrp

执行权限:所有用户

语法:chgrp  [用户组]  [文件或目录]

范例:    $ chgrp adm file1

              改变文件file1的所属组为adm

 

 

权限管理命令:umask

功能描述:显示、设置文件的缺省权限

 

命令所在路径:/bin/umask

执行权限:所有用户

语法:    umask [-S]

              -S   以rwx形式显示新建文件或目录缺省权限

范例:    $ umask

              $ umask -S

 

 

文件搜索命令:which

功能描述:显示系统命令所在目录

 

命令所在路径:/usr/bin/which

执行权限:所有用户

语法:which  [命令名称]

范例:$ which ls

 

 

文件搜索命令:find

功能描述:查找文件或目录

 

命令所在路径:/usr/bin/find

执行权限:所有用户

语法:find [搜索路径]  [搜寻关键字]

范例:    $ find  /etc  -name  init

在目录/etc中查找文件init

$ find  /  -size  +204800

在根目录下查找大于100MB的文件

$ find  /  -user  sam

在根目录下查找所有者为sam的文件

              $ find  /etc  -ctime  -1

              在/etc下查找24小时内被修改过属性的文件和目录

$ find  /etc -size  +163840 -a -size  -204800

              在/etc下查找大于80MB小于100MB的文件

              $ find /etc -name inittab -exec ls -l {} \\;

              在/etc下查找inittab文件并显示其详细信息

 

 

文件搜索指令:locate

功能描述:寻找文件或目录

 

指令英文原义:list files in databases

指令所在路径:/usr/bin/locate

执行权限:All User

语法:locate [搜索关键字]

范例:    $ locate file

              列出所有跟file相关的文件

 

 

文件搜索指令:updatedb

功能描述:建立整个系统目录文件的数据库

 

指令英文原义:update the slocate database

指令所在路径:/usr/bin/updatedb

执行权限:root

语法:updatedb

范例:# updatedb

 

 

文件搜索命令:grep

功能描述:在文件中搜寻字串匹配的行并输出

 

命令所在路径:/bin/grep

执行权限:所有用户

语法:grep  [指定字串] [源文件]

范例:# grep  ftp  /etc/services

              $ grep text *.conf

              ←搜索当前目录中扩展名为.conf且包含“text”字符串得文件。

              $ grep:amd.conf:    ←拒绝不符权限得操作

              $ grep:diskcheck.conf: ←拒绝不符权限得操作

              $ grep:grub.conf    ←拒绝不符权限得操作

              $ grep –s text *.conf   ←拒绝不符权限的操作之类的错误信息

 

 

帮助命令:man

功能描述:获得帮助信息

 

命令英文原意:manual

命令所在路径:/usr/bin/man

执行权限:所有用户

语法:man  [命令或配置文件]

范例:    $ man ls

              查看ls命令的帮助信息

              $ man services

              查看配置文件services的帮助信息

 

 

帮助指令:info

功能描述:获得帮助信息

 

指令英文原义:information

指令所在路径:/usr/bin/info

执行权限:All User

语法:info  [任何关键字]

范例:    $ info ls

              查看ls指令的帮助信息

 

 

帮助指令:whatis

功能描述:获得索引的简短说明信息

 

指令名称:whatis  apropos  makewhatis

指令英文原义:search the whatis database for strings

指令所在路径:/usr/bin/whatis apropos

 

              /usr/sbin/makewhatis

执行权限:All User,All User,root

语法:whatis apropos [任何关键字]

范例:    $ whatis ls

              $ apropos fstab              相当于man -k

              # makewhatis

              建立whatis和apropos搜索使用的数据库,当使用这两个命令发生错误时,就是whatis database 没有建立

 

 

压缩解压命令:gzip

功能描述:压缩文件

 

命令所在路径:/bin/gzip

执行权限:所有用户

语法:gzip  选项[文件]

压缩后文件格式:.gz

 

 

压缩解压命令:gunzip

功能描述:解压缩.gz的压缩文件

 

命令所在路径:/bin/gunzip

执行权限:所有用户

语法:gunzip  选项[压缩文件]

范例:$ gunzip file1.gz

 

 

压缩解压命令:tar

功能描述:打包目录

 

命令所在路径:/bin/tar

执行权限:所有用户

语法:tar  选项[cvf]  [目录]

              -c  产生.tar打包文件

              -v  显示详细信息

-f     指定压缩后的文件名

-z    打包同时压缩

压缩后文件格式:.tar.gz

范例:    $ tar  -zcvf   dir1.tar.gz  dir1

              将目录dir1压缩成一个打包并压缩的文件

 

tar命令解压缩语法:

-x    解包.tar文件

-v    显示详细信息

-f     指定解压文件

-z    解压缩

范例:$ tar  -zxvf  dir1.tar.gz

 

 

压缩解压命令:zip

功能描述:压缩文件或目录

 

命令所在路径:/usr/bin/zip

执行权限:所有用户

语法:    zip  选项[-r]  [压缩后文件名称]  [文件或目录]

              -r     压缩目录

压缩后文件格式:.zip

范例:    $ zip  services.zip  /etc/services

              压缩文件

              $ zip  -r  test.zip  /test

              压缩目录

 

 

压缩解压命令:unzip

功能描述:解压.zip的压缩文件

 

命令所在路径:/usr/bin/unzip

执行权限:所有用户

语法:unzip  [压缩文件]

范例:$ unzip test.zip

 

 

压缩解压命令:bzip2

功能描述:解压缩

 

命令所在路径:/usr/bin/bzip2

执行权限:所有用户

语法:    bzip2  选项[-k] [文件]

              -k   产生压缩文件后保留原文件

功能描述:压缩文件

压缩后文件格式:.bz2

范例:$ bzip2 -k file1

命令所在路径:/usr/bin/bunzip2

执行权限:所有用户

语法:bunzip2  选项[-k] [压缩文件]

                            -k   解压缩后保留原文件

范例:$ bunzip2  -k file1.bz2

 

 

网络通信指令:write

功能描述:向另外一个用户发信息,以Ctrl+D作为结束

 

指令所在路径:/usr/bin/write

执行权限:All User

语法:write  <用户名>

范例:   $ write  webmaster

 

 

网络通信指令:wall

功能描述:向所有用户广播信息

 

指令所在路径:/usr/bin/wall

执行权限:All User

语法:wall  [message]  [文件名]

范例:   $ wall  Happy New Year!

 

 

网络通信命令:ping

功能描述:测试网络连通性

 

命令所在路径:/usr/sbin/ping

执行权限:root

语法:ping  选项  IP地址

范例:  #  ping 192.168.1.1

 

 

网络通信命令:ifconfig

功能描述:查看网络设置信息

 

命令所在路径:/usr/sbin/ifconfig

执行权限:root

语法:ifconfig  选项[-a]  [网卡设备标识]

                            -a    显示所有网卡信息

范例:# ifconfig  -a

 

 

系统关机命令:shutdown

功能描述:关机

 

命令所在路径:/usr/sbin/shutdown

执行权限:root

语法:shutdown

范例:# shutdown -h now

 

 

系统关机命令:reboot

功能描述:重启系统

 

命令所在路径:/usr/sbin/reboot

执行权限:root

语法:reboot

范例:# reboot

 

 

加载光盘命令:mount     umount: 卸载光盘命令

功能描述:加载光盘及软盘

 

命令所在路径:/usr/sbin/reboot

注意:    若要允许一般用户也能加载光盘或软盘,请修改/ect/fstab/设置文件

              /dev/cdrom/mut/cdrom udf,iso9660 noauto,owner,kudzu,ro,user

              ←若要让一般用户也加载光盘,请在此处加上“,user”项目。

范例:    # mount   /dev/cdrom  /mut/cdrom   ←加载光盘

              # umount  /mnt/cdrom         ←光盘卸载

 

 

删除调度工作任务:crontab

范例:    $ crontab –r ←删除任务调度中的工作

              $ crontab  -1 ←再查看一次任务调度中的工作

 

 

用户使用过的历史命令:history

 

 

 

 

 

一.用户组管理

1.       添加用户组

groupadd 

2.       删除用户组

groupdel 

3.       修改用户组

groupmod 

4.       切换用户组

newgrp <groupname> 

如果一个用户同时属于多个用户组,可以用 newgrp 命令切换至目的组,以便能够拥有该组的权限。

5.       查看所有组

所有组其实就是 /etc/group 文件的内容做一些过滤。

cat /etc/group | awk -F: \'{print $1}\' 

6.       查看用户所在组

groups <username> 

 二.用户管理

 1. 添加用户

useradd <username> -d <path> -m -g –G –p 

常用的就是上面几个参数,意思分别为:

-d :指定用户主目录。如果此目录不存在,同时使用 -m 就会创建此目录。

-m :创建用户主目录

-g :用户所属组 ID 

-G :用户所属组名

-p :登录密码。注意这个登录密码不是明文,是指加密后的密码。

 

useradd testuser –m –G mygroup 

将会创建一个 testuser 的用户,并自动创建 /home/testuser 的用户主目录,并将用户添加至 mygroup 组中。

2. 删除用户

userdel –f –r <username> 

-r :删除用户主目录以及邮箱中的邮件

-f :强行删除文件,即使属主不是该用户

3. 修改用户

usermod <username> -d <path> -m -g –G –p 

参数意思与 useradd 大致相同

 

4. 用户密码

passwd <username>        :修改密码

passwd –d <username> :命令将用户的密码删除,即下次登录无须密码。

passwd –l <username>   :锁定用户,使其无法登录

 

三.文件属主管理

 

1. 更改属主

chown –R <username>.<groupname> file 

-R :表示递归更改

chown –R testuser.newgroup testpath 

上面的命令将 testpath 路径下的所有文件的拥有者都改为 testuser ,拥有组都改为 newgroup 。

 

2. 设置文件掩码

umask [a1 a2 a3 ] 

用户可以使用 umask 命令设置文件默认的生成掩码。默认的生成掩码告诉系统创建一个文件或目录不应该赋予哪些权限。如果用户将 umask 命令放在环境文件 .bash_profile 中,就可以控制所有新建的文件和目录的访问权限。

 

a1 表示的是不允许属主的权限, a2 表示的是不允许同组人的权限, a3 代表不允许其他人的权限。

umask 022        :   表示设置不允许同组用户和其他用户有写的权限。

umask              :   显示当前的默认生成掩码。

 

CentOS最基本的20个常用命令

1. man 对你熟悉或不熟悉的命令提供帮助解释
eg:man ls 就可以查看ls相关的用法
注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。

2. ls 查看目录或者文件的属*,列举出任一目录下面的文件
eg: ls /usr/man
ls -l

a.d表示目录(directory),如果是一个"-"表示是文件,如果是l则表示是一个连接文件(link)
b.表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x)。

3. cp 拷贝文件
eg: cp filename1 filename2 //把filename1拷贝成filename2
cp 1.c netseek/2.c //将1.c拷到netseek目录下命名为2.c

4. rm 删除文件和目录
eg: rm 1.c //将1.c这个文件删除

5. mv 移走目录或者改文件名
eg: mv filename1 filename2 //将filename1 改名为filename2
mv qib.tgz ../qib.tgz //移到上一级目录

6. cd 改变当前目录 pwd 查看当前所在目录完整路径
eg: pwd //查看当前所在目录路径
cd netseek //进入netseek这个目录
cd //退出当前目录

7. cat,more命令
将某个文件的内容显示出来。两个命令所不同的是:cat把文件内容一直打印出来,而 more则分屏显示
eg; cat>1.c //就可以把代码粘帖到1.c文件里,按ctrl+d 保存代码。
cat 1.c 或more 1.c //都可以查看里面的内容。
gcc -o 1 1.c //将1.c编译成.exe文件,我们可以用此命编译出代码。

8.chmod 命令 权限修改 用法:chmod 一位8进制数 filename。
eg: chmod u+x filenmame //只想给自己运行,别人只能读
//u表示文件主人, g 表示文件文件所在组。 o 表示其他人 ;r 表可读,w 表可写,x 表可以运行
chmod g+x filename //同组的人来执行

9. clear,date命令
clear:清屏,相当与DOS下的cls;date:显示当前时间。

10. mount 加载一个硬件设备
用法:mount [参数] 要加载的设备 载入点
eg: mount /dev/cdrom
cd /mnt/cdrom //进入光盘目录

11. su 在不退出登陆的情况下,切换到另外一个人的身份
用法: su -l 用户名(如果用户名缺省,则切换到root状态)
eg:su -l netseek (切换到netseek这个用户,将提示输入密码)

12.whoami,whereis,which,id
//whoami:确认自己身份
//whereis:查询命令所在目录以及帮助文档所在目录
//which:查询该命令所在目录(类似whereis)
//id:打印出自己的UID以及GID。(UID:用户身份唯一标识。GID:用户组身份唯一标识。每一个用户只能有一个唯一的UID和 GID)
eg: whoami //显示你自已登陆的用户名
whereis bin 显示bin所在的目录,将显示为:/usr/local/bin
which bin

13. grep,find
grep:文本内容搜索;find:文件或者目录名以及权限属主等匹配搜索
eg: grep success *    /*查找当前目录下面所有文件里面含有success字符的文件

14. kill 可以杀死某个正在进行或者已经是dest状态的进程
eg; ps ax

15. passwd 可以设置口令
16. history 用户用过的命令
17. !! 执行最近一次的命令
18. mkdir命令
eg: mkdir netseek //创建netseek这个目录

19. tar 解压命令
eg: tar -zxvf nmap-3.45.tgz //将这个解压到nmap-3.45这个目录里

 

14解压小全
tar -I或者bunzip2命令都可以解压.bz2文件
tar xvfj example.tar.bz2
tar xvfz example.tar.gz
tar xvfz example.tgz
tar xvf example.tar
unzip example.zip 

15 如何配置让哪些服务启动(天外闲云,q1208c)
方法1 运行ntsysv或者setup命令,进入菜单进行配置
方法2 chkconfig --list 显示服务
chkconfig name on/off 打开/关闭“name”服务

16查看文件夹大小

du -sh uploadfile

17查看磁盘使用情况

df -hl

12.删除目录下所有文件包括子目录(bjchenxu)
rm -rf 目录名


13查看系统信息(bjchenxu)
cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)
cat /proc/interrupts - 中断
cat /proc/ioports - 设备IO端口
cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)
cat /proc/partitions - 所有设备的所有分区
cat /proc/pci - PCI设备的信息
cat /proc/swaps - 所有Swap分区的信息
cat /proc/version - Linux的版本号 相当于 uname -r
uname -a - 看系统内核等信息

 =================

 

15 如何配置让哪些服务启动
方法1 运行ntsysv或者setup命令,进入菜单进行配置
方法2 chkconfig --list 显示服务
chkconfig name on/off 打开/关闭“name”服务

16查看文件夹大小

du -sh uploadfile

 

17查看磁盘使用情况

df -hl

 

 

系统

# uname -a               # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue   # 查看操作系统版本
# cat /proc/cpuinfo      # 查看CPU信息
# hostname               # 查看计算机名
# lspci -tv              # 列出所有PCI设备
# lsusb -tv              # 列出所有USB设备
# lsmod                  # 列出加载的内核模块
# env                    # 查看环境变量

资源

# free -m                # 查看内存使用量和交换区使用量
# df -h                  # 查看各分区使用情况
# du -sh <目录名>        # 查看指定目录的大小
# grep MemTotal /proc/meminfo   # 查看内存总量
# grep MemFree /proc/meminfo    # 查看空闲内存量
# uptime                 # 查看系统运行时间、用户数、负载
# cat /proc/loadavg      # 查看系统负载

磁盘和分区

# mount | column -t      # 查看挂接的分区状态
# fdisk -l               # 查看所有分区
# swapon -s              # 查看所有交换分区
# hdparm -i /dev/hda     # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE       # 查看启动时IDE设备检测状况

网络

# ifconfig               # 查看所有网络接口的属性
# iptables -L            # 查看防火墙设置
# route -n               # 查看路由表
# netstat -lntp          # 查看所有监听端口
# netstat -antp          # 查看所有已经建立的连接
# netstat -s             # 查看网络统计信息

进程

# ps -ef                 # 查看所有进程
# top                    # 实时显示进程状态

用户

# w                      # 查看活动用户
# id <用户名>            # 查看指定用户信息
# last                   # 查看用户登录日志
# cut -d: -f1 /etc/passwd   # 查看系统所有用户
# cut -d: -f1 /etc/group    # 查看系统所有组
# crontab -l             # 查看当前用户的计划任务

服务

# chkconfig --list       # 列出所有系统服务
# chkconfig --list | grep on    # 列出所有启动的系统服务

程序

# rpm -qa                # 查看所有安装的软件包



 内部命令和外部命令

 内部命令在系统启动时就调入内存,是常驻内存的,所以执行效率高。

  • 外部命令是系统的软件功能,用户需要时才从硬盘中读入内存。

type可以用来判断一个命令是否为内置命令

type: usage: type [-afptP] name [name ...]

 

[root@linuxeye ~]# type type
type is a shell builtin
[root@linuxeye ~]# type -p type
[root@linuxeye ~]# type -t type
builtin
[root@linuxeye ~]# type type
type is a shell builtin
[root@linuxeye ~]# type -t type
builtin
[root@linuxeye ~]# type pwd
pwd is a shell builtin
[root@linuxeye ~]# type whiptail
whiptail is /usr/bin/whiptail
[root@linuxeye ~]# type -t whiptail
file

enable既可以查看内部命令,同时也可以判断是否为内部命令

[root@linuxeye ~]# enable -a #查看内部命令
[root@linuxeye ~]# enable whiptail #非内部命令
-bash: enable: whiptail: not a shell builtin
[root@linuxeye ~]# enable pwd #是内部命令

内部命令用户输入时系统调用的速率快,不是内置命令,系统将会读取环境变量文件.bash_profile、/etc/profile去找PATH路径。

然后在提一下命令的调用,有些历史命令使用过后,会存在在hash表中,当你再次输入该命令它的调用会是这样一个过程。

hash——>内置命令——>PATH   命令的调用其实应该是这样一个过程。

[root@linuxeye ~]# type pwd
pwd is a shell builtin
[root@linuxeye ~]# type cat
cat is /usr/bin/cat
[root@linuxeye ~]# pwd
/root
[root@linuxeye ~]# ls linuxeye*
linuxeye.pem  linuxeye.txt
[root@linuxeye ~]# cat linuxeye.txt
linuxeye
[root@linuxeye ~]# hash -l #显示hash表
builtin hash -p /usr/bin/cat cat
builtin hash -p /usr/bin/ls ls
[root@linuxeye ~]# type cat
cat is hashed (/usr/bin/cat)
[root@linuxeye ~]# hash -r #清除hash表
[root@linuxeye ~]# type cat
cat is /usr/bin/cat

从上面操作可以看出。hash表不存放系统内置命令。

 

 

Linux如何查看本机及别人的MAC地址

1、查看自己的MAC地址:使用ifconfig
[root@zhanghuimeng ~]# ifconfig | grep HW
eth0      Link encap:Ethernet  HWaddr 00:50:56:3D:79:71
 
2、查看已知IP地址的MAC地址:使用ping+arp
[root@zhanghuimeng ~]# ping 192.168.70.1
[root@zhanghuimeng ~]# arp -n
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.70.2             ether   00:50:56:f7:ae:6a   C                     eth0
192.168.70.1             ether   00:50:56:c0:00:01   C                     eth0

 


linux常用的查看设备的命令

linux查看设备命令

系统

# uname -a               # 查看内核/操作系统/CPU信息
 # head -n 1 /etc/issue   # 查看操作系统版本 
# cat /proc/cpuinfo      # 查看CPU信息
 # hostname               # 查看计算机名 
# lspci -tv              # 列出所有PCI设备
 # lsusb -tv              # 列出所有USB设备 
# lsmod                  # 列出加载的内核模块
 # env                    # 查看环境变量

资源

# free -m                # 查看内存使用量和交换区使用量 
# df -h                  # 查看各分区使用情况 
# du -sh <目录名>        # 查看指定目录的大小 
# grep MemTotal /proc/meminfo   # 查看内存总量
 # grep MemFree /proc/meminfo    # 查看空闲内存量
# uptime                 # 查看系统运行时间、用户数、负载 
# cat /proc/loadavg      # 查看系统负载

磁盘和分区

# mount | column -t      # 查看挂接的分区状态 
# fdisk -l               # 查看所有分区 
# swapon -s              # 查看所有交换分区
 # hdparm -i /dev/hda     # 查看磁盘参数(仅适用于IDE设备) 
# dmesg | grep IDE       # 查看启动时IDE设备检测状况

网络

# ifconfig               # 查看所有网络接口的属性
 # iptables -L            # 查看防火墙设置 
# route -n               # 查看路由表 
# netstat -lntp          # 查看所有监听端口 
# netstat -antp          # 查看所有已经建立的连接
 # netstat -s             # 查看网络统计信息

进程

# ps -ef                 # 查看所有进程 
# top                    # 实时显示进程状态

用户

# w                      # 查看活动用户 
# id <用户名>            # 查看指定用户信息 
# last                   # 查看用户登录日志 
# cut -d: -f1 /etc/passwd   # 查看系统所有用户 
# cut -d: -f1 /etc/group    # 查看系统所有组 
# crontab -l             # 查看当前用户的计划任务

服务

# chkconfig --list       # 列出所有系统服务 
# chkconfig --list | grep on    # 列出所有启动的系统服务

程序

# rpm -qa                # 查看所有安装的软件包

 

常用命令整理如下:
查看主板的序列号: dmidecode | grep -i ’serial number’

用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart)

查看CPU信息:cat /proc/cpuinfo [dmesg | grep -i \'cpu\'][dmidecode -t processor]

查看内存信息:cat /proc/meminfo [free -m][vmstat]

查看板卡信息:cat /proc/pci

查看显卡/声卡信息:lspci |grep -i ‘VGA’[dmesg | grep -i \'VGA\']

查看网卡信息:dmesg | grep -i ‘eth’[cat /etc/sysconfig/hwconf | grep -i eth][lspci | grep -i \'eth\']
<!--more-->
查看PCI信息:lspci (相比cat /proc/pci更直观)

查看USB设备:cat /proc/bus/usb/devices

查看键盘和鼠标:cat /proc/bus/input/devices

查看系统硬盘信息和使用情况:fdisk & disk – l & df

查看各设备的中断请求(IRQ):cat /proc/interrupts

查看系统体系结构:uname -a

查看及启动系统的32位或64位内核模式:isalist –v [isainfo –v][isainfo –b]

dmidecode查看硬件信息,包括bios、cpu、内存等信息

测定当前的显示器刷新频率:/usr/sbin/ffbconfig –rev \\?

查看系统配置:/usr/platform/sun4u/sbin/prtdiag –v

查看当前系统中已经应用的补丁:showrev –p

显示当前的运行级别:who –rH

查看当前的bind版本信息:nslookup –class=chaos –q=txt version.bind

dmesg | more 查看硬件信息
lspci 显示外设信息, 如usb,网卡等信息
lsnod 查看已加载的驱动
lshw
psrinfo -v 查看当前处理器的类型和速度(主频)
prtconf -v 打印当前的OBP版本号
iostat –E 查看硬盘物理信息(vendor, RPM, Capacity)
prtvtoc /dev/rdsk/c0t0d0s 查看磁盘的几何参数和分区信息
df –F ufs –o i 显示已经使用和未使用的i-node数目
isalist –v

对于“/proc”中文件可使用文件查看命令浏览其内容,文件中包含系统特定信息:
Cpuinfo 主机CPU信息
Dma 主机DMA通道信息
Filesystems 文件系统信息
Interrupts 主机中断信息
Ioprots 主机I/O端口号信息
Meninfo 主机内存信息
Version Linux内存版本信息

备注: proc – process information pseudo-filesystem 进程信息伪装文件系统

RPM

    在Linux 操作系统中,有一个系统软件包,它的功能类似于Windows里面的“添加/删除程序”,但是功能又比“添加/删除程序”强很多,它就是 Red Hat Package Manager(简称RPM)。此工具包最先是由Red Hat公司推出的,后来被其他Linux开发商所借用。由于它为Linux使用者省去了很多时间,所以被广泛应用于在Linux下安装、删除软件。下面就 给大家介绍一下它的具体使用方法。

1.我们得到一个新软件,在安装之前,一般都要先查看一下这个软件包里有什么内容,假设这个文件是:Linux-1.4-6.i368.rpm,我们可以用这条命令查看:

rpm -qpi Linux-1.4-6.i368.rpm

系统将会列出这个软件包的详细资料,包括含有多少个文件、各文件名称、文件大小、创建时间、编译日期等信息。

2.上面列出的所有文件在安装时不一定全部安装,就像Windows下程序的安装方式分为典型、完全、自定义一样,Linux也会让你选择安装方式,此时我们可以用下面这条命令查看软件包将会在系统里安装哪些部分,以方便我们的选择:

rpm -qpl Linux-1.4-6.i368.rpm

3. 选择安装方式后,开始安装。我们可以用rpm-ivh Linux-1.4-6.i368.rpm命令安装此软件。在安装过程中,若系统提示此软件已安装过或因其他原因无法继续安装,但若我们确实想执行安装命 令,可以在 -ivh后加一参数“-replacepkgs”:

rpm -ivh -replacepkgs Linux-1.4-6.i368.rpm

4.有时我们卸载某个安装过的软件,只需执行rpm-e <文件名>;命令即可。

5.对低版本软件进行升级是提高其功能的好办法,这样可以省去我们卸载后再安装新软件的麻烦,要升级某个软件,只须执行如下命令:rpm -uvh <文件名>;,注意:此时的文件名必须是要升级软件的升级补丁

6. 另外一个安装软件的方法可谓是Linux的独到之处,同时也是RMP强大功能的一个表现:通过FTP站点直接在线安装软件。当找到含有你所需软件的站点并 与此网站连接后,执行下面的命令即可实现在线安装,譬如在线安装Linux-1.4-6.i368.rpm,可以用命令:

rpm -i ftp://ftp.pht.com/pub/linux/redhat/...-1.4-6.i368.rpm

7. 在我们使用电脑过程中,难免会有误操作,若我们误删了几个文件而影响了系统的性能时,怎样查找到底少了哪些文件呢?RPM软件包提供了一个查找损坏文件的 功能,执行此命令:rpm -Va即可,Linux将为你列出所有损坏的文件。你可以通过Linux的安装光盘进行修复。

8.Linux系统中文件繁多,在使用过程中,难免会碰到我们不认识的文件,在Windows下我们可以用“开始/查找”菜单快速判断某个文件属于哪个文件夹,在Linux中,下面这条命令行可以帮助我们快速判定某个文件属于哪个软件包:

rpm -qf <文件名>;

9.当每个软件包安装在Linux系统后,安装文件都会到RPM数据库中“报到”,所以,我们要查询某个已安装软件的属性时,只需到此数据库中查找即可。注意:此时的查询命令不同于1和8介绍的查询,这种方法只适用于已安装过的软件包!命令格式:

rpm -参数 <文件名>;

 

APT-GET

apt-get update——在修改/etc/apt/sources.list或者/etc/apt/preferences之后运行该命令。此外您需要定期运行这一命令以确保您的软件包列表是最新的。
apt-get install packagename——安装一个新软件包(参见下文的aptitude) 
apt-get remove packagename——卸载一个已安装的软件包(保留配置文件) 
apt-get --purge remove packagename——卸载一个已安装的软件包(删除配置文件) 
dpkg --force-all --purge packagename 有些软件很难卸载,而且还阻止了别的软件的应用,就可以用这个,不过有点冒险。 
apt-get autoclean apt会把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以让这个命令来删除你已经删掉的软件 
apt-get clean 这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的。 
apt-get upgrade——更新所有已安装的软件包 
apt-get dist-upgrade——将系统升级到新版本 
apt-cache search string——在软件包列表中搜索字符串 
dpkg -l package-name-pattern——列出所有与模式相匹配的软件包。如果您不知道软件包的全名,您可以使用“*package-name-pattern*”。
aptitude——详细查看已安装或可用的软件包。与apt-get类似,aptitude可以通过命令行方式调用,但仅限于某些命令——最常见的有安装和卸载命令。由于aptitude比apt-get了解更多信息,可以说它更适合用来进行安装和卸载。
apt-cache showpkg pkgs——显示软件包信息。 
apt-cache dumpavail——打印可用软件包列表。 
apt-cache show pkgs——显示软件包记录,类似于dpkg –print-avail。 
apt-cache pkgnames——打印软件包列表中所有软件包的名称。 
dpkg -S file——这个文件属于哪个已安装软件包。 
dpkg -L package——列出软件包中的所有文件。 
apt-file search filename——查找包含特定文件的软件包(不一定是已安装的),这些文件的文件名中含有指定的字符串。apt-file是一个独立的软件包。您必须 先使用apt-get install来安装它,然后运行apt-file update。如果apt-file search filename输出的内容太多,您可以尝试使用apt-file search filename | grep -w filename(只显示指定字符串作为完整的单词出现在其中的那些文件名)或者类似方法,例如:apt-file search filename | grep /bin/(只显示位于诸如/bin或/usr/bin这些文件夹中的文件,如果您要查找的是某个特定的执行文件的话,这样做是有帮助的)。

 

 

ubuntu查看版本命令
方法一:
在终端中执行下列指令: cat /etc/issue
方法二:
使用 lsb_release 命令也可以查看 Ubuntu 的版本号,与方法一相比,内容更为详细。
执行指令如下: sudo lsb_release -a
方法三:
打开“系统监视器”,选择“系统”
Ubuntu查看版本命令
1. lshw
lshw命令显示详细硬件信息。
如果要用概要方式显示,可以加上short参数:lshw-short
要显示指定硬件信息,加上class(或C)参数:lshw -classmemory
2. sysstat
监测系统性能及效率的一组工具,这些工具对于我们收集系统性能数据,
比如CPU使用率、硬盘和网络吞吐数据。
3. lspci -v (相比cat/proc/pci更直观)
查看PCI信息,lspci 是读取 hwdata 数据库。
4. uname -a
查看系统体系结构。
5. dmidecode
查看硬件信息,包括bios、cpu、内存等信息
6. dmesg
显示内核缓冲区系统控制信息,如系统启动时的信息会写到/var/log/。
注:dmesg 工具并不是专门用来查看硬件芯片组标识的工具,
但通过这个工具能让我们知道机器中的硬件的一些参数;因为系统在启动的时候,
会写一些硬件相关的日志到 /var/log/message* 或/var/log/boot* 文件中。
7. lshal 和hal-device-manager
8. 查看 /proc
对于“/proc”中文件可使用文件查看命令浏览其内容,文件中包含系统特定信息:
Cpuinfo 主机CPU信息
Dma 主机DMA通道信息
Filesystems 文件系统信息
Interrupts 主机中断信息
Ioprots 主机I/O端口号信息
Meninfo 主机内存信息
Version Linux内存版本信息
查看CPU信息:cat /proc/cpuinfo 查看板卡信息:cat /proc/pci 查看内存信息:cat/proc/meminfo 查看USB设备:cat /proc/bus/usb/devices 查看键盘和鼠标:cat/proc/bus/input/devices 查看各设备的中断请求(IRQ):cat/proc/interrupts
主板信息:
sudo demidecode | grep -i ‘serial number’

CPU信息:
cat /proc/cpuinfo
dmesg | grep -i ‘cpu’
sudo dmidecode -t processor

硬盘信息:
查看分区情况:
sudo fdisk -l

查看大小情况:
df -h

查看使用情况:
du -h
sudo hdparm -I /dev/sda
dmesg | grep sda

内存信息:
cat /proc/meminfo
dmesg | grep mem
free -m
vmstat
sudo dmidecode | grep -i mem

网卡信息:
dmesg | grep -i ‘eth’
lspci | grep -i ‘eth’

ethtool -i eht0
ethhool -k eth0
ethtool -g eth0

查看鼠标和键盘:
cat /proc/bus/input/devices

查看各设备的中断请求(IRQ):
cat /proc/interrupts

显卡信息:
lspci | grep -i ‘VGA’
dmesg

以上是关于linux---常用命令的主要内容,如果未能解决你的问题,请参考以下文章

linux中怎么查看mysql数据库版本

Linux常用文件管理命令

markdown [Docker] Docker片段列表和命令#linux #docker #snippets

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

C#常用代码片段备忘

常用python日期日志获取内容循环的代码片段