shell可以看作一个命令解释器,为我们提供了交互式的文本控制台界面。我们可以通过终端控制台来输入命令,由shell进行解释并最终交给内核执行。shell可以说是连接外部应用和内核的桥梁。
系统模式 bash shell 及bash。
命令行-l:表示将信息按行分。
man获得帮助信息
manual的缩写
基本语法:man 【命令或配置文件】
对于内置命令可以在man后加-f
f或空格:向下翻页。
b:向上翻页。
help命令
一部分基础功能的系统命令是直接内嵌在shell内的,系统加载启动后,会随着shell一起加载,常驻系统内存中。这部分命令被称为内置命令(cd、exit。都是写在bash里的);其他命令就成为外部命令。可以用type判断命令种类。
基本语法: help 【命令】
help只能查看shell内置命令的信息,而且纯英文。但是外置命令可以用 命令 --help来显示帮助信息。
常用快捷键
ctrl c ,停止进程。
ctrl l 清屏,相当于clear。
reset ,把当前的页面彻底清理,本质是把当前的shell重新启动。
善于tab键,重要的是防止敲错
上下键查找敲过的命令
文件目录类
1.pwd:print working directory 打印工作目录
pwd:显示当前工作目录的绝对路径
..:表示当前的上级菜单。可以用来移动到相对路径。(.:表示当前目录。以.开头的文件为隐藏文件)
-:回到上次所在的层。
su【用户名】:切换用户。
2.cd:change directory 切换路径
cd 参数:切换目录
3.ls:list 列出目录内容
ls 【选项】【 目录或是文件】:-a(a=all,全部文件夹,连同隐藏)或者-l(l=long,长数据串列出,包含文件的属性与权限等数据,等价于ll)
-i:可以看编号
4.mkdir:make directory 创建文件夹
mkdir 【文件夹名/绝对路径/相对路径】
-p:表示可以自动补全需要创建的父目录。
5.rmdir:删除文件夹(非空无法直接删除)
"创建或删除文件夹时可以加上-p参数,就可以直接指定深层文件夹"
6.touch:创建空文件
touch【文件名称】
vim【文件名称】(没内容的话,创建会失败)
(linux中不带后缀名默认文本文件)
7.cp:复制文件或目录
cp【选项】source dest 复制文件到dest下/也可以覆盖文件
cp前加 \ 可以取消询问覆盖请求(用alias可以看一些别名的命令)
选项:-r可以递归复制整个文件夹
8.rm:删除文件或目录
rm【选项】deleteFile 递归删除目录中所有内容
选项:-f:强制删除
-r:递归删除整个文件夹(-rf可以搭配,强制删除所有)
9.mv:移动文件与目录或重命名
10.cat:查看文件内容(catch)
cat【选项】要查看的文件名
选项:-n:显示所有行的行号,包括空行。
11.more:文件内容分屏查看器
more指令是一个基于vi编辑器的文本过滤器,它以全屏的方式按页显示文本文件的内容。more指令中内置了若干的快捷键。
more 【要查看的文件】
操作说明:
空格:向下翻页
回车:下一行
f/b:下一页/上一页
=:显示现在所在的行号
:f:显示文件以及所在的行号
q:直接退出
12.less:分屏显示文件内容
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高效率。(more里的操作也能用)
less【要查看的文件】
操作说明:
空格:下一页
pageup:上一页
pagedown:下一页
/字符串:向下搜寻【字串】的功能,n:向下查找,N:向上查找
?字串:向上搜寻【字串】的功能,n:向上查找,N:向下查找
G:结尾
g:开头
13.echo
echo输出内容到控制台
echo【选项】【输出内容】
选项:-e:支持反斜线控制的字符转换
\\:输出\本身
\n:换行符
\t:制表符,也就是tab键
14.head:显示文件头部内容
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。
基本语法:
head【文件】 (查看文件头10行内容)
head -n 5 【文件】 (查看文件头5行内容,5可以是任意数字)
选项:
-n<行数>:指定显示头部内容的行数
15.tail:输出文件尾部内容
tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10行内容
基本语法:
tail【文件】:查看文件尾部10行内容
tail -n 【数字】 【文件】:查看文件尾部【数字】行内容
tail -f 【文件】:实时追踪该文档的所有更新(ctrl+s可以暂停变化,ctrl+q继续)
16.>输出重定向和 >>追加
基本语法:
ls -l > 文件 (列表的内容写入文件a.txt中(覆盖写))
ls -al >> 文件 (列表的内容追加到文件aa.txt的末尾)
cat 文件1 > 文件2 (将文件1的内容覆盖到文件2)
echo“内容” >> 文件
17.ln:软链接(link)
软链接也称为符号链接,类似于windows里的快捷方式,有自己的数据块,主要存放了链接其他文件的路径。
ln -s 【原文件或目录】【软链接名】:给原文件创建一个软链接,并且存储到当前位置。想要在指定位置的话,输入路径到链接名之前。不加-s就是硬链接,可以多指一,并且删除不会相互影响
经验技巧:
删除软链接:rm -rf 软链接名,而不是rm -rf 软链接名/
如果使用rm -rf 软链接名/删除,会把软链接对应的真实目录下内容删掉
查询:通过ll就可以查看,列表属性第一位是l,尾部会有位置指向
-P:可以看到软链接指向的文件的路径
18.history:查看已经执行过历史命令
history【数字】:查看已经执行过历史命令,可以指定【数字】条
可以通过!行号来看指定行号的命令