1.系统目录结构
菜鸟教程:Linux 系统目录结构 | 菜鸟教程 (runoob.com)
主要目录:
- /bin:bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。
- /boot:存放linux引导加载程序。
- /dev:dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,比如u盘路径。
- /etc:etc 是 Etcetera(等等) 的缩写,用来存放所有的系统管理所需要的配置文件和子目录。
- /root:管理员用户主目录。
- /home:用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。
- /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。
- /proc:proc 是 Processes(进程) 的缩写,存放内存里的文件。
- /lib:lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。可以理解为依赖。
- /tmp:tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
- /var:var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种log文件。
2.使用U盘
- 查看磁盘分区情况
fdisk -l
找到u盘设备路径,例如:/dev/sda。
-
挂载U盘
mkdir /mnt/usb //新建一个挂载点 mount /dev/sda /mnt/usb //挂载到挂载点 其中,`/dev/sdx`是U盘的设备名称,`/mnt/usb`是你创建的目标目录。 cd /mnt/usb //即可使用
- 卸载U盘
umount /mnt/usb //卸载挂载点即可
3.vi/vim
vi和vim区别,菜鸟教程是这么说的:
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。
但是目前我们使用比较多的是 vim 编辑器。
vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
Linux vi/vim | 菜鸟教程 (runoob.com)
命令
- i -- 切换到输入模式,在光标当前位置开始输入文本。
- x -- 删除当前光标所在处的字符。
- : -- 切换到底线命令模式,以在最底一行输入命令。
- a -- 进入插入模式,在光标下一个位置开始输入文本。
- o:在当前行的下方插入一个新行,并进入插入模式。
- O -- 在当前行的上方插入一个新行,并进入插入模式。
- dd -- 剪切当前行。
- yy -- 复制当前行。
- p(小写) -- 粘贴剪贴板内容到光标下方。
- P(大写)-- 粘贴剪贴板内容到光标上方。
- u -- 撤销上一次操作。
- Ctrl + r -- 重做上一次撤销的操作。
- /word:向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)
:w
:保存文件。:q
:退出 Vim 编辑器。:wq
:保存文件并退出 Vim 编辑器。:q!
:强制退出Vim编辑器,不保存修改。
4.shell
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。
格式
#!/bin/bash
代码
变量名规则
- 只包含字母、数字和下划线: 变量名可以包含字母(大小写敏感)、数字和下划线 _,不能包含其他特殊字符。
- 不能以数字开头: 变量名不能以数字开头,但可以包含数字。
- 避免使用 Shell 关键字: 不要使用Shell的关键字(例如 if、then、else、fi、for、while 等)作为变量名,以免引起混淆。
- 使用大写字母表示常量: 习惯上,常量的变量名通常使用大写字母,例如 PI=3.14。
- 避免使用特殊符号: 尽量避免在变量名中使用特殊符号,因为它们可能与 Shell 的语法产生冲突。
- 避免使用空格: 变量名中不应该包含空格,因为空格通常用于分隔命令和参数。
# 避免使用if作为变量名
if="some_value"
# 避免使用 $ 等特殊符号
variable_with_$=42
?var=123
user*name=runoob
# 避免空格
variable with space="value"
参数
运算
除了乘法要用转义符,其他都是一致的
比大小
文件测试
执行命令
``这个符号在数字键1的左侧,与单引号很类似。但是其功能与单引号双引号都有不同。在该符号中的命令会被执行。
[root@localhost ~]:~$ d=`date`
[root@localhost ~]:~$ echo $d
Wed Dec 28 06:31:13 PST 2016
如果不想使用这个符号,可以用$()
替换
[root@localhost ~]:~$ e=$(date)
[root@localhost ~]:~$ echo $e
Wed Dec 28 06:31:48 PST 2016