【小白几分钟】几分钟了解Linux常用基本命令

写在前面

 Linux相比我们常用的windows最大的一个特点就是,基本不用通过win那样华丽的图形界面来操作Linux系统,它的图形界面是可有可无的,通常是通过命令行来对其进行操作。所以,经常会看到许多服务器机房只有大量的主机,甚至连显示器都没有,因为运维同学一般通过ssh进行远程连接进行服务器维护管理。
 通过之前的文章,大家应该对Linux的目录结构已经有所了解了,接下来给大家介绍一下Linux中的常用基本命令

 

Linux常用基本命令

  • ls
    功能描述:显示目录文件
    语法:ls [选项] [文件]
    常用选项:
         -a 显示所有文件,包括隐藏文件
         -l 详细信息显示
         -d 查看目录属性
         -i 显示每个文件的inode号
         -t 根据修改时间进行排序
    示例:
[root@vultr /]# ls   
bin   dev  home  lib64       media  opt    proc  run   srv  tmp  var
boot  etc  lib   lost+found  mnt    patch  root  sbin  sys  usr  www

[root@vultr /]# ls -a
.   bin   dev  home  lib64       media  opt    proc  run   srv  tmp  var
..  boot  etc  lib   lost+found  mnt    patch  root  sbin  sys  usr  www

[root@vultr /]# ls -l
total 68
lrwxrwxrwx  1 root root     7 Jun  6 05:38 bin -> usr/bin
dr-xr-xr-x  5 root root  4096 Jun 21 22:38 boot
drwxr-xr-x 20 root root  3040 Jun 27 10:45 dev
...

[root@vultr /]# ls -i
   3815 bin      8006 home           8007 media        1 proc     8010 srv    24002 var
   8005 boot     3829 lib            8008 mnt      24001 root        1 sys  1280001 www
      3 dev       388 lib64          8009 opt      10876 run      8003 tmp
  16002 etc        11 lost+found  1024001 patch      394 sbin     8004 usr

 

  • pwd
    功能描述:显示当前目录
    语法:pwd
    示例:
[root@vultr tmp]# pwd
/tmp

 

  • cd
    功能描述:切换目录
    语法:cd [目录]该目录可写相对路径或绝对路径
    示例:
[root@vultr /]# cd /root      #进入root目录
[root@vultr ~]# cd /          #进入根目录
[root@vultr /]# cd ~          #进入家目录
[root@vultr ~]# cd ..         #返回上一级目录

 

  • mkdir
    功能描述:创建新目录
    语法:mkdir [选项] [目录名称]
    常用选项:
         -p 递归创建目录
    示例:
[root@vultr test]# mkdir test1        #创建test1目录
[root@vultr test]# ls
test1

[root@vultr test]# mkdir test1/test2/test3        #在test1里创建test2,在test2里创建test3
mkdir: cannot create directory ‘test1/test2/test3’: No such file or directory        #创建失败,因为没有找到相应的目录
[root@vultr test]# mkdir -p test1/test2/test3         # 加入-p选项后递归创建成功  
[root@vultr test]# ls test1/test2
test3

[root@vultr test]# mkdir test4 test5        #如果想依次创建多个目录,可用空格连接
[root@vultr test]# ls
test1  test4  test5

 

  • touch
    功能描述:创建空文件
    语法:touch [文件名称]
    示例:
[root@vultr tmp]# touch test
[root@vultr tmp]# ls
test

 

  • rm
    功能描述:删除文件
    语法:rm [选项] [文件或目录]
    常用选项:
         -r 递归删除目录及其内容
         -f 强制删除
    示例:
[root@vultr tmp]# ls         #test为文件,test1为文件夹,test1里有test2,test2里有test3
test  test1
[root@vultr tmp]# rm test        #删除test文件
rm: remove regular empty file ‘test’? y        #询问确认删除test文件,输入“y”回车即可删除
[root@vultr tmp]# rm -rf test1        #强制递归删除test1中所有内容

 

  • cp
    功能描述:复制文件或目录到指定位置
    语法:cp [选项] [被复制文件或目录] [目标路径]
    常用选项:
         -r 复制目录
    示例:
[root@vultr /]# ls                         #根目录下有个文件夹叫“test1”,“test1/test2/test3”
test1                                        
[root@vultr /]# cp -r /test1 /tmp/         #把test1文件夹拷贝到tmp下
[root@vultr /]# ls /tmp/      
test1

 

  • mv
    功能描述:剪切文件或目录到指定位置
    语法:mv [被复制文件或目录] [目标路径]
    示例:
