Linux常见命令

  • 2020 年 3 月 11 日
  • 筆記

Linux的命令笔者就老是记不住,一旦要用到的时候就各种找,所以这里列出学习过程中所遇到的,方便回看。列出的命令及其选项是笔者使用过的, 并不是完整的内容,详情可 Linxu命令大全

一. 常见快捷键

Tab:自动补全  ^ + S:停止  ^ + Q:恢复  ^ + C:中断  ^ + L:清屏  ^ + A:光标移到行头(输入命令中)  ^ + E:光标移到行尾(输入命令中)  ^ + Z:后台挂起任务

二. 命令的格式

命令名称 [命令参数] [命令对象]

三. 其他

1. 输出重定向

>  保存到文件  >> 追加到文件

2. 管道

命令1 | 命令2 |命令n:将前一条命令执行结果通过标准输出送给后一命令作为输入数据

3. 文件类型

- :普通文件  d :目录  l :连接文件  b :设备块    黑色背景命令行状态下  白色:普通文件  蓝色:目录  绿色:可执行文件  红色:压缩文件  黄色:设备文件  浅蓝色:链接文件

四. 工作目录切换

1. cd

cd    进入用户主目录  cd ~  进入用户主目录  cd -  返回本次操作前的目录  cd .. 返回上级目录  cd /  进入根目录

2. ls

-C:多列显示文件及目录,默认  -a:显示所有文件及目录,包括隐藏文件  -l:详细显示文件及目录,简化命令 ll

3. pwd

显示当前目录的绝对目录

五. 文件目录管理

1. touch

不存在则创建文件,否则更新修改时间

2. mkdir

-p:递归创建目录  -m:创建目录赋予权限  名字用空格隔开表示创建多个同级目录  

3. cp [选项] [源文件/目录] [目的目录]

# 最后一个一定是目的目录,前面的都是需要复制的  -r:递归处理  

4. mv [选项] [源文件/目录] [目的目录]

-i:文件存在覆盖前询问  改名:mv file1 file2  移动:mv file1 /opt  

5. rm

-r:递归处理  -f:强制删除文件或目录  -i:删除前询问  

6. chmod

u:文件的拥有者  g:同组  o:其他以外的人  a:三者皆是    +:增加权限  -:取消权限  =:唯一设定权限    -R:递归处理    # 更改权限  chmod +x helloWorld.sh  

六. 文本文件编辑命令

1. cat

-n:显示行号    cat file1 标准输出中显示  cat file1 file2 同时显示两个文件  cat file1 file2 > file3 将前二者合并到file3中  

2. more

Space:翻屏  Enter:下一行  b:回退一行/一屏  =:当前行号  v:用vim打开当前内容  Q:退出more命令  H:显示帮助  

显示文头    head +100 显示头部100行  

4. tail

显示文末    tail +100 file1 从100行到文末  tail -50  file1 从文末开始算显示50行  

5. wc

-l 统计行数  -w 统计字数  -c 统计字节数    wc -l file1 统计行数  

6. stat

-t:简介输出  -f:显示文件系统状态  默认:显示文件状态  

7. diff

显示结果中:a、b、c 分别表示添加、删除、修改  这些字母前后分别表示二者文件不同的行号  

七. 打包压缩与搜索命令

1. find [搜索范围] [匹配条件]

find ./ -name file.txt  find ./ -size +100000K  

2. grep [选项] [指定串] [文件]

-a 文本方式搜索  -n 输出行号  -v 反向搜索  

3. tar

这里要说明一点:打包和压缩是不同的概念。打包是将多个文件变成一个文件,压缩则是将大文件压缩成小文件,通常只支持对一个文件压缩,所以我们得先将多个文件打包成一个总文件才能进行压缩    -c:建立新备份文件(类似于另存为)  -v:显示指令执行过程  -x:还原备份文件  -t:列出备份文件列表  -f:取名,一般自行取.tar结尾  -z:gzip压缩或ungzip,取名时应.tar.gz    tar -zcvf file.tar.gz file 打包后压缩  tar -zxvf file.tar.gz      解压缩解包  tar -ztvf file.tar.gz      显示内容列表  

八. 系统工作命令

1. ps

-e:显示所有进程  -f:显示UID,PID,PPID    ps -f  UID         PID   PPID  C STIME TTY          TIME CMD  howl      22537  22527  0 14:49 pts/0    00:00:00 bash  howl      23720  22537  0 15:04 pts/0    00:00:00 ps -f    常配合grep使用  ps -ef | grep bash :找出带有bash行的进程  

2. kill

杀死指定进程:指定PID  

3. clear

清屏  

4.jobs、bg、fg

jobs:显示当前暂停的进程  bg N:使第N个任务在后台运行  fg N:使第N个任务在前台运行  不带数字,默认最后一个任务  

5. reboot、shutdown、who

reboot:重启  shutdown:关机  who:查看在线用户    # 关机操作  who:先查看哪些用户在线  shutdown +10 "十分钟后将关机":通知其他用户关机信息  

6. wget

-b:后台运行  -P:下载到指定文件(大写)    # 后台运行指定目录file中  wget -bP file http://download.redis.io/releases/redis-5.0.5.tar.gz  

7. rpm、yum

rpm:软件包管理,其包名以.rpm结尾,使用rpm可安装查询卸载软件,缺点与依赖关系复杂  yum:基于rpm包管理,自动下载依赖并安装rpm包    rpm:  -a:显示已经安装的软件包  -q:查询一个包是否已经安装  # 查询指定软件包是否安装  rpm -qa | grep screen    yum:  -y:所有提问回答yes  install:安装rpm软件包  update:更新rpm软件包  check-update:检查是否有可用的更新rpm软件包  remove:删除指定的rpm软件包  

8. su、su – 、sudo

su:切换root,需要知道root密码  su - :切换root,连shell环境也切换了  sudo:运行已授权用户以超级用户或者其它用户的角色运行一个命令  

9. netstat

n:不DNS轮询,显示IP  t:显示TCP端口  u:显示UDP端口  l:仅显示套接字  p:显示进程标识符和程序名称    # 查看80端口  netstat -ntp | grep 80  

10. firewall-cmd

--query-port=<端口号>/<protocol>:查询指定端口  --add-port=<端口号>/<protocol>:开放端口  --remove-port=<端口号>/<protocol>:关闭端口    --zone=public:作用域  --permanent:永久生效  --reload:重启防火墙      # 查询是否开启  firewall-cmd --zone=public --query-port=80/tcp    # 开启防火墙端口  firewall-cmd --zone=public --add-port=80/tcp --permanent