说明
基于Cent OS
6.5安装参考
https://jingyan.baidu.com/article/ca2d939dd1dabbeb6c31ce24.html
7.0安装参考
https://jingyan.baidu.com/article/0964eca26fc3b38284f53642.html
设置
1.在当前窗口打开文件夹:computer
-edit
-preferences
-behavior
-always open in browers windows
勾上
知识点
1.SHELL
分为GUI
(Graphical User Interface)和CLI
(Command Line Interface)
2.文件名
大小写敏感、最多字符不超过255、除了/都是有效字符、以.开头为隐藏文件
3.启动相关的文件都保存在/boot/
当中
4.根目录下文件
bin 二进制可执行文件(所有用户都可执行,而sbin则为超级用户才可执行)
boot 操作系统引导的东西都在这里(例如内核)
dev 所有硬件设备
etc 配置文件
lib 库文件
mnt 挂载目录(挂载U盘、光盘等,也可能挂载在media目录)
proc 实时信息
usr 默认装用户软件(大型软件默认装opt里)
var 经常变化的东西(例如log)
root root用户(一般打叉,说明没权限看)
5.按一下tab
键补全,两下tab键出现补全提示
6.linux下用户拥有三种权限
r 读取(可以打开文件)
w 写入(可以修改文件)
x 执行(可以运行文件)
基于UGO
模型(user、group、other),对于每个都是以rwx
顺序表示一个文件权限,例如输入ls -l
显示详细信息看到一个文件:drwxr-xr-- 2 root root 4096 Oct 1 13:50 linuxcast
,则前面d
代表文件类型为文件夹,rwxr-xr--
表示该文件所属用户三种权限都有,所属组只有r
、x
权限,其他只有r
权限,2
为链接数量,第一个root
表示文件所属用户,第二个root
表示所属组,4096
为文件大小,Oct 1 13:50
为时间,linuxcast
为文件名
7.重定向
数据流中包括标准输入(0)、标准输出(1)、标准错误(2),命令后面加> 文件名
,则将标准输出内容(不含标准输入和标准错误内容)保存到该文件里(例如:ls -l > aaa
,则将目录下详细信息保存到aaa中) ,但>为覆盖模式,如果再次保存新的内容,则原来的则消失,要追加内容则用>>
;如果要保存标准错误则用2>
(覆盖);如果报错和标准输出都想保存则2>&1
;如果用<
表示将某个内容标准输入给某个文件(例如:grep linux < /etc/passwd
,表示在该路径下查找包含linux的关键字的行)
更多输入输出重定向参考:https://blog.csdn.net/zhaobeibei123/article/details/76602202
8.管道
将前一个命令的标准输出作为后一个命令的标准输入,用|隔开(例如:ls -l | grep linux
,则为将当前目录详细信息输出,从这些信息中查找含有linux关键字的文件)
9.通配符
* 匹配N个字符(例如在当前文件夹列出所有D开头的文件的内容:ls D*)
? 匹配一个字符
[0-9] 匹配一个数字范围
[abc] 匹配列表任何字符
[^abc] 匹配列表以外字符
要注意的是^
在[]
的里面和外面是不一样的,在里面是不要这些字符,在外面是代表定位在行首
10.引号
(1)单引号:单引号括起来的字符都当作普通字符
(2)双引号:除$
、反双引号
、\
以外的都当作普通字符,举例:
dawson@dawson-PC:~/Desktop$ a=10
dawson@dawson-PC:~/Desktop$ echo $a
10
dawson@dawson-PC:~/Desktop$ echo "$a"
10 #""里$会转义
dawson@dawson-PC:~/Desktop$ echo '$a'
$a #''里都是普通字符
(3)倒引号:这个用来包命令的,会执行该命令,举例:
dawson@dawson-PC:~/Desktop$ echo pwd is `pwd`
pwd is /home/dawson/Desktop #``包着的命令被执行
11.环境变量
(1)$HOME
:用户主目录的全路径名,举例:
dawson@dawson-PC:~/Desktop$ echo $HOME
/home/dawson
(2)$PATH
:shell中命令存放的目录列表,举例:
dawson@dawson-PC:~/Desktop$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
注:
如果加路径的话可以:PATH="$PATH":路径
,举例:
PATH="$PATH":/root
(3)$PS1(数字1)
:shell主提示符,就是每行命令引号前面的那个,举例:
dawson@dawson-PC:~/Desktop$ echo $PS1
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$
(4)$LOGNAME
:注册名,举例:
dawson@dawson-PC:~/Desktop$ echo $LOGNAME
dawson
(6)$MAIL
:系统信箱的路径
(7)$PWD
:当前工作目录路径,举例:
dawson@dawson-PC:~/Desktop$ echo $PWD
/home/dawson/Desktop
(8)$SHELL
:当前使用的shell,举例:
dawson@dawson-PC:~/Desktop$ echo $SHELL
/bin/bash #这里用的是bash
(9)$TERM
:终端类型,举例:
dawson@dawson-PC:~/Desktop$ echo $TERM
xterm-256color
12.遇到-
开头的文件名
因为基本指令形式是:命令 -参数 文件
,所以如果遇到-
开头的文件名时就可能会导致误判命令,比如有个文件为-a
,那么如果想看a目录下的信息输入:ls -a
,则会被当成查看当前目录下所有文件的指令来处理,所以这个时候有两种方法避免,第一种,使用相对路径名,比如:ls ./-a
,第二种是在前面加--
,比如:ls -- -a
13.反单引号
不管在指令中还是shell脚本中,都会优先执行这里面的内容,比如:echo `ls`
,则会先执行ls
,然后把结果用echo
输出
14.env
列出当前shell环境下所有环境变量及其内容
15.常用快捷键
ctrl+c 终止
ctrl+d 关闭shell
ctrl+m 就是回车
ctrl+s 暂停屏幕输出
ctrl+q 恢复屏幕输出
ctrl+u 删除整行命令
ctrl+z 暂停目前的命令
ctrl+r 查找前面你打过的代码
16.预定义的特殊变量
$#
:表示命令行上参数的个数,不包含shell脚本文件名
$?
:表示上一条命令执行后的返回值,执行成功返回0,失败则返回非0值
$$
:表示当前进程的进程号
$!
:表示上一个后台命令对应的进程号
$-
:是由当前shell设置的执行标志名组成的字符串
$*
:表示命令行中实际给出的所有实参字符串
$@
:与$*
基本一样,但$*
相当于将获取的所有参数放在一个字符串里,而$@
是将所有参数放在不同的单独字符串里
网友评论