[root@vultr /]# ls
test1
[root@vultr /]# mv test1 /tmp/testt      #把“test1”剪切到tmp文件夹下并改名为“testt”
[root@vultr /]# ls

[root@vultr /]# ls tmp
testt

 

  • cat
    功能描述:显示文件内容
    语法:cat [文件名]
    示例:
[root@vultr /]# cat /tmp/test.txt
111
222
333
444
555
[root@vultr /]# cat -n /tmp/test.txt            #“-n”显示行号
     1  111
     2  222
     3  333
     4  444
     5  555

 

  • more
    功能描述:分页显示文件内容
    语法:more [文件名]
       “空格”键 翻页
       “回车” 换行
       “q” 退出
    示例:
这个功能不太方便演示,大家可以more   etc下的一些配置文件看看,这些文件普遍内容比较多
[root@vultr /]# more etc/vimrc
if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
   set fileencodings=ucs-bom,utf-8,latin1
endif

set nocompatible    " Use Vim defaults (much better!)
set bs=indent,eol,start     " allow backspacing over everything in insert mode
"set ai         " always set autoindenting on
"set backup     " keep a backup file
set viminfo='20,\"50    " read/write a .viminfo file, don't store more
            " than 50 lines of registers
set history=50      " keep 50 lines of command line history
set ruler       " show the cursor position all the time

