linux常见命令

来源:互联网 发布:c语言带有void的程序 编辑:程序博客网 时间:2024/05/06 17:50
Linux 命令一级篇
基本命令:
1 vi 编辑器――――――――――熟练程度:*****
功能:生成新文件或者编辑查看文件
格式: vi   file_name
 
说明:上面的命令直接进入vi的命令模式
从命令模式进入编辑模式需要按i键或者a键,使用ESC键可以从编辑模式进入命令模式,
1.1   编辑模式可执行的操作:
插入各种文本信息
1.2 编辑模式向命令模式转换,可以按下面的一种键:
i 插入文本
a 追加文本
1.3  命令模式可执行的操作:
:w 保存文本
:wq 保存并退出
:wq! 保存并强制退出
:q 退出
:q! 强制退出
dd 删除一行文字
x 删除一个字符
:n 光标移至文本第n行
$ 光标移到文本的行尾
G 光标移到文本的末尾
ZZ 存盘退出
/字符串    查找某个字符串
1.4 命令模式向编辑模式转换,可以按ESC键
例:生成文件名为hello的文件
[root@localhost ~]# vi  hello 
 
2 系统开关及重启――――――――――熟练程度:*****
文本方式
2.1  退出:
[root@localhost ~]# logout
也可以使用命令:
[root@localhost ~]# exit
Ctrl+D(相当于exit)
 
2.2 重启动:
[root@localhost ~]# reboot
也可以使用命令:
[root@localhost ~]# shutdown  -r  <time>        
例:   shutdown  –r  now      现在立刻重启
        shutdown  –r  11:30    等到11:30进行重启 
 
2.3  关机:
root@localhost ~]# halt
也可以使用命令:
root@localhost ~]# shutdown  -h  <time>   
例:   shutdown  –h  now      现在立刻关闭系统
        shutdown  –h 11:30    等到11:30关闭系统   

3 pwd――――――――――熟练程度:*****
功能描述:查看用户当前所处的绝对路径
root@localhost ~]# pwd

4 ls    ――――――――――熟练程度:*****
功能描述:显示指定目录下的内容 
格式:ls   [ 参数 ]   [  目录或文件 ]
[root@localhost ~]#  ls //显示当前目录内容
[root@localhost ~]#  ls   /home/test       显示指定目录/home/test下的内容
[root@localhost ~]#  ls -l  显示当前目录详细内容
[root@localhost ~]#  ls   -a   显示当前目录下的所有文件,包括隐藏文件
 
5 cd   ――――――――――熟练程度:*****
功能:改变目录
格式: cd 目录
[root@localhost ~]# cd  .. 回退到当前目录的上一级目录
[root@localhost ~]# pwd  (借助pwd命令查看当前处于什么目录)
[root@localhost ~]# cd 回到当前用户的主目录
[root@localhost ~]# pwd
[root@localhost ~]# cd   /home/test/dir1/a_dir 用绝对路径切换到a_dir目录下
[root@localhost ~]# pwd
[root@localhost ~]# cd  ../../ 使用相对路径切换到当前目录的上一级的上一级目录下
[root@localhost ~]# pwd

6 磁盘及光盘,usb的使用――――――――――熟练程度:***
6.1 光盘
root@localhost ~]# mount   /dev/cdrom    /mnt
root@localhost ~]# cd  /mnt                          //进入该光盘挂载的目录,可以查看其内容
root@localhost ~]# umount   /dev/cdrom       //注意:解挂/mnt目录时,先退出该目录
6.2 硬盘
root@localhost ~]# fdisk   –l   /dev/sda        //查看sda硬盘的分区情况
root@localhost ~]# mount   –t  vfat  /dev/sda2    /mnt/
root@localhost ~]# ls  /mnt/
root@localhost ~]# cd /mnt    //进入硬盘对应的目录中进行读取操作,结束后退出该目录
root@localhost ~]# umount   /dev/sda2
补充说明:
在linux环境下同样可以使用光盘,u盘,移动硬盘,磁盘,但当我们插入这些设备时,linux可以检测出这些设备,但不能自动将其挂接到某个目录下让我们访问,这个操作需要我们自己完成;就需要用到mount命令。
要挂接什么设备,必须告诉linux,不同的设备在linux中对应有不同的名称
光盘 /dev/cdrom
磁盘    /dev/floppy
移动usb设备: /dev/sda     
注意:对于usb设备,由于硬盘的接口类型及硬盘分区的不同,具体的设备名称需要根据系统检测的结果来确定,上面的sda和sda2需要替换成实际的设备名称

