1、Linux命令的基础
Linux当中一切皆是文件。设备是文件,目录是文件,后缀名没有意义
Shell程序
1、Linux系统中运行的一种特殊程序
2、在用户和内核之间充当“翻译官”
3、用户登录Linux系统时,自动加载一个Shell程序
4、Bash是Linux系统中默认使用的Shell程序
5、文件位于/bin/bash
Shell作用:“翻译官”用户和内核之间,把人类语言翻译成计算机能够识别的语言,再把计算机的处理结果翻译成人类能够识别的语言,反馈给用户。
Linux命令
内部命令和外部命令:
内部命令就是一些简单的命令,功能简单,他是包含在加载的shell程序当中。开机自启,执行速度快。
例如:cd pwd。
外部命令:实用功能比较强大的命令,如果预加载在shell当中,会降低系统的启动速度,所有是用户使用的时候才会被加载。
以及用户额外安装的一些命令,都是外部命令。
例如: vim。
2、Linux系统的基础操作
1、自动补齐,tab 快捷键一定要会用。
2、\ :换行
3、ctrl + u :清空至行首。
4、ctrl + k :清空至行尾。
5、ctrl + l :清屏 clear都是清屏。
6、ctrl + c :取消本次命令编辑。 取消本次的操作,退出当前命令(有可能在后台继续运行)。
7、ctrl + z :跳出当前命令并终止程序。
8、ctrl + a :切换到行首。
命令行的格式:
命令字 | [选项] | [参数] |
操作 | 功能 | 操作对象 |
命令字:整个命令中最关键的部分
唯一确定一条命令
选项:短格式选项:使用“-”符号引导
长格式选项:使用“--”符号引导
参数:类型 文件 目录 用户名
参数可以没有,也可以是一个,也可以是多个
获得命令帮助的方法
内部命令: - - help ,简单说明文件,命令+--help
外部命令:man,详细的说明文件,man+命令
使用man查询帮助,可以使用/查询的东西,按n往下翻,按N往上翻
Linux基础命令
pwd :查看当前位置(目录)
用户命令界面信息
[root@localhost ~]#
root:当前登录的用户名
localhost:表示主机名
~:表示当前所在的目录
#:管理员
$:普通用户
Linux系统的一切都是从/根目录开始的,由此可以延伸出绝对路径和相对路径
绝对路径和相对路径
绝对路径:一切以/开始表示绝对路径,表示从根开始的下一级
相对路径:没有/的标识相对路径
cd命令
cd命令:切换目录和路径。
切换到当前目录下的目录,可以用相对路径,但切换到非当前路径,需要使用绝对路径。写文档时,一定要用绝对路径,保证准确性。
cd ~ 切换到当前用户的家目录
cd / 切换到根目录
cd - 切换到上一次执行的目录
cd ..切换到上一层目录
cd . 当前目录(不动)
3、Linux常见命令
ls命令
ls命令:简略展示当前目录的内容
-a:展示所有,包含隐藏的文件和目录(隐藏文件或者目录文件名 格式.文件目或者目录文件)
-l:长格式显示文件和目录的列表。列表就是展示文件和目录的详细信息。
-i:显示文件或者目录inode号,索引号,文件名方便理解,计算机根据inode号来处理文件的,每个文件或者目录的inode都是唯一的系统自动分配。
inode号是有范围的,如果inode号使用完了,硬盘还有空间,也不能创建文件或者目录。
-h:人性化显示目标或者文件的大小,默认单位是字节。
-R:递归,显示当前目标或子目录里面所有内容。
-t:以时间排序,最新修改的文件会排在上面。
使用ls -lhi 为例
[root@localhost opt]# ls -lhi
总用量 4.0K
33625089 -rw-r--r--. 1 root root 4 5月 17 04:54 456
36380508 drwxr-xr-x. 2 root root 6 10月 31 2018 rh
33625089:iNode号
-rw-r--r--
开头位置是“-”,代表普通文件;“d”代表文件的类型是一个目录;“l”代表软连接文件,快捷方式
rw-r--r-- :表示权限,r读,w写,x执行,-代表没这个权限。每三位一分看
第一段rw-:所有者的权限
第二段r--:所在组的权限
第三段r--:其他用户的权限
1:数字:对于目录来说,表示有几个子目录;
对于文件来说,表示有几个硬连接数
第一个root对应位置:文件的所有者
第二个root对应位置:文件的所在组
4:表示文件或者目录的大小,默认单位是字节
5月 17 04:54 最后一次的修改时间
456:表示文件名或目录名,例如:.456 此处首位是"."表示隐藏 .456
软连接硬连接
硬连接:只能对普通文件(权限-开头)创建硬连接,不能对目录创建。硬连接文件他们的iNode号相同,这两个文件就是同一个文件。
互为硬连接的文件删除其中任何一个,对文件本身不会有影响。更新其中一个文件的内容,另外一个也会同步更新。
ln命令
格式:ln 123 456 在文件123中创建硬连接文件名为456
作用:防止误删文件。
软连接:相对于快捷方式
ln -s 创建软连接
格式:ln -s 456 789 创建456的快捷方式789
作用:相当于为文件创建了一个方式,两个的inode号不同,是两个文件,删除快捷方式没有影响,删除本体软连接就会失效。
创建软连接要使用绝对路径。
通配符
通配符可以匹配文件名和目录名。不能匹配文件内容。
符号:
? 匹配任意单个字符
* 任意字符,无论字符多长都可以
{0…9} 配置0到9; [0-9] 匹配0-9
{a…z} 配置a到z; [a-z] 匹配a-z
{A…Z} 配置A到Z; [A-Z] 匹配A-Z
[123] 匹配1,2,3,单个字符。
{ .. }配置可以配置10以上的数字
[ ]匹配只能识别字母和单个字符,不能识别10以上的数字
[ ]范围匹配字母是可匹配小写和大写字母,先小后大
[^d] 取反,匹配除d之外其他符合条件的字母和单个字符
常见命令:
mkdir命令
mkdir命令:创建目录,可以同时创建多个,文件和目录名都是唯一的。在相同目录下不能存在相同的文件和目录名。
例如:在opt目录下创建123目录
mkdir 123
[root@localhost opt]# mkdir 123
[root@localhost opt]# ls
123 456 a rh
-p:创建递归或者级联目录
例如:在opt目录下 创建递归目录 a/b/c
mkdir -p a/b/c
[root@localhost opt]# mkdir -p a/b/c
[root@localhost opt]# ls
456 a rh
[root@localhost opt]# cd a
[root@localhost a]# ls
b
[root@localhost a]# cd b
[root@localhost b]# ls
c
[root@localhost b]#
touch命令
touch命令:创建文件,可以同时创建多个文件,如果文件名重复,不会提示,也不会刷新文件内容。只改变最后编辑时间。
例如:在opt目录下创建1.txt文件
touch 1.txt
[root@localhost opt]# touch 1.txt
[root@localhost opt]# ls
1.txt 456 a rh
例如:在opt目录下 创建多个文件
touch {1..6}.txt,文件名重复,不会提示,也不会刷新文件内容
[root@localhost opt]# touch {1..6}.txt
[root@localhost opt]# ls
1.txt 2.txt 3.txt 456 4.txt 5.txt 6.txt a rh
cp命令
cp命令:复制文件复制目录
-r:复制目录
-p:保留源文件的权限进行复制。
-a:完整保留所有权限,包括连接文件的信息,也可以复制目录
cp -rp 与cp -a效果一样
mv命令
mv命令:剪切 修改文件或者目录名
-f:无提醒,强制剪切或者重命名
mv file1 file2
当file2为目录时,把file1剪切到file2目录下;
当file1和file2为文件时,相当与将file1内容覆盖到file2,文件名不变;
当file2是不存在的文件/目录时,相当于对file1文件/目录重命名;
rm命令
rm命令:删除
-r:递归删除所有
-f:无提醒的,强制删除
再用删除时,rm -rf* 删除全部,小心使用,小则一年白干,大则铁窗泪。