Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
目录
前言
生活中流行着两种操作系统,Windows和Mac,但是对于一个企业来说,具有良好的工作环境,并且安全高效的去操作执行,还是首选Linux系统!
一、什么是基础命令
基于Linux系统,对其进行操作,发出指令让系统执行的一些简单的代码
二、简单的入门命令
1.查询当前目录的全路径
命令:pwd
代码如下(示例):
[root@localhost opt]# pwd
/opt
2.快捷键
- ctrl+l 清屏(内容并不会删除,原先操作依然存在)
- ctrl+k 清空至行尾 (可用于删除前半段或后半段长代码)
- ctrl+u 清空至行首
- ctrl+a 切换到行首
- ctrl+e 切换到行尾
- ctrl+c 中止应用程序,取消本次命令的编辑
3.切换目录
命令:cd
代码如下(示例):
[root@localhost ~]# cd /
[root@localhost /]#
此步骤是回到根目录,/ 代表根目录,~ 代表当前用户的家目录
代码如下(示例):
[root@localhost ~]# cd /opt/
[root@localhost opt]#
这一步则是前往根目录下的设备文件 opt ,这里的/ /是绝对路径,如果只输入opt只能前往该目录下的opt目录。
4.展示当前目录下所有的文件目录
命令:ls
代码如下(示例):
[root@localhost /]# ls
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
此时在根目录下的所有文件目录都会列举出来
接下来是ls的其他拓展命令
ls -l 展示当前目录所有文件的详细信息
ls -la 展示当前目录所有隐藏和非隐藏的文件目录和详细信息
ls -lah 人性化的展示当前目录所有隐藏和非隐藏的文件目录和详细信息
ls -R 递归式的展示当前目录的所有文件目录(子文件目录也会展示出来)
ls -i 显示当前目录下所有文件目录的iNode号
备注:指令要严格区分大小写
[root@localhost /]# ls -l
total 28
lrwxrwxrwx. 1 root root 7 Aug 12 2018 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 Apr 2 21:32 boot
drwxr-xr-x. 19 root root 3280 Apr 2 21:32 dev
drwxr-xr-x. 145 root root 8192 Apr 3 23:49 etc
drwxr-xr-x. 3 root root 17 Apr 2 21:31 home
lrwxrwxrwx. 1 root root 7 Aug 12 2018 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Aug 12 2018 lib64 -> usr/lib64
drwxr-xr-x. 2 root root 6 Aug 12 2018 media
drwxr-xr-x. 3 root root 18 Apr 2 21:27 mnt
drwxr-xr-x. 2 root root 6 Aug 12 2018 opt
dr-xr-xr-x. 337 root root 0 Apr 2 21:32 proc
dr-xr-x---. 14 root root 4096 Apr 2 21:33 root
drwxr-xr-x. 44 root root 1280 Apr 3 23:49 run
lrwxrwxrwx. 1 root root 8 Aug 12 2018 sbin -> usr/sbin
drwxr-xr-x. 2 root root 6 Aug 12 2018 srv
dr-xr-xr-x. 13 root root 0 Apr 2 21:32 sys
drwxrwxrwt. 19 root root 4096 Apr 4 00:17 tmp
drwxr-xr-x. 12 root root 144 Apr 2 21:25 usr
drwxr-xr-x. 22 root root 4096 Apr 2 21:32 var
[root@localhost /]# ls -la
total 28
dr-xr-xr-x. 17 root root 224 Apr 2 21:25 .
dr-xr-xr-x. 17 root root 224 Apr 2 21:25 ..
lrwxrwxrwx. 1 root root 7 Aug 12 2018 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 Apr 2 21:32 boot
drwxr-xr-x. 19 root root 3280 Apr 2 21:32 dev
drwxr-xr-x. 145 root root 8192 Apr 3 23:49 etc
drwxr-xr-x. 3 root root 17 Apr 2 21:31 home
lrwxrwxrwx. 1 root root 7 Aug 12 2018 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Aug 12 2018 lib64 -> usr/lib64
drwxr-xr-x. 2 root root 6 Aug 12 2018 media
drwxr-xr-x. 3 root root 18 Apr 2 21:27 mnt
drwxr-xr-x. 2 root root 6 Aug 12 2018 opt
dr-xr-xr-x. 337 root root 0 Apr 2 21:32 proc
dr-xr-x---. 14 root root 4096 Apr 2 21:33 root
drwxr-xr-x. 44 root root 1280 Apr 3 23:49 run
lrwxrwxrwx. 1 root root 8 Aug 12 2018 sbin -> usr/sbin
drwxr-xr-x. 2 root root 6 Aug 12 2018 srv
dr-xr-xr-x. 13 root root 0 Apr 2 21:32 sys
drwxrwxrwt. 19 root root 4096 Apr 4 00:17 tmp
drwxr-xr-x. 12 root root 144 Apr 2 21:25 usr
drwxr-xr-x. 22 root root 4096 Apr 2 21:32 var
[root@localhost /]# ls -lah
total 28K
dr-xr-xr-x. 17 root root 224 Apr 2 21:25 .
dr-xr-xr-x. 17 root root 224 Apr 2 21:25 ..
lrwxrwxrwx. 1 root root 7 Aug 12 2018 bin -> usr/bin
dr-xr-xr-x. 5 root root 4.0K Apr 2 21:32 boot
drwxr-xr-x. 19 root root 3.3K Apr 2 21:32 dev
drwxr-xr-x. 145 root root 8.0K Apr 3 23:49 etc
drwxr-xr-x. 3 root root 17 Apr 2 21:31 home
lrwxrwxrwx. 1 root root 7 Aug 12 2018 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Aug 12 2018 lib64 -> usr/lib64
drwxr-xr-x. 2 root root 6 Aug 12 2018 media
drwxr-xr-x. 3 root root 18 Apr 2 21:27 mnt
drwxr-xr-x. 2 root root 6 Aug 12 2018 opt
dr-xr-xr-x. 337 root root 0 Apr 2 21:32 proc
dr-xr-x---. 14 root root 4.0K Apr 2 21:33 root
drwxr-xr-x. 44 root root 1.3K Apr 3 23:49 run
lrwxrwxrwx. 1 root root 8 Aug 12 2018 sbin -> usr/sbin
drwxr-xr-x. 2 root root 6 Aug 12 2018 srv
dr-xr-xr-x. 13 root root 0 Apr 2 21:32 sys
drwxrwxrwt. 19 root root 4.0K Apr 4 00:17 tmp
drwxr-xr-x. 12 root root 144 Apr 2 21:25 usr
drwxr-xr-x. 22 root root 4.0K Apr 2 21:32 var
[root@localhost opt]# ls -R
.:
aa bb
./aa:
./bb:
cc
./bb/cc:
[root@localhost opt]# ls -i
1840031 aa 33570593 bb
5.创建目录和文件
命令:mkdir 命令:touch
代码如下(示例):
[root@localhost opt]# mkdir aa bb cc
[root@localhost opt]# ls
aa bb cc
可创建单个或多个目录,后面多个要用空格隔开
接下来是mkdir的拓展命令
mkdir -p 递归式的创建目录(可在目录下创建子目录)
代码如下(示例):
[root@localhost opt]# mkdir -p AA/bb/cc
[root@localhost opt]# ls -R
.:
aa AA bb cc
./aa:
./AA:
bb
./AA/bb:
cc
./AA/bb/cc:
./bb:
cc
./bb/cc:
./cc:
此时用ls -R来检查一遍,发现创建的目录和子目录都已经成功(指令要严格区分大小写)
接下来是touch命令,创建文件
touch拓展命令:
touch {a..z}文件名 范围性创建文件(大括号代表文件名前缀)可进行多个创建
二次创建重复的文件名的文件系统并不会提醒命名重复,而是直接覆盖
但文件内容并不会被覆盖掉
代码如下(示例):
[root@localhost opt]# touch {1..5}DDD
[root@localhost opt]# ls
1DDD 2DDD 3DDD 4DDD 5DDD
此时我们用ls查看目录下所有文件目录时,已经看到创建成功
记住大括号内的如果是字母一定区分大小写
指令和后面选项参数之间必须要有空格隔开
6.复制
命令:cp 命令格式:cp 被复制的文件名 目录名 (这里目录必须提前存在)
拓展命令:
cp -p 保存被复制文件的所有权限
cp -r 复制目录包括目录下的子目录
cp -a 复制目录下的所有子目录和文件,并保存源文件目录的所有权限,包括连接文件
代码如下(示例):
[root@localhost opt]# cp 1DDD aa
[root@localhost opt]# ls -R
.:
1DDD 2DDD 3DDD 4DDD 5DDD aa AA bb cc
./aa:
1DDD
./AA:
bb
./AA/bb:
cc
./AA/bb/cc:
./bb:
cc
./bb/cc:
./cc:
我们此时用ls -R查看,发现aa目录里也复制出了1DDD文件
cp复制的一定是文件,目录复制则需要用cp -r
代码如下(示例):
[root@localhost opt]# cp -r aa AA
[root@localhost opt]# ls -R
.:
1DDD 2DDD 3DDD 4DDD 5DDD aa AA bb cc
./aa:
1DDD
./AA:
aa bb
./AA/aa:
1DDD
./AA/bb:
cc
./AA/bb/cc:
./bb:
cc
./bb/cc:
./cc:
此时我们看到AA目录里,已经复制过去了aa目录和1DDD子文件
总结
Linux并没有什么桌面和统一管理的文件夹去点击和拖拽,全部操作都需要用命令去完成,但理解原理之后,会发现只是用代码命令去替代了鼠标,目录和子目录的关系就像Windows的文件夹一样,熟悉了之后一定会得心应手。