7 mkdir  ――――――――――熟练程度:*****
功能:创建目录
格式:mkdir [ 参数 ] [目录名1 ] [ 目录名2 ]
[root@localhost ~]# mkdir   dir2             创建一个目录
[root@localhost ~]# ls           借助ls命令查看dir2目录是否被创建
[root@localhost ~]#  mkdir  bb  cc  dd           一次性创建多个目录

8 rmdir  ――――――――――熟练程度:*****
功能:删除空目录
格式:rmdir  [目录1] [目录2 ] [目录3]…
[root@localhost ~]# rmdir dir2 删除一个空目录
[root@localhost ~]# rmdir   bb  cc  dd  删除多个空目录
 
9 cp       ――――――――――熟练程度:*****
功能:拷贝文件或者目录
格式:cp  [ 参数 ]   [ 源文件或者目录 ]   [ 目标文件或者目录 ]
[root@localhost ~]#  ls
[root@localhost ~]# cp    hello   file1       把文件hello拷贝一份,命名file1
[root@localhost ~]#  ls
[root@localhost ~]# cp    ./hello    /home/test/dir1/a_dir/myfile
[root@localhost ~]#  ls  /home/test/dir1/a_dir/      //把当前目录下文件hello拷到绝对路径/home/test/dir1/a_dir/并命名为myfile文件

10 Mv       ――――――――――熟练程度:*****
功能:可以对文件或者目录进行移动
格式:mv  [ 参数 ] [源对象][目的对象]
[root@localhost ~]#  pwd
[root@localhost ~]#  mv  ./dir1/a_dir/myfile  ./dir1/newfile 将文件myfile移动到新的目录下并改名为newfile
[root@localhost ~]#  ls  ./dir1
[root@localhost ~]# mv  /home/test/dir1/a_dir   /home/test/dir2   将目录a_dir移动到新的目录下并改名为dir2,也可以不该名
[root@localhost ~]# ls   ./dir1                             看a_dir目录是否被移走
[root@localhost ~]# ls                                         看dir2目录是否生成

11 rm        ――――――――――熟练程度:*****
功能:删除文件或者删除非空目录
格式:rm  [参数]  文件或者目录
cp  dir1/myfile  dir1/11.txt
cp  dir1/myfile  dir1/22.txt
cp  dir1/myfile  dir1/33.txt    把dir1目录下myfile文件拷贝三次,生成文件名为11.txt,22.txt,33.txt文件      
ls dir1
[root@localhost ~]#  rm    myfile  删除当前目录下myfile文件
[root@localhost ~]#  rm   -r    ./dir1 删除当前目录下dir1目录,有提示
[root@localhost ~]#  rm   -rf    ./dir1 删除当前目录下dir1目录,不提示
[root@localhost ~]#  rm   -r  11.txt  22.txt  33.txt  删除当前目录下多个文件
 
12 chmod      ――――――――――熟练程度:*****
功能:修改文件的权限
格式:chmod  [参数]  权限  文件或者目录
[root@localhost ~]# chmod   611   hello   使用数字表示法修改文件myfile的权限
[root@localhost ~]# ls  -l hello                        使用ls命令查看权限修改结果
[root@localhost ~]# chmod   u=rwx  hello使用文字表示法修改文件myfile的权限
[root@localhost ~]# ls  -l  hello
[root@localhost ~]# chmod   g+r     hello
[root@localhost ~]# ls  -l  hello
[root@localhost ~]# chmod   o=r     hello
[root@localhost ~]# ls  -l  hello
 
补充内容:linux中对文件或者目录操作,都受一定缺陷的控制,这个缺陷主要通过9位字符控制
如图所示:
 
使用ls –l  目录名称  命令可以查看指定目录下对象的权限信息
最左边的信息总共有10位
第一位代表文件标识位:              d 代表目录
   -代表普通文件