" Only do this part when compiled with support for autocommands
if has("autocmd")
  augroup redhat
  autocmd!
  " In text files, always limit the width of text to 78 characters
  " autocmd BufRead *.txt set tw=78
  " When editing a file, always jump to the last cursor position
  autocmd BufReadPost *
  \ if line("'\"") > 0 && line ("'\"") <= line("$") |
  \   exe "normal! g'\"" |
  \ endif
  " don't write swapfile on most commonly used directories for NFS mounts or USB sticks
  autocmd BufNewFile,BufReadPre /media/*,/run/media/*,/mnt/* set directory=~/tmp,/var/tmp,/tmp
  " start with spec file template
--More--(56%)
#可以尝试一下上述的功能键

 

  • less
    功能描述:分页显示文件内容(可上下翻页)
    语法:less [文件名]
       “PageDwon”键 向下翻页
       “PageUp”键 向上翻页
       “/字符串” 向下查询字符串
       “?字符串” 向上查询字符串
       “:数字” 跳转指定行
       “回车” 换行
       “q” 退出
    示例:
[root@vultr ~]# less /etc/vimrc
if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
   set fileencodings=ucs-bom,utf-8,latin1
endif

set nocompatible        " Use Vim defaults (much better!)
set bs=indent,eol,start         " allow backspacing over everything in insert mode
"set ai                 " always set autoindenting on
"set backup             " keep a backup file
set viminfo='20,\"50    " read/write a .viminfo file, don't store more
                        " than 50 lines of registers
set history=50          " keep 50 lines of command line history
set ruler               " show the cursor position all the time

" Only do this part when compiled with support for autocommands
if has("autocmd")
  augroup redhat
  autocmd!
  " In text files, always limit the width of text to 78 characters
  " autocmd BufRead *.txt set tw=78
  " When editing a file, always jump to the last cursor position
  autocmd BufReadPost *
  \ if line("'\"") > 0 && line ("'\"") <= line("$") |
  \   exe "normal! g'\"" |
  \ endif
  " don't write swapfile on most commonly used directories for NFS mounts or USB sticks
  autocmd BufNewFile,BufReadPre /media/*,/run/media/*,/mnt/* set directory=~/tmp,/var/tmp,/tmp
  " start with spec file template
:5
#输入行号可直接跳转,大家可尝试更多的功能键

 

  • head
    功能描述:显示文件前几行
    语法:head [选项] [文件名]
    常用选项:
         -n 指定行数
    示例:
[root@vultr ~]# head -n 5 /etc/vimrc                #仅显示前5行
if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
   set fileencodings=ucs-bom,utf-8,latin1
endif

set nocompatible    " Use Vim defaults (much better!)
[root@vultr ~]# 

 

  • tail
    功能描述:显示文件后几行
    语法:tail [选项] [文件名]
    常用选项:
         -n 指定行数
         -f 动态显示文件末尾内容(相当于实时更新显示内容)
    示例:
[root@vultr ~]# tail -n 5 /etc/vimrc                  #仅显示后5行
endif

" Don't wake up system with blinking cursor:
" http://www.linuxpowertop.org/known.php
let &guicursor = &guicursor . ",a:blinkon0"

 

  • wc
    功能描述:统计文件内容信息,行数、单词数、字节数
    语法:wc [选项] [文件名]
    常用选项:
         -l 行数
         -w 单词数
         -c 字节数
[root@vultr ~]# wc -lwc /etc/vimrc           #依次显示行数、单词书、字节数,一般用“-l”比较多
  64  283 1982 /etc/vimrc

 

  • cal
    功能描述:用于查看日等时间信息
    语法:cal [选项]
    常用选项:
         -1 查看当月日历,等同“cal”
         -3 查看3个月内日历
         -m 以星期一开头显示日历
         -s 以星期日开头显示日历
         -y 查看一年的日历
    示例:
[root@vultr ~]# cal
      July 2018     
Su Mo Tu We Th Fr Sa
 1  2  3  4  5  6  7
 8  9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

[root@vultr ~]# cal -y
                               2018                               

       January               February                 March       
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa
    1  2  3  4  5  6                1  2  3                1  2  3
 7  8  9 10 11 12 13    4  5  6  7  8  9 10    4  5  6  7  8  9 10
14 15 16 17 18 19 20   11 12 13 14 15 16 17   11 12 13 14 15 16 17
21 22 23 24 25 26 27   18 19 20 21 22 23 24   18 19 20 21 22 23 24
28 29 30 31            25 26 27 28            25 26 27 28 29 30 31

        April                   May                   June        
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa
 1  2  3  4  5  6  7          1  2  3  4  5                   1  2
 8  9 10 11 12 13 14    6  7  8  9 10 11 12    3  4  5  6  7  8  9
15 16 17 18 19 20 21   13 14 15 16 17 18 19   10 11 12 13 14 15 16
22 23 24 25 26 27 28   20 21 22 23 24 25 26   17 18 19 20 21 22 23
29 30                  27 28 29 30 31         24 25 26 27 28 29 30

        July                  August                September     
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa
 1  2  3  4  5  6  7             1  2  3  4                      1
 8  9 10 11 12 13 14    5  6  7  8  9 10 11    2  3  4  5  6  7  8
15 16 17 18 19 20 21   12 13 14 15 16 17 18    9 10 11 12 13 14 15
22 23 24 25 26 27 28   19 20 21 22 23 24 25   16 17 18 19 20 21 22
29 30 31               26 27 28 29 30 31      23 24 25 26 27 28 29
                                              30
       October               November               December      
Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa
    1  2  3  4  5  6                1  2  3                      1
 7  8  9 10 11 12 13    4  5  6  7  8  9 10    2  3  4  5  6  7  8
14 15 16 17 18 19 20   11 12 13 14 15 16 17    9 10 11 12 13 14 15
21 22 23 24 25 26 27   18 19 20 21 22 23 24   16 17 18 19 20 21 22
28 29 30 31            25 26 27 28 29 30      23 24 25 26 27 28 29
                                              30 31

[root@vultr ~]# cal -3m
      June 2018             July 2018            August 2018    
Mo Tu We Th Fr Sa Su  Mo Tu We Th Fr Sa Su  Mo Tu We Th Fr Sa Su
             1  2  3                     1         1  2  3  4  5
 4  5  6  7  8  9 10   2  3  4  5  6  7  8   6  7  8  9 10 11 12
11 12 13 14 15 16 17   9 10 11 12 13 14 15  13 14 15 16 17 18 19
18 19 20 21 22 23 24  16 17 18 19 20 21 22  20 21 22 23 24 25 26
25 26 27 28 29 30     23 24 25 26 27 28 29  27 28 29 30 31      
                      30 31  

 

  • date
    功能描述:打印或设置系统日期和时间
    语法:date
    语法2:date +%F等同于date "+%Y-%m-%d"
    语法3:date “+%F %T”等同于date "+%Y-%m-%d %H:%M:%S"
    示例:
[root@vultr ~]# date                 
Tue Jul  3 14:16:10 CST 2018          #输出形式为:xxxx年xx月xx日  星期x xx:xx:xx
[root@vultr ~]# date +%F
2018-07-03                            #输出形式为:年-月-日
[root@vultr ~]# date "+%F %T"
2018-07-03 14:16:40                   #输出形式为:年-月-日 时:分:秒
[root@vultr ~]# date "+%Y-%m-%d %H:%M:%S"    
2018-07-03 14:22:04                   #与上面的相同

 


 

写在最后

数了一下,大概讲了有16个基本的操作命令,都是些比较基础的命令,大家可以在自己的服务器上多加练习这些命令,都不难啦,尝试着一个个敲过去

这里再安利一个“Linux命令手册”的网站,直接将你要查询的命令输入进去,就会有相应的非常详尽的命令说明

 

日常鸡汤

你可能感兴趣的:(【小白几分钟】几分钟了解Linux常用基本命令)