Linux下的基本命令详解

            Linux系统不像windows系统那样图形界面做的那么美观漂亮,点击图标即可,Linux下都是使用命令行的形式来和系统进行交互(当然也有图形界面,只是做的不是那么完善),使用Linux命令相比而言还是比较方便的。我们知道windows使用的命令行的方式是DOS命令,Linux下是使用的命令则是shell命令,每一条命令都会被shell命令行解释器解析执行的。

        以下将带领大家学习下Linux下常用的一些基本命令,有了这些命令我们就可以打开Linux的大门去和它进行交流。当然我们查看命令的详细的内容可以通过man+命令的方式获取有关命令的帮助文档,关于man命令的使用如下:

(序):

          man  man   ->  查阅man的帮助文档

  man  1 命令  ->查阅命令的相关文档  eg:man 1 ls

          man  2  系统调用函数接口    eg:man 2 open

          man 3   库函数调用接口   eg:man 3 fopen

         这几个是最常用的,其他的用到的时候可以查阅。

以下为man 加上数字的含义:

   

 (1)ls

 作用:列出目录的内容

【1】ls +相对路径

ls  或  ls  .           ->     列出当前目录下的内容

ls ..                ->    列出上一级目录下的内容

 ls  ./dir  或 ls dir        ->    列出当前目录下的dir目录下的内容

【2】ls + 相对路径

ls  /home/linux/dir  或 ls ~/dir   ->列出/home/linux/dir 目录下的内容

【3】ls  -l  文件名/路径 <---> ll  文件名/路径      ->查看文件的详细信息(eg:ls -l file)

          ls -li  文件名/路径                                         ->查看文件的详细信息(包括inode号)

【4】ls -R  --->以目录树的形式显示目录内容

  (2)cd 

作用:切换路径

【1】cd +相对路径

cd   或 cd ~           ->     切换到家目录(eg:进入/home/linux下)

cd  /                      ->      切换到根目录下

cd -                      ->      切换到上一次路径

cd ..                     ->      切换到上一级路径

【2】cd + 相对路径

cd  /home/linux/dir  或 ls ~/dir   ->切换到/home/linux/dir 目录下

 (3)touch

作用:创建一个文件,更新文件的时间戳

touch  file                       ->如果file这个文件不存在,创建file这个文件;如果file这个文件存在,更行file的时间戳

touch   file1 file2 file3     ->  创建file1、file2、file3(创建多个文件)

  (4)mkdir 

作用:创建一个目录

mkdir   dir                        ->创建一个目录

mkdir  dir1/dir2/dir3    -p    ->递归创建多级目录

   (5)rm 

作用:删除一个文件或者目录

rm  file        ->  删除文件

rm dir   -r    ->  递归删除目录

    (6)mv

作用:移动或者重命名

mv  src_file / src_dir      dst_file / dst_dir        ->  移动(源和目的都存在)或者重命名(目的不存在)

   (7)cp

作用:拷贝文件或者目录

cp   src_dir      dst_dir          ->把原来的目录拷贝一份       eg: cp   ../dir/file  dir/  将上一级目录下的dir/file拷贝di下

cp   src_dir      dst_dir   -a    ->把原来的目录拷贝一份(所有)

cp   src_dir      dst_dir   -r     ->把原来的目录拷贝一份(递归),用于拷贝目录

     (8)cat   tac  more

作用:在终端显示文件内容(不打开文件)

cat  file        ->查看file内容

tac  file       ->反向输入一个文件的内容

more  file  ->显示一个文件一个屏的内容(用于文件内容比较多的情况,按 空格 查看下一屏,q退出)

    (9)通配符

匹配一个字符   ?        

匹配任意长度的字符串  *   eg:   *.txt    

匹配指定的字符1和3   [13]   eg:[13].txt  ---1.txt  2.txt

匹配一个指定范围的单个字符  [1-3]   eg:[13].txt  ---1.txt  2.txt  3.txt 

匹配除了指定字符外的字符  [^1] 

     (10) 重定向

     

      改变输入和输出的方向,这就叫做重定向。

     1-- 输出重定向,新建模式。  

         ls > test.txt  文件不存在创建,存在清零

     2-- 输出重定向,追加模式

         ls  >>  test.txt   文件不存在创建,存在追加到末尾

     3-- 输入重定向

          <

          wc  <  test.txt

     4-- 出错重定向

         2>  ,  2>>  (2表示标准出错)

         &>  ,  &>>

      (11)echo 

 作用:显示一行文本