l  代表链接文件
剩下九位代表权限信息 。
rwxr-xr-x          bak                 //这是目录创建后的默认权限
rw-r--r--          hello               //这是文件创建后的默认权限
前三位(紫色部分)代表文件主人的权限;
中间三位(绿色部分)代表和文件主人同属一个组的组员的权限;
后三位(黄色)代表其他人的权限。
 
权限的表示法有两种:
1 文字表示法:rwx     表示可读可写可执行,如果没有相关权限,用-代替,例r--表示只可读,不可写,不可执行
2 数字表示法:111     表示可读可写可执行,如果没有相关权限,用0代替,例100表示只可读,不可写,不可执行
 
对应使用chmod修改权限也有两种方法:
1 文字修改法:      三种角色   文件主人用u代替
                                                文件主人同组成员用g代替
                                                其他人员用o代替
权限的修改用+ - = 符号来表示
如: chmod  u+x   myfile   表示给文件主人增加执行该文件权限
        chmod  g=rwx  myfile  表示给文件主人同组成员赋可读可写可执行权限
        chmod  o-x   myfile  表示给文件的其他角色减少执行该文件的权限
2 数字修改法:      将三种角色所要对应的权限用01二进制数表示出来,转换成10进制数。
如:chmod  754 myfile   代表rwxr-xr—
表示修改后的myfile文件:主人可读可写可执行,
                                            同组成员可读可执行,
                                            其他人只能读
4代表读,2代表写,1代表执行

13 chown     ――――――――――熟练程度:*****
功能:修改文件的属主(该例中的组wuxh需要替换为你系统中存在的组)
格式: chown  [参数]  用户名  文件
[root@localhost ~]# ls  -l  hello                                  先查看hello的属主信息
[root@localhost ~]# chown  wuxh   hello    把文件hello的属主修改为用户wuxh
[root@localhost ~]# ls  -l  hello                                  看看属主信息是否修改
[root@localhost ~]# chown  wuxh   dir2     把目录dir2的属主修改为用户wuxh

14 chgrp       ――――――――――熟练程度:*****
功能:修改文件的所属组
格式:chgrp  [选项]  组名  文件
[root@localhost ~]# ls  -l  hello                                    执行之前先查看属主信息
[root@localhost ~]#chgrp   wuxh  hello        把文件myfile的组修改为组wuxh
[root@localhost ~]# ls  -l  hello                                    执行之后再查看属主信息
[root@localhost ~]# chgrp   wuxh  dir2     把目录mydir的组修改为组wuxh

15 ln         ――――――――――熟练程度:***
功能:给文件或者目录创建快捷方式,链接
 格式:ln [选项]   源文件或者目录   链接后名称
mkdir  ./dir2/b_dir/c_dir/
cp  hello    ./dir2/b_dir/c_dir/111.txt 
cp  hello    ./dir2/b_dir/c_dir/222.txt                                                                                                                             
[root@localhost ~]# ln  -d  ./dir2/b_dir/c_dir/111.txt    dlink   给深目录下的111.txt文件创建硬链接dlink
[root@localhost ~]# ln  -s  ./dir2/b_dir/ c_dir/222.txt  slink       给深目录下的222.txt文件创建软链接slink
分别使用vi对dlink文件和slink文件进行编辑保存,然后查看111.txt 和222.txt 看其内容是否变化
vi   ./dir2/b_dir/c_dir/111.txt            
vi   dlink
vi   slink
 
[root@localhost ~]# ln  -s  ./dir2/b_dir/c_dir   slink2   给深目录下的c_dir目录创 建slink2软链接
ls  -l  slink2                                              查看一下该目录下能看到什么?
ls  -l  ./dir2/b_dir/c_dir/                           比较一下,看二者是否一致?
cd   slink2  
pwd                                                          看看结果是什么?
注意:对于目录不能创建硬链接

16 find         ――――――――――熟练程度:*****
功能:从指定的目录下开始查找某个文件
格式: find  起始目录  寻找条件  文件名 
[root@localhost ~]#     cd  /home/test
[root@localhost ~]#     find  ./  -name  111.txt 在当前目录及子目录中查找文件名为111.txt的文件

