初学Linux,了解基本命令
什么是shell
shell的定义
shell是Linux系统中后台运行的一种特殊程序也可以理解成一种特殊的软件,提供了用户与内核进行交互操作的一种接口。(是将二进制语言识别成用户能读懂的语言)
Linux的基本分类
Linux命令行格式
命令字
1)是整条命令中最关键的一部分
2)唯一确定一条命令
选项
1)短格式选项:使用-符号引导 通常引导一个字母
2)长格式选项:使用- -符号引导 通常引导一个完整的单词
参数
1)命令字的处理对象
2)可以是文件名、目录(路径)名或用户名等内容
3)个数可以是零到多个
编辑Linux命令行
Tab:自动补齐
\:强制换行
ctrl+u:清空至行首
ctrl+k:清空至行尾
ctrl+l:清屏(clear)
ctrl+c:取消本次命令编辑
ctrl+a:切换到行首
ctrl+e:切换到行尾
绝对路径和相对路径
区别:绝对路径以“/”开头,“/结尾”。相对路径不以“/”开头。
Linux中基本命令
# 管理员用户(一般是root)
$ 普通用户
~ 家目录(当前用户的家目录)
/ 根目录
显示当前文件的路径
[root@localhost ~]# pwd
/root //root用户表示,localhost主机名
2.切换到root下的根目录
[root@localhost ~]# cd / //切换到根目录
[root@localhost /]# ls //列出文件
3.切换到opt目录中(上级-下级 相对路径)
[root@localhost /]# cd opt
4.平行切换和往上级目录切换(相对路径)
[root@localhost opt]# ls
1 2 3 qq qzz yht zz
[root@localhost opt]# cd qzz //切换到opt下面的qzz中
[root@localhost qzz]# cd /opt/qq/ //在qzz中平级切换到opt下面的qq中
[root@localhost qq]# cd /opt/ //切换到qq上面的opt中
[root@localhost opt]# cd .. //切换到上级目录
[root@localhost /]# cd - //返回到上次操作的目录中
/opt
[root@localhost opt]# cd ~ //切换到家目录
5.列出
[root@localhost opt]# ls //列出文件
1 2 3 qq qzz yht zz
[root@localhost opt]# ll //列出文件的详细信息
总用量 8
-rw-r--r--. 1 root root 44 2月 16 00:08 1
-rw-r--r--. 1 root root 0 2月 15 18:47 2
-rw-r--r--. 1 root root 0 2月 15 18:47 3
drwxr-xr-x. 2 root root 6 2月 15 18:46 qq
drwxr-xr-x. 2 root root 4096 2月 15 19:00 qzz
drwxr-xr-x. 2 root root 6 2月 15 18:47 yht
drwxr-xr-x. 2 root root 16 2月 15 18:54 zz
//-普通文件 d文件夹 r 可读 w可写 x可执行
[root@localhost opt]# ls -a //显示隐藏文件(所有文件)
. .. 1 2 3 qq qzz yht zz
[root@localhost opt]# ls -A //只显示隐藏文件
1 2 3 qq qzz yht zz
[root@localhost opt]# ls -d //只显示本目录[root@localhost opt]# ls -i //查看indoe号
101851281 1 101380474 2 101380475 3 1426915 qq 67147591 qzz 101380472 yht 33555141 zz
[root@localhost opt]# ll -h //以更人性化的方式展现
总用量 8.0K
-rw-r--r--. 1 root root 44 2月 16 00:08 1
-rw-r--r--. 1 root root 0 2月 15 18:47 2
-rw-r--r--. 1 root root 0 2月 15 18:47 3
drwxr-xr-x. 2 root root 6 2月 15 18:46 qq
drwxr-xr-x. 2 root root 4.0K 2月 15 19:00 qzz
drwxr-xr-x. 2 root root 6 2月 15 18:47 yht
drwxr-xr-x. 2 root root 16 2月 15 18:54 zz
6.删除
[root@localhost opt]# rm -rf 1 //删除一个文件
[root@localhost opt]# ls
2 3 qq qzz yht zz
[root@localhost opt]# rm -rf * //删除所有文件。这个命令慎用慎用!!!!!不能去踩缝纫机!!!!
7.创建目录
[root@localhost opt]# mkdir qzz //创建一个目录
[root@localhost opt]# mkdir yht dxl //平行创建一个目录
[root@localhost opt]# ls
dxl qzz yht
[root@localhost opt]# mkdir -p a/b/c //递归创建(a在opt下,b在a下,c在b下)
[root@localhost opt]# ls
a dxl qzz yht
[root@localhost opt]# cd a
[root@localhost a]# ls
b
[root@localhost a]# cd b
[root@localhost b]# ls
c
8.创建文件
[root@localhost opt]# touch 1
[root@localhost opt]# touch 2 3 //创建一个文件
[root@localhost opt]# ls
1 2 3 a dxl qzz yht
[root@localhost opt]# touch {4..9} //递归创建
[root@localhost opt]# ls
1 2 3 4 5 6 7 8 9 a dxl qzz yht
9.通配符
[root@localhost opt]# ls ky27[qiaozhouzhi] //有一个匹配一个
ky27a:
ky27h:
ky27i:
ky27o:
ky27q:
ky27u:
ky27z:
[root@localhost opt]# ls ky27[q-z] //列出q-z之间出Z之外的所有大小写
ky27q: ky27Q: ky27r: ky27R: ky27s: ky27S: ky27t: ky27T: ky27u: ky27U: ky27v: ky27V:
ky27w: ky27W: ky27x: ky27X: ky27y: ky27Y: ky27z:
[root@localhost opt]# ls ky27{q..z} //列出q-z之间的所有小写
ky27q: ky27r: ky27s: ky27t: ky27u: ky27v: ky27w: ky27x: ky27y: ky27z:
[root@localhost opt]# ls ky27[[:lower:]]* //列出所有小写
[root@localhost opt]# ls ky27[[:upper:]] //列出所有大写
[root@localhost opt]# ls ky27[^qiaozhouzhi] //取反,除了qiaozhouzhi之外的所有大小写都要显示出来
[root@localhost opt]# ls [[:digit:]]* //匹配所有数字
10.显示文件大小
[root@localhost opt]# du -a //显示具体每个文件的大小
[root@localhost opt]# du -h //统计文件大小
[root@localhost opt]# du -sh //统计所有文件大小
11.移动和重命名
[root@localhost opt]# mv 1 qzz //将1重命名为1qzz
[root@localhost qzz]# mv dxl /opt/yht/ //将dxl从qzz目录下移动到opt目录下的yht中
12.复制
[root@localhost qzz]# cp yht /opt/yht/ // 将yht从qzz目录下复制到opt目录下的yht中
[root@localhost opt]# cp -r a /opt/dxl/ //回到opt目录下,将a复制到dxl中
[root@localhost opt]# cp -rp 2 /opt/qzz/ //保留权限将文件2复制到qzz中
13.硬链接
[root@localhost opt]# ln a qzz //给a创建硬链接qzz。当a删除时,qzz还在
[root@localhost opt]# ls
1 2 3 4 a b c d qzz
[root@localhost opt]# rm -rf a
[root@localhost opt]# ls
1 2 3 4 b c d qzz
[root@localhost opt]# ln -s b qq //给b创建软链接qq。当b删除时,qq查不到
[root@localhost opt]# ls
1 2 3 4 b c d qq qzz
[root@localhost opt]# rm -rf b
[root@localhost opt]# ls
1 2 3 4 c d qq qzz
14.环境变量
[root@localhost opt]# echo $PATH //查看所有环境变量
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
15.help的用法
[root@localhost opt]# cat --help // 查看某条命令如何使用
用法:cat [选项]... [文件]...
16.man的用法
localhost opt]# man cat //查看某条命令的详细信息
17.which is的用法
[root@localhost opt]# which is find(命令文件) //查看命令文件在哪里
18.find的用法
精确查找,实时遍历,支持多条件查找
[root@localhost opt]# find -name qzz //根据指定名称查找
./qzz
[root@localhost /]# find /opt/ -name *1 //查找以某个字符为结尾的文件
[root@localhost /]# find /opt/ -name 1* //查找以某个字符为开头的文件
[root@localhost opt]# find /opt/ -size -10k //查找指定大小的文件
19.cat [选项] 文件名
@localhost opt]# cat -n 111 //显示行号
[root@localhost opt]# cat -b 111 //空格行 不在编行号
[root@localhost opt]# cat -s 111 //把连续的空格行压缩成一个
20.rev的用法
[root@localhost opt]# rev 111 //每行以倒叙的方式展示
原样
倒叙后
21.less和more
more:从上往下看,自动退出
less:从下网上看(-q自动退出)
22.head
head 默认显示前十行(从头开始)
head-n 指定显示行数
23.tail的用法
[root@localhost opt]# tail -f 111 //动态的,从下往上显示最后一行 实时跟踪
24.wc的用法
eg:
[root@localhost opt]# wc 111
14 8 52 111 //显示各种信息:例如14:行数 8:有八行有数据 52:有52个字符 111:文件名
[root@localhost opt]# wc -l 111 //显示所有行数
14 111
[root@localhost opt]# wc -c 111 //显示所有字符的数量
52 111
ot@localhost opt]# wc -w 111 //显示有数据的行数的数量
8 111
25.grep的用法(过滤)
eg:grep 内容 文件名
[root@localhost opt]# grep a 111 //显示包含a的具体信息
[root@localhost opt]# grep -v aaaa 111 //取反,除了aaaa之外,别的都显示出来
[root@localhost opt]# grep -o a 111 // 显示包含a的具体数量
[root@localhost opt]# grep -r a 111 //递归查询,跟grep的查询方式不一样,数据差不多
[root@localhost opt]# grep -i a 111 //忽略大小写,展示包含A和a的所有
[root@localhost opt]# grep -n a 111 //找到含a的内容展现出来,并显示在哪一行
[root@localhost opt]# grep -w aaaa 111 //精确查找,必须要查找里面有的内容,查找一整个字符串
ocalhost opt]# grep "^a" 111 //查看以......开头的(grep"^字符")
[root@localhost opt]# grep "a$" 111 //查看以......结尾的(grep"字符$")
[root@localhost opt]# grep "^$" //查看空行
26.查看cpu
[root@localhost opt]# lscpu
27.查看内存
[root@localhost opt]# free
[root@localhost opt]# free -h //更直观的查看内存
28.查看整个机器架构
[root@localhost opt]# arch
x86_64
29.查看内核版本
[root@localhost opt]# uname -r
3.10.0-693.el7.x86_64
30.压缩和解压缩
[root@localhost opt]# gzip -q 文件名 //压缩,提高压缩比例,会把源文件覆盖
[root@localhost opt]# gzip -d 文件名 //解压缩
[root@localhost opt]# bzip2 -q 文件名 //压缩
[root@localhost opt]# bzip2 -d //解压缩
31.修改命令的名字
[root@localhost /]# alias aaa=ls //ls是查找的命令,将ls的功能赋予给aaa,现在aaa也是查找的命令
[root@localhost /]# unalias aaa //将aaa的临时功能删除
32.tar的用法
-c:创建(Create).tar 格式的包文件。
-C:解压时指定释放的目标文件夹。
-f:表示使用归档文件。
-p:打包时保留文件及目录的权限。
-P:打包时保留文件及目录的绝对路径。
-t:列表查看包内的文件。
-v:输出详细信息(Verbose)。
-x:解开.tar 格式的包文件。
-z:调用 gzip 程序进行压缩或解压。
-j:调用 bzip2 程序进行压缩或解压。
[root@localhost opt]# ls
123.txt aa bb cc dxl ky26 ky27 qzz yht
[root@localhost opt]# tar -zcvf cfs.tar.gz qzz yht 123.txt //创建一个以.gz结尾的压缩文件
qzz/
yht/
123.txt
[root@localhost opt]# ls
123.txt aa bb cc cfs.tar.gz dxl ky26 ky27 qzz yht
[root@localhost opt]# tar -zxvf cfs.tar.gz //解压缩一个以.gz结尾的压缩文件
qzz/
yht/
123.txt
[root@localhost opt]# ls
123.txt aa bb cc cfs.tar.gz dxl ky26 ky27 qzz yht
[root@localhost opt]# tar -tf cfs.tar.gz //查看压缩文件的内容
qzz/
yht/
123.txt
[root@localhost opt]# tar -jcvf cjm.tar.bz2 aa bb cc //创建一个以.bz2结尾的压缩文件
aa/
bb/
cc/
[root@localhost opt]# ls
123.txt aa bb cc cfs.tar.gz cjm.tar.bz2 dxl ky26 ky27 qzz yht
[root@localhost opt]# tar -tf cjm.tar.bz2 //查看压缩文件的内容
aa/
bb/
cc/
[root@localhost opt]# tar -jxvf cjm.tar.bz2 // //解压缩一个以.bz2结尾的压缩文件
33.vim
编辑模式:
a:在当前光标位置之后插入内容
i:在当前光标位置之前插入内容
o:在光标所在行之下插入一个新行内容
O:在光标所在行之上插入一个新行内容
A:在所在行的行尾插入内容
I:在所在行的行首插入内容
命令模式:
翻页移动 Page Down键或 Ctrl+F 向下翻动一整页内容
Page Up键或 Ctrl+B 向上翻动一整页内容
行内快速跳转 Home键或^键、数字 0键 跳转到本行的行首
End 键或$键 跳转到本行的行尾
行间快速跳转 1G 或 gg 转到文件内容的第 1 行
G 跳转到文件的最后一行
#G 跳转到文件中的第#行(其中“#”号用具体数字替换)
M 跳转至当前页的中间位置
底行模式:
显示行号 :set nu 在编辑器中显示行号
:set nonu 取消行号显示
删除 x或Delete键 删除光标处的单个字符
dd 删除当前光标所在行(有剪切功能)
#dd 删除从光标处开始的#行内容 -----#表示几行
d^ 删除当前光标之前到行首的所有字符
d$ 删除当前光标处到行尾的所有字符
dw 删除光标处的整个单词
替换字符 R 或 Shift+r 替换当前光标处字符
复制 yy 复制当前行整行的内容到剪贴板
#yy 复制从光标处开始的#行内容 ----#表示几行
粘贴 p 粘贴到光标所在行之下
P 粘贴到光标所在行之上
查找 /word 从当前光标处开始向后进行查找字符串“word”
?word 从当前光标处开始向前进行查找
n 定位下一个匹配的被查找字符串
N 定位上一个匹配的被查找字符串
撤销 u 按一次取消最近的一次操作;重复u键,恢复多步操作
U 用于取消对当前行所做的所有编辑
保存退出
:w 保存修改的内容
:w 新文件名 另存为其它文件
:q 直接退出,不保存,且新创的文件并不好保存
:q! 放弃对文件内容的修改并退出
ZZ或:wq、:x 保存当前的文件内容并退出vi编辑器
打开新文件 :e 其它文件名 打开新的文件进行编辑
读入文件内容 :r 其它文件名 在当前文件中读入其他文件内容
文件内容替换
:s /old/new 将当前行中查找到的第一个字符串“old” 串替换为“new”
:s /old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”
:#,# s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”
:% s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”
:s /old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认
eg:
:1,5 m 10 将1-5行的内容剪切粘贴到第10行下面
:1,5 co 10 将1-5行的内容复制粘贴到第10行下面
初学Linux,了解基本命令相关推荐
- linux 标准输出流管道,初学Linux之标准 I/O 和管道
初学Linux之标准 I/O 和管道 通常对于程序来讲,输入输出数据的可以是键盘.鼠标.显示器等设备.但是我们输入的是命令,本身并没有输入"显示"这类命令和要求,但是系统就自动的在 ...
- Linux简单基本命令
一.Linux权限的概念 Linux下有两种用户:普通用户和超级用户(). 普通用户:在linux下做有限的事情: 超级用户:可以在linux系统下做任何事情,不受限制. 普通用户的提示符是& ...
- 初学Linux很土鳖?带你认识Linux,如何安装Linux?
前言 日期:2020/05/06 心情:??? Description:怀着对Linux的好奇,今天终于开始学习Linux了.一直以来都是用微软的Windows进行操作,Windows也是当今最流行最 ...
- Linux常用基本命令详解(二)-------磁盘分区和磁盘管理类命令
Linux常用基本命令详解(一) Linux常用基本命令详解(二)-------磁盘分区和磁盘管理类命令 Linux常用基本命令详解(三) 1.磁盘分区 磁盘分区(系统分区)是使用分区编辑器(part ...
- 红帽Linux操作系统基本命令(学习笔记)
Redhat版本的Linux操作系统基本命令 前言 一.安装linux系统 二 .根文件系统目录详解 三.文件属性与权限 四.用户和用户组管理 五.重定向 六.vim 程序开发器 一般模式常用命令和参 ...
- 【Linux】linux常用基本命令
首页 博客 学院 CSDN学院 下载 论坛 APP CSDN 问答 商城 活动 VIP会员 招聘 ITeye GitChat GitChat 图文课 写博客 消息 评论关注点赞回答系统通知 登录注册 ...
- Linux的基本命令和目录解释
title : Linux的基本命令和目录解释 基本命令 查看文件 ll 管理员才能用的指令 ls 各个用户都能用, 参数: -a所有文件,包含隐藏文件 -l 详细信息 创建文件夹 mkdir 参数 ...
- Linux常用基本命令详解(一)
Linux常用基本命令详解(一) Linux常用基本命令详解(二)-------磁盘分区和磁盘管理类命令 Linux常用基本命令详解(三) 1.帮助命令 1.1.man命令 man[命令或配置文件] ...
- linux系统基本命令自我整理
linux系统基本命令整理 这是我自己在学习过程中整理的一些基础命令,希望可以帮助到你们 ls相关命令 ls 查看当前目录下的列表 ls -l 详细信息,后面如果加上文件名就是查询目录下文件 的详细信 ...
最新文章
- 乔布斯 1973 年求职申请表曝光,拍出 222400 美元高价!
- 3.1.4 如何使深度学习模型达到人类水平以及超高人类水平
- sqlite 日期格式与排序问题
- django 数据库中中文转化为汉语拼音
- UC/OS-II的学习
- JavaScript中的内置对象-8--4.date对象中-获取,设置日期时间的方法; 获取,设置年月日时分秒及星期的方法;...
- MinIO Server config.json (v18) 指南
- “新闻”频道“最新更新”有问题吗?
- docker镜像图[更新中]
- 禁止屏幕保护使用密码
- STM32用串口(USB串口)下载程序的方法
- 三年不重装:令电脑百毒不侵的13个妙招
- 谷歌多账号 桌面快捷方式
- android按返回键和Home键都进入后台
- java Lambda与stream
- CDR X7 限时3折618年中大促,是时候出手了!
- Android 11源码 Framework修改默认usb连接模式为MTP模式
- 万万没想到!电化学工作站操作如此简单
- NS2仿真中nam节点颜色设置(转)
- 企业信息化自主建设的三重保障
热门文章
- 在Docker中运行EOS(MAC版)
- sns.boxplot()简单用法
- 客户最佳实践 | All in企业微信,苏州吴中维多利亚美容医院让每位员工成为“美丽管家”!
- vue如何加搜狗联盟广告
- Python等级考试中的一道简单的血压数据处理题
- DEV03-GBase 8a MPP Cluster OLAP 函数
- RabbitMQ学习总结(六)之消息应答
- 程序设计【Week8】作业
- linux boot菜单列表,/boot/grub/menu.lst详解
- 上海:PUE大于1.7小老散旧数据中心关停并转