echo  "hello"        ->  终端输出字符串(带引号原样输出,不带引号有多个空格只会保留一个)

echo -n "hello"    ->  终端输出字符串(不换行)

echo -e  "hello\nworld"   ->遇到\n换行 

echo "hello"  >> file   ->重定向字符串到文件中(追加方式)

        (12)  diff

作用:比较两个文件的异同

  diff     file1  file2  -> 比较file1和file2的内容

       (13)df  

作用:  用于查看磁盘空间的使用情况。

      df  -aTh       a:所有   T:类型   h: K,M,G(人类可识别)识别)

       (14)du 

作用:查看文件的大小

      du  -ah   file  测所有的文件的大小

       (15)wc  

作用:测试文件的行数、字符数、字节数

      wc  -l  file.txt 测试行数

     wc  -w  file.txt     测试单词的个数

      wc  -m  file.txt      测试的是字符数

     wc  -c  file.txt     测试的是字节数

     (16)管道

作用:管道道可以把一系列命令连接起来, 第一个命令的输出 可以 第二个命令的输入 ...

     |     表示 管道

     ls  /usr/bin  | wc -w

   (17)命令置换

作用:命令替换是将一个命令的输出作为另一个命令的参数。

     ls  `pwd`(为esc下的 ``)

   (18)进程相关命令

ps         查看进程信息   // process snapshot  进程快照

ps ajx    进程详细信息

ps aux  进程更加详细信息

top     动态显示系统中的进程

shift + <  shift + >  进行翻页操作       q     退出

kill      给进程发送一个信号

kill -l   列出当前系统支持的信号种类

kill  -9  pid    杀死pid这个进程

pstree   树状形式,显示进程的信息

./a.out &  就是将一个进程放到后台运行。

     (19)查找字符串 grep    find

      1--  知道内容,找文件(按字符串查找文件路径)