17 grep        ――――――――――熟练程度:*****
功能:从某个文件中查询指定的字符串
格式: grep  [选项]  [查找模式]  [ 文件名1,文件名2…]
[root@localhost ~]# grep ‘bind’   hello           从文件hello中查找字符串bind
[root@localhost ~]# grep    ‘[a-zA-Z0-9]ind’   hello                  
按照正则表达式,查找以字符或者数字开头连接ind的行

18 echo        ――――――――――熟练程度:***
功能:在显示屏上回显文字或者用来查看环境变量的值
[root@localhost ~]#  echo “hello,boy”
[root@localhost ~]#  echo  $PATH

19 su            ――――――――――熟练程度:***
功能:切换用户   注意su  与su - 的区别
使用普通用户登陆linux,执行ifconfig,这个命令在/sbin目录下  
[wxh@localhost ~]#ifconfig
系统提示:command not found     
[wxh@localhost ~]# echo $PATH         查看path的取值,是否有/sbin目录
进行用户切换:
[root@localhost ~]# su   root
切换成功后,执行 ifconfig  系统仍然提示:command not found    why?
[root@localhost ~]# echo $PATH         查看path的取值,是否有/sbin目录
[root@localhost ~]# su  -  root 
[root@localhost ~]# echo $PATH         查看path的取值  看是否有/sbin目录?
切换成功后,执行 ifconfig,系统执行命令成功                              why?

20 clear    ――――――――――熟练程度:**
功能:清屏
[root@localhost ~]# clear

21 man        ――――――――――熟练程度:***
功能:联机帮助
[root@localhost ~]#   man  ps                            查看ps命令的使用
[root@localhost ~]#   man  date                        查看date命令的使用

22 help          ――――――――――熟练程度:***
功能:命令在线帮助
[root@localhost ~]# help  cd                             查看cd命令的使用
[root@localhost ~]# help  pwd                        查看pwd命令的使用

23 whereis     ――――――――――熟练程度:**
功能:查看命令的存放位置
[root@localhost ~]# whereis  cd
[root@localhost ~]# whereis  pwd

24 id               ――――――――――熟练程度:**
功能:查看当前用户的uid,gid,groups
[root@localhost ~]# id

25 useradd  与userdel   ―――――熟练程度:****
功能:添加用户
[root@localhost ~]#  useradd  wang       添加用户wang
[root@localhost ~]#  useradd  zhang      添加用户wang
[root@localhost ~]#  ls  /home/                      查看/home目录下有什么信息
[root@localhost ~]#  userdel   wang           删除用户wang ,但不删除目录/home/wang
[root@localhost ~]#  userdel  –r  zhang    删除用户wang,并删除目录/home/wang
[root@localhost ~]#  ls  /home/                      查看以上操作有什么区别?

26 passwd                  ――――――熟练程度:*****
功能:修改用户的口令
注意,如果当前用户是root,该命令修改的将是root的口令
[root@localhost ~]#   useradd  wang           添加用户wang
[root@localhost ~]#   passwd   wang           修改用户wang的口令
[root@localhost ~]#   passwd       注意:这样修改的是当前用户的口令

27 groupadd      ――――――――――熟练程度:***
功能:添加组
[root@localhost ~]#   groupadd    manager     添加组 manager
[root@localhost ~]#   groupdel     manager      删除组 manager
[root@localhost ~]#   groupadd    manager     添加组 manager      
[root@localhost ~]#   gpasswd     manager     设置组manager的密码
[root@localhost ~]#    gpasswd  -r   manager 取消组manager的密码    
[root@localhost ~]#    gpasswd  -A  wang manager   设置用户wang为manager组的管理员
[root@localhost ~]#    gpasswd  -a   zhang manager    添加用户zhang到组mananger
[root@localhost ~]#    gpasswd  -d   zhang manager    从组manager中删除用户zhang

28 ps  命令        ――――――――――熟练程度:*****
显示进程信息
[root@localhost ~]# ps  -ef         //显示当前系统中运行的进程
[root@localhost ~]# ps  -ef|grep pid     //查询某个进程

29 top 命令        ――――――――――熟练程度:*****
动态显示进程信息                                              
[root@localhost ~]#  top

