使用的Linux版本是ubantu
Linux的主流界面:Cnome(当前使用),KDE,Unity,XFCE
TTY:控制器终端 tty1 —> 图形界面(ctrl+alt+f1)
命令行提示符:
“~”:当前所在目录的名字,会随着用户进入不同目录而改变。~表示当前用户的家目录。
“$”:表示普通用户。 “#”:表示超级用户。(sudo su 进入/exit 退出)
参数:
短参数:用一个短横线隔开,多个短参数可以合并用一个短横线 -
长参数:用两个短横线隔开,多个长参数不能合用两个短横线 -- (长短参数可以混用)
补全命令:Tab键 补全文件名,路径名:按两次Tab键
linux只有一个根目录:/(最高一层的目录)
在windows中,用\来表示目录的层级与包含关系,而在Linux中,用/来表示目录的层级与包含关系
在Linux中一切皆文件!
Linux的根目录的直属子目录:
bin(binary):表示二进制文件,包含了会被用户使用的可执行程序。
boot:包含于Linux启动密切相关的文件。
etc:包含系统的配置文件
home:用户的私人目录,如果用户名为CIA,则我的私人目录为/home/CIA
lib:包含被程序所调用的库文件。Linux下是以.so结尾的文件,window下这样的库文件是以.dll结尾的
media:媒体文件
mnt:用于临时挂载一些装置
opt:用于安装多数第三方软件和插件
root:超级用户root的家目录/主目录
sbin:表示系统二进制文件,包含的是系统级的重要可执行程序
srv:包含一些网络服务启动之后需要取用的数据
tem:普通用户和程序存放临时文件的地方
usr:最庞大的目录之一,类似windows中C:\windows和C:\Program Files这两个文件夹的集合,里面安装了大部分用户要调用的程序
var:包含程序的数据,比如log日志文件
pwd命令:显示当前目录的路径(Linux的命令,就是一个我们随时可以调用的程序罢了)如:pwd就是一个在bin文件下面的可执行程序,可以用which名称查看
ls命令:列出文件和目录。
颜色标注:蓝色—>目录 绿色—>可执行文件 红色—>压缩文件 浅蓝色—>连接文件 灰色—>其他文件
ls -a:显示所有文件和目录,包括隐藏文件。(隐藏文件以“。”开头都是隐藏文件) “。”表示当前目录 “。。”表示上一级目录
ls -l:详细列表 列出文件的详细信息 total XXX 表示当前目录所有文件的总大小是多少字节数
ls -h:适合人类阅读的详细信息
ls -t:按照文件或目录最近一次修改时间的降序排列
ls -i:显示文件的inode(内存地址)
cd命令:切换目录
cd.:也表示进入当前目录
cd..:回到上级目录
cd../..:连续退后两个层级
相对路径和绝对路径:
绝对路径以 / 开头,/ 表示根目录 例:cd /user/games
相对路径就是从当前的目录开始
~ 表示家目录 或直接cd 就能回到家目录 可以用tab补全目录
du命令:显示目录包含的文件大小(disk usage 磁盘占用)
du -h:适合人类阅读的详细信息
du -a:显示目录和文件的大小(更详细)
du -s:只显示当前目录的总大小
cat命令和less命令:显示文件内容
syslog是当下电脑里发送的几乎所有事情的日志
cat命令:
可以一次性在终端显示文件的所有内容,但是只适合处理小文件
-n :显示行号
less命令:(还有more命令,但是比较老)
分页显示文件内容。
空格:读取下一页 回车:读取下一行 d键:前进半页 b键:后退一页 y键:后退一行 u键:后退半页 q:终止命令 =号:显示文件位置 /:进入搜索模式(n下一个结果,N上一个结果)
head命令tail命令:
显示文件头/后10行(可以添加参数如:-n 5 显示前/后5行)
tail -f 检查文件是否有追加内容,如果有就显示新增内容。Ctrl+c终止
touch命令:
创建一个新的空白文件,但是设计初衷是用来修改时间戳
mkdir命令:
1.直接创建一个新的目录
2.使用 -p 参数来递归创建目录结构 mkdir -p one/two/three
cp命令:
1.复制文件或目录。例:cp new1(被复制的文件) new2(副本命名)
2.复制文件到另一个目录。只需把第二个参数换成目录名即可 例:cp file1 folder/新名字 folder/ 表示路径
3.递归复制一个目录,需要添加参数 -r(recursive)
4.使用正则表达式 如:通配符 * cp *.txt folder ——> 将当前目录下的所有txt文件拷贝到folder目录下
mv命令:
1.移动文件或目录。移动目录不需要加参数
2.修改文件或目录的名字。
rm命令:(这个命令慎用)
删除文件或目录,但是很难恢复,删除多个中间用空格隔开
-i:向用户确认是否删除 -f:强制删除 -r:递归删除目录
sudu rm -rf --no-preserve-root /取消保护,删库跑路
ln命令:(link)
在文件之间创建链接(快捷方式)
链接类型:物理链接(硬链接)/ 符号链接(软链接)
Linux的文件存储分为两部分:
文件名和文件内容(文件名和文件内容时分开存放的,方便管理)每个文件的文件内容被分配到一个标示号码,即inode,因此每个文件名都绑定到它的文件内容。
创建硬链接:
两个不同的文件名共享同一个文件内容,指向同一个inode。创建方法:ln file1 file2 主要用于创建文件,创建目录比较复杂
只有两个文件都被删除才能删除对应的inode
创建软链接:
ln -s 要加上-s 参数,硬链接则不用
链接文件直接指向原文件名,类似快捷方式,inode号不一样了,文件内容不一样了,软链接可以指向目录,删除源文件会影响链接文件
Linux的用户和权限:
添加新用户:adduser XXX(必须要在root身份下才能添加) deluser XXX(删除用户,但不删家目录) deluser --remove-home XXX 把用户家目录也删了
不指定群主则默认群组为用户的名字
添加群组;addgroup XXX usermod:修改用户账户 -g 修改用户所在群组 -G修改多个用户所在群组(用户名用逗号隔开) -a:不删除用户原有的群组,追加到新的群组
group命令:查看用户对应的群组 delgroup命令:删除群组
chown命令:改变文件的所有者(需要root才能执行) 例:chown 用户 文件名 chown -R XXX:XXX 文件名:递归设置子文件和子目录的所有者
chgrp命令:改变文件的群组 例:chgrp:charp 用户 文件名
访问权限:
文件访问权限符。
第一个字符:(-):表示普通文件,(d):表示目录,(l):表示链接,
r:可读 w:可写 x:可执行(在目录则表示该目录可读)(-):表示没有相应权限
d rwx rwx rwx chmod命令:修改文件的访问权限
| | | | (用数字来分配): r—>4 w—>2 x—>1 用法:chmod 777 文件名
目录 所有者 群组用户 其他用户 (用字母来分配): u:用户 g:群组 o:其他 a:所有用户 +:添加权限 -:去除权限 =:分配权限 例:chmod g+r o-r file 或:chmod ug-r o=- file
(-)表示没有权限 chmod -R 递归修改文件访问权限
Linux的文本编辑器:(编辑和查看文本文件)
Nano(主要),vim,Emacs
Nano:打开帮助文档 esc+x (-m:激活鼠标 -i:自动缩进 -A:激活智能home键功能 )
打开文件:nano 文件名
“rc”是很多脚本文件的后缀,这些脚本通常在程序启动阶段被调用,通常是Linux系统启动时。
“.bashrc”是当Linux的bash shell 启动后所运行的脚本
shell:
shell是外壳程序,用于解释我们输入终端的各种命令,是一个用户跟操作系统之间的一个命令解释器
bash.bashrc:
bash的配置文件,家目录的bashrc优先级比全局的高
可以用sourse命令来使改动立即生效