格式:grep   [选项]   “描述” [路径]

          grep   "关键词"  ./*     -R  <==> grep "内容"  路径  递归   (./ 为当前路径   * 所有文件)    

          eg:grep   "main"  ./*     -R

      2--  知道文件名字,找路径(按名称查找文件路径)

格式:find  [路径]   [选项]   [描述]

           find   ./* -name  文件名    eg:find ./* -name copy.c 

         eg:find  .  -type   d/f   -name  filename

         find  .  -type   d/f   -mtime  -10  //最后更改时间  十天内

         find  .  -type   d/f   -atime  -10   //访问时间

     (20)date   cal 

作用:显示日期/日历

      sudo  date -s  hh:mm:ss    修改时间

      sudo  date -s  mm/dd/year   修改年月日

      修改时区:

      cp  /usr/share/zoneinfo/Asia/Shanghai   /etc/localtime

       cal  显示日历

    (21)网络配置

     1-- ifconfig   查看网络信息

         sudo ifconfig eth0  down   关闭网卡

         sudo ifconfig eth0  up     开启网卡

     2-- ping   测试网络是否畅通

          ping  域名

          ping  ip地址

         对方开着防火墙, 那么 ping 不通

     3--  nslookup   域名解析

          nslookup  网址

          nslookup  ip地址

   (22) uname  -r     查看内核版本号

                    uname -a    查看linux内核等的一些信息(详细)

                   uname -n      查看计算机名称

                   
   (23)软件包的安装

【1】本地安装:

sudo dpkg -i   .*deb           安装软件包(当前路径下的deb包)

sudo dpkg -r   软件名           卸载软件包(不删除配置文件)

sudo dpkg -P   软件名           卸载软件包(删除配置文件)

sudo dpkg -s  软件名           查看软件包安装状态

sudo dpkg -L   软件名           查看软件包的安装列表

【2】在线安装:

sudo vi   /etc/apt/source.list       打开此文件是镜像源(服务器网站)

sudo vi   /var/cache/apt/archieves       打开存放的是在线下载的软件包(*.deb)

sudo vi   /lib/apt/lists      打开引索文件

sudo apt-get  install  软件名       安装软件包

sudo apt-get  updata         更新软件源

sudo apt-get remove--purge    软件名         删除文件包括配置文件

sudo apt-get remove  purge   软件名          删除文件不包括配置文件
sudo apt-get clean          删除缓冲中的软件包

sudo apt-get cheak        检测软件包的依赖关系

sudo apt-cache policy 软件包         查看 软件包安装状态

sudo apt-cache show  软件包        查看软件包信息

sudo apt-cache depend  软件包        查看软件的依赖关系

sudo apt-cache redepends 软件包          查看 软件的被依赖关系

    (24) mkfifo  管道名称     创建管道文件

    (25)ipcs  

ipcs  -m      查看当前系统上存在的共享内存

         ipcrm -m  shmid      删除当前系统上指定的共享内存

ipcs -s            查看当前系统上存在信号量集合

        ipcrm -s semid            删除当前系统上指定id的信号量集合


     (26) sudo shutdown   -r(重启)/-h(关机)     now(立刻)/+30(30分钟后)/12:00       关机和重启

                    sudo  reboot   ---->重启

   (27)文件的压缩

      1-- gzip   压缩 , 没有归档功能, 文件夹不能被压缩

          gzip  filename             //  生成 filename.gz

          gunzip  *.gz               //  解压

      2--  bzip2  压缩, 没有归档功能

           bzip2  filename

          bunzip2  *.bz2

      3-- zip  压缩, 压缩文件和文件夹

           zip  filename.zip  filelist

          unzip  *.zip

      4-- tar   归档并且压缩

           tar  -cjf   *.tar.bz2   filelist    //压缩

          tar  -xvf   *.tar.bz2       // 解压

          tar  -czf   *.tar.gz    filelist

          tar  -xvf   *.tar.gz       // 解压    

     (28) od

               od -c file    以可读文本的形式在终端打开

     (29)  head   tail 

                        head    显示文件开头部分的内容, 默认显示前10行

                          tail   显示文件末尾部分的内容,默认显示后10行

     (30) ln 

     1--  硬链接(两个文件的inode号相同,是同一个存储区域,修改一个另一个也改变)

          并没有创建新的文件,所以不占新的空间,主要是用来对文件进行备份使用的。

          ln  filename  linkfile  不允许对目录硬链接

         ls  -lhi

          ls -li  (查看inode号)

     2--  软链接(产生了新文件,开辟新的存储空间,应该用绝对路径,否则不能把链接文件放在其他目录)

          ln  -s  filename  linkname

         创建了新的文件, 类似于windows 下面快捷方式  支持目录操作

        eg:    ln -s `pwd`/file  link(绝对路径)

    (31)用户管理

      1--  /etc/passwd    用户相关信息  sudo+vi+/etc/passwd打开

         linux:x:1000:1000:linux::/home/linux:/bin/bash 

          用户名:密码:uid:gid:用户信息:家目录:shell

      2-- /etc/group    组的相关信息

         linux:x:1000:

          组名:密码:组ID:成员列表,彼此用逗号隔开

      3-- /etc/shadow   密码具体信息

【1】添加用户

       sudo adduser  u1

           会在/home下建立以用户名为目录名的家目录

【2】删除用户

       sudo deluser --remove-home u1  

【3】将不同用户添加到同一个组中:

       usermod -g  组名 用户名       // usermod  -g  u1  u2

【4】删除组:

      delgroup   groupname

   (32)file  

作用:查看文件信息

   file+文件名

   (33) su   

作用: 切换用户

      su  用户名    

   (34) sudo 

作用:获得超级用户权限

eg:sudo vi /ect/network/interface

   (35)history  

作用:查看历史记录信息

     history  查看历史命令

     history  >> test.txt

     1--  临时性

         直接修改  HISTSIZE=1000

         echo  $HISTSIZE

     2-- 永久性

         vi  .bashrc  s

         HISTSIZE=1500

         source  .bashrc  重启生效

     (36) pwd         

 作用: 获得当前终端所在的路径

   (37)whereis 

作用:查看命令位置

     whereis  命令名

     eg:whereis ls

     (38)chmod 

作用:修改权限

chmod   权限掩码   文件  

eg :chmod 777 file.sh

      chmod u+x file.sh

      (39)time

作用:查看命令/程序运行时间

time  ls

      (40)clear

作用:清屏

     (41)bc

作用:进入数学运算中

     (42)sed

作用:替换一个字符串等

eg:  sed "s#src_str#dst_str/g" file.txt > file.txt.tmp

       mv  file.txt.tmp   file.txt.tmp

        说到这里就把Linux的基本的常用命令说完了,当然Linux下的命令有很多,作为Linux系统管理员来说,这些命令是远远不够的,有许多我们没有见过的命令,在此就不在赘述。可能还有许多命令加上其他的参数之后还有其他的功能,对此可以通过查阅man手册来学习,对于其中不足指出望提出宝贵意见。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是你的春哥!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值