30 kill                  ――――――――――熟练程度:*****
功能:将指定的进程杀死
格式: kill  -s  信号名称   pid
             kill  -n  36              pid 
[root@localhost ~]# kill  -9  pid
常用的例子  ps  -ef   
                      kill  -9  进程号

31 tar  命令         ――――――――――熟练程度:*****
功能:将文件或者目录进行打包
格式: tar  [ 参数 ]  打包后的文件名  文件或目录
[root@localhost ~]# tar  cvf   test.tar    /home/test     把home下test目录打成tar包
[root@localhost ~]# tar     xvf    test.tar          把test.tar 解包

32 gzip                           ――――――――――熟练程度:*****
[root@localhost ~]# gzip   test.tar                      把test.tar文件进行压缩
[root@localhost ~]# gzip   –d   test.tar.gz      把test.tar.gz压缩包解压缩

33 rpm                     ――――――――――熟练程度:*****
[root@localhost ~]# rpm  -ivh  jdk-6u1-linux-i586.rpm   安装该包
[root@localhost ~]# rpm  -e    jdk-6u1-linux-i586     卸载该包注意:没有.rpm
[root@localhost ~]# rpm  -qi   jdk-6u1-linux-i586     查看包信息,注意:没有.rpm
[root@localhost ~]# rpm  -ql   jdk-6u1-linux-i586     列出包内容,注意:没有.rpm

34 ifconfig             ――――――――――熟练程度:*****
[root@localhost ~]# ifconfig               功能:查看或者设置网络配置  
[root@localhost ~]#  ifconfig  eth0  192.168.0.200   功能:配置eth0的ip地址
[root@localhost ~]#  ifconfig  eth0  down   功能:禁用eth0网卡
[root@localhost ~]#  ifconfig  eth0  up         功能:启用eth0网卡

以下三个命令           ――――――――――熟练程度:***
[root@localhost ~]# hostname           功能:查看主机名称
[root@localhost ~]# ping                          功能:查看网络上主机是否功能
[root@localhost ~]# netstat                功能:显示网络连接,路由表或者网络接口信息
netstat    -n  显示所有已经建立的有效连接
netstat    -a  显示所有有效连接,包括监听的一些连接
netstat    -s  按照各协议显示统计数据

33 route                      ――――――――――熟练程度:***
功能:添加路由和查看路由信息
[root@localhost ~]#route   add   -net 192.168.11.0  netmask 255.255.255.0 eth0

34 netconfig                 ――――――――――熟练程度:*****   
功能:实现网络的配置
[root@localhost ~]#netconfig
[root@localhost ~]#service   network    restart

linux命令补充篇:
1 tar
    [root@localhost ~]# tar  zcvf   test.tar.gz   /home/test     把home下test目录打成tar包并压缩
    [root@localhost ~]# tar  zxvf   test.tar.gz   把test.tar.gz文件解压缩并解包
 
2 如何使普通用户也能使用/sbin目录下面的命令
    使用root登陆,进入普通用户的主目录,如wxh用户的/home/wxh
    ls  -a
    vi  .bash_profile
   在环境变量path后面添加:/sbin
   保存退出
   重新使用普通用户登陆
   执行 ifconfig
   看普通用户是否可以使用/sbin下面的命令
 
3 mkdir 
   mkdir -p parent/son 同时创建父目录和子目录
   mkdir    -m   711    temp 创建目录的同时,修改这个目录的权限
 
4 rmdir
   rmdir    parent/son               只删除son目录
   rmdir    - p    parent/son 先删除son子目录,如果parent为空,则连parent一起删除
 
5 cp   
     cp  -R   ./parent   bak_parent 把目录下所有内容都一起拷贝
     注意,cp不能直接对目录进行操作,可以使用-R参数进行
6 chmod
   chmod  -R  611  mydir   把非空目录包括目录下的所有文件及目录的权限全都修改
 
7 chgrp
   chgrp  -R  wuxh  mydir  若mydir为非空目录,将其下所有文件和目录组信息都修改为组wuxh。
 
8 Chown
     chown  -R  wuxh  mydir    若mydir为非空目录,将其下所有文件和目录属主都修改为wuxh。
0 0
原创粉丝点击