Linux中的常见命令


前言

Linux是一种自由和开放源代码的类UNIX操作系统,该操作系统的内核由林纳斯托瓦兹在1991年首次发布,再加上用户空间的应用程序之后,就成为了Linux操作系统,严格来讲,Linux只是操作系统内核本身,但通常采用”Linux内核“来表达该意思,而Linux则通常表示基于Linux内核的完整操作系统,它包括GUI组件和许多其他实用工具


一、Linux基本指令

1. ls指令:对于目录,该命令列出该目录下的所有子目录与文件,对于文件,将列出文件名以及其他信息

ls [选项] [目录或者文件]

常用选项

  • —a 列出目录下的所有文件,包括以。开头的隐含文件
  • —d 将目录像文件一样显示,而不是显示其下的文件 ls-d 指定目录
  • —k 以k字节形式表示文件的大小,ls—alk指定文件
  • —l 列出文件的详细信息
  • —r 对目录反向排序
  • —t 以一时间排序
  • —R 列出所有子目录下的文件(类似于递归形式)

2. pwd命令 显示用户当前所在目录

pwd

3. cd命令 改变工作目录,将当前工作目录改变到指定目录下

cd 目录名 
cd..:返回上一级目录
cd ~:进入用户家目录
cd -: 返回最近访问目录

4. touch指令 :touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件

touch[选项]  [文件]
touch test.txt

5. mkdir指令 :在当前目录下创建一个名为”dirname“的目录

mkdir [选项] dirname...
mkdir -p test/test1:递归建立多个文件
  • -p:—parents 可以是路径名称,此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些不存在的目录,即一次可以建立多级目录

6. rm指令 删除文件/目录

rm [-f-i-r-v][dirname/dir]
rm test.txt
  • -f即使文件属性为只读(即写保护),亦可直接删除
  • -i 删除前逐一询问确认是否删除
  • -r 删除目录及其下所有目录

7. cp指令 复制文件或目录

cp[选项] 源文件/目录  目标文件/目录
cp text1.txt   text2.txt
  • -f 或-force 强行复制文件或目录,不论目的文件或目录已存在
  • -i 或interactive 覆盖文件之前先询问用户
  • -r 递归处理,将指定目录下的文件与子目录一并处理,若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理

8. mv指令 1. 视mv命令中第二参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至新目录下 **2.**当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件/目录重命名为给定的目标文件名 **3.**当第二个参数是已存在的目录时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标文件

mv[选项] 源文件名/目录  目标文件名/目录
mv text1.txt   text2.txt
  • -f force强制的意思,如果目标文件已经存在,不会询问直接覆盖
  • -i 若目标文件(destination)已经存在时,就会询问是否覆盖

9. cat指令 :查看文件内容

cat [选项] [文件]
cat text.txt

  • -n对输出的所有行编号
    10. man指令
man [选项] 命令
man ls(查看ls指令)
  • -k 根据关键字搜索联机帮助
  • num 指在第num章节找
  • man man能够看到man手册中的若干个章节及其含义
  1. less指令:查看文件内容,不会立刻把所有文件内容加载到内存中,也能进行查找
less [参数] 文件
  • j k /方向键:向上向下滚动屏幕
  • -N 显示每一行的行号
  • n:重复前一个搜索(与/或?有关)
  • q:退出

12. head指令:head用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行

head [参数 ]  [文件]
  • -n<行数>:显示的行数

13. tail指令: 用于显示文件末尾内容,不指定文件时,作为输入信息进行处理,常用于查看日志文件

tail [必要参数]   [选择参数]   [文件]
##有一个文件共有100行内容,请去除第50行内容
#方法一
head -n50 test > tmp  #将前50行装入临时文件tmp
tail -n1 tmp  #得到第50行
#方法二
head -n50  test |  tail  n1 
  • -f 循环读取
  • -n<行数> 显示行数

**14. 关于| 管道:**将前一个指令标准输出的内容作为第二个指令标准输入的内容
15. date命令 : date指定格式显示时间:date+%Y:%m:%d

date [OPTION] [format]
#时间-》时间戳:date +%s
#时间戳-》时间:date -d@1508749502

16. yum命令

#1.查看软件包列表
yum list | grep [软件包关键字]  #最好加上grep,否则结果太多,导致机器卡顿
#2.安装软件包
yum install [软件包名字]
#3.卸载软件包
yum  remove [软件包名字]

yum 所有命令必须保证网络联通下,才能使用
yum install /yum remove 必须具备管理员权限(root用户)
可以使用ping www.baidu.com 来检测网络的畅通情况

17. chmod命令:设置文件的访问权限

chmod [参数]  权限 文件名
chmod  u+w  /home/abc.txt
chmod o-x  /home/abc.txt
chmod a=x  /home/abc.txt
  • R->递归修改目录文件的权限
  • 只有在文件的拥有者和root才可以改变文件的权限

用户标识符+/-=权限字符

  • +:向权限范围增加权限代号所表示的权限
  • -:向权限范围取消权限代号所表示的权限
  • =:向权限范围赋予权限代号所表示的权限
  • 用户符合
  • u:拥有者
  • g:拥有着同组
  • o:其他用户
  • a:所有用户

二、Linux目录结构(树形结构)

在这里插入图片描述

  • /bin: bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。
  • /boot: 这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
  • /dev : dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux中访问设备的方式和访问文件的方式是相同的。
  • /etc: etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。
  • /home: 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的alice、bob 和 eve。
  • /lib: lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL文件。几乎所有的应用程序都需要用到这些共享库。
  • /lost+found: 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
  • /media: linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
  • /mnt: 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/上,然后进入该目录就可以查看光驱里的内容了。
  • /opt: opt 是 optional(可选)的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
  • /proc: proc 是 Processes(进程) 的缩写,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:

几个特殊的目录:
/称为根目录
.称为当前目录
…称为当前目录的上一级目录


关于vim

vim是一个古老的命令行下的开发工具,可以看作是高端的记事本
vim有多种模式:

  • 普通模式:启动vim默认普通模式,此时键盘按键不是直接输入文本,而是各种功能的快捷键
  • 插入模式:在普通模式下,按下i 进入插入模式,可以进行编辑
  • 命令模式:编辑完毕,按 ESC返回到普通模式,然后输入:进入命令模式,此时光标在屏幕最下面。然后输入wq,表示保存并退出

如何查看端口号

netstat命令 可以搭配grep进行过滤 选择需要查看的端口号占用情况

查看进程并且杀死进程

查看进程 ps aux | grep …
例如 ps aux | grep program_filter_word,ps -ef |grep tomcat

如何查看进程个数

ps axu|wc -l

如何查看目录下的文件个数

1.查看当前目录下的文件个数
ls-l | grep “^-” | wc-l
2.查看当前目录下包括子目录的文件个数
ls-lR | grep “^-” | wc-l
3.查看当前目录下的目录个数
ls-l | grep “^d” | wc-l
4.查看当前目录下包含子目录的目录个数
ls-lR | grep “^d” | wc-l

top查看内存/CPU使用情况

结果里面有一列%CPU 上次更新到现在的CPU时间占用百分比

总结

关于Linux指令有很多很多,全部记住肯定是无法完成的,所以我们只需要记住上面这几种常见的常用的指令,并在有需要的时候利用man 查找指令,或者查阅相关手册。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值