第一阶段:
①查看目录内容
ls(list),查看当前文件夹下的内容
ls常用选项
-a 显示指定目录下的子目录与文件,包括隐藏文件
-l 以列表的方式显示文件的详细信息
-h 配合 -l以人性化的方式显示文件大小
ls通配符的使用
* 代表任意个数的字符
? 代表任意一个字符
[] 表示可以匹配字符组中的任意一个([1234]) or [1-4]
②切换目录
cd(change directory),切换文件夹
cd 切换当当前用户的主目录
cd ~ 切换当当前用户的主目录
cd . 保持在当前目录不变
cd .. 返回上一级目录
cd - 可以在最近两次工作目录之间来回切换
pwd(print work directory),查看当前所在的文件夹
②切换目录
cd(change directory),切换文件夹
cd 切换当当前用户的主目录
cd ~ 切换当当前用户的主目录
cd . 保持在当前目录不变
cd .. 返回上一级目录
cd - 可以在最近两次工作目录之间来回切换
③创建和删除操作
1.touch[文件名],
创建一个文件
touch[.文件名],创建一个隐藏文件
--如果文件不存在,可以创建一个空白文件
--如果文件已经存在,可以修改文件的末次修改日期
2.mkdir[目录名]
即make directory,创建一个目录
mkdir -p A/B/C/D,连续创建多个目录
3.rm[文件名]即remove,删除指定的文件
rm -r 删除目录
④查看文件内容
cat 文件名, concatenate, 查看文件内容
more 文件名, 分屏显示文件内容
⑤其他
1.tree
tree命令可以以树状图列出文件目录结构
tree -d 只显示目录,不显示文件
2.clear,清屏
3.cp 源文件 目标文件
表示复制文件或目录
4.查看命令的帮助文档
command --help
man command
5.Tab键自动补全command后所要接的文件名
第二阶段:
①删除命令
1. rm 文件名
2. 删除目录 rm -r 目录名
3. -f 强制删除,忽略不存在的文件,无需提示
注:在界面删操作删除文件或者delete文件会回收到Trash里,但rm命令一旦删除文件不可恢复
②将给出的文件或目录复制到另一个文件或目录中,相当于Dos的copy命令
1. cp 源文件 目标文件
2. cp -r 源目录 目标目录
3. 在赋值同名的文件时候,不会有提示直接覆盖,若想要有提示
cp -i 源文件 目标文件
例:如桌面上有1.txt,桌面上的test文件夹有同名的1.txt,内容不同
桌面上的1.txt内容
test文件夹下1.txt的内容
将test文件夹下的1.txt赋值到桌面上
同名时,用cp -i 来提示是否覆盖同名文件的内容,y表示是,n表示否
③ mv命令,移动文件或目录(移动文件或目录不需要用-r区分)
1. mv 源文件 目标文件
2. 可以做到重命名(文件或目录)
路径不变,修改文件名
mv -i 文件名 新名称(如果修改文件名在同一文件夹下已有要修改相同名的文件,则用-i选项提示是否覆盖同名文件)
④ 查看文件内容(cat/more)
cat 文件名
cat一次性显示全部内容
cat选项 cat-b/cat -n 用来显示行数,b显示除了空行的行数,n显示所有行数
more 文件名
more显示部分内容,按空格键翻页,回车显示一行,b翻滚一屏,f前滚一屏,q退出
⑤ 文本搜索 grep命令
选项 含义
-n 显示匹配行及行号
-v 显示不包含匹配文本的行(相当于求反)
-i 忽略大小写
模式查找
参数 含义
^a 行首,搜索以a开头的行
b$ 行尾,搜索以b结尾的行
第三阶段:
① echo
在终端显示参数指定的文字,通常和重定向联合使用
② 重定向 >和>>
1. 将原本显示在终端的内容输出(>)或追加(>>)到指定文件中
2. 在创建文件的同时赋给内容
③ 管道 |
Linux允许将一个命令的输出可以通过管道作为另一个命令的输入
常用管道的命令有more,grep
例子:将ls-lha的输出结果用grep命令进行匹配含有D的符号,-n表示显示行数
例子:将ls-lha的输出结果用more分屏显示
④ 关机或重启(shutdown)
shutdown(重启shutdown -r)
直接输入shutdown会在一分钟后关机,取消则shutdown -c
shutdown +10表示在10分钟后关机,取消则shutdown -c
shutdown 时间,如shutdown 20:40,则表示在Ubuntu系统的20点40关机,取消shutdown -c
注:在维护服务器的时候,一般加 -r选项重启,直接关机则会导致服务器开机很麻烦
⑤ 查看或配置网卡信息
ifconfig 查看/配置计算机当前的网卡的配置信息
ping ip地址 检测与目标地址的连接是否正常
用管道筛选
其中122.168.217.135表示本机的ip地址
127.0.0.1被称为 本地回环/环回地址,一般用来测试本机网卡是否正常
⑥ 域名和端口号
域名
有一串用点分割的名字组成,如 www.baidu.com,是ip地址的别名,方便记忆
端口号
ip地址:通过ip地址找到网络上的计算机
端口号:通过端口号找到计算机上运行的应用程序,如:
SSH服务器 22
Web服务器 80
HTTPS 443
FTP服务器 21
⑦ SSH远程登录
ssh -p port user@remote(Linux或mac之间的互相连接)
windows下连接linux或mac下的远程(linux下 sudo apt install openssh-server)
putty下载 https://www.chiark.greenend.org.uk/
Xshell下载 https://www.xshellcn.com
user是远程机器的用户名,如果不指定则默认为当前用户
remote是远程机器的地址,可以是ip地址/域名/别名
port 是SSH Server的监听端口,如果不指定,就为默认值22
第四阶段:
① scp
scp就是secure copy ,是一个在Linux下用来远程拷贝的命令
-P port 用来指定端口,一般为22
1. 如把本地当前目录下的1.py文件复制到远程home目录下的Desktop/1.py
scp -P port 1.py user@remote:Desktop/1.py
2. 把远程home目录下的Desktop/1.py复制到本地当前目录下的1.py
scp -P port user@remote:Destop/1.py 1.py
3. 加上-r选项可传送文件夹
把当前目录下的demo文件夹复制到远程home目录下的 Desktop
scp -r demo user@remote:Desktop
把远程home目录下的Desktop复制到当前目录下的demo文件夹
scp -r user@remote:Desktop demo
注:scp只能在Linux或UNIX系统下使用
如果在Windows系统中,安装putty,使用pscp命令行工具或者安装FileZilla使用FTP进行文件传输(FTP端口号为21)
② 配置别名
③ ls-l扩展
1.
r -> read, w-> write, x -> excute, 分别表示可读,可写,可执行
注:红框第一个huzee表示当前用户所拥有的权限,第二个表示用户组所拥有的权限,第三表示其他用户
2. 硬连接数
表示有多少种方式访问当前目录/文件,如
Desktop_file的硬连接数为6,即有6中方式可以访问到Desktop_file的目录
注: 1. 在绝对路径家目录下访问
2. 当前目录下访问
3,4,5,6. 在文件所在knn/suanfa2/test_file/time目录下返回上一个文件夹访问
3,4,5,6. 同上
总: 文件的硬连接数一般为1,目录的硬连接数取决于目录里的目录数,包括本身的目录
④ chmod 的使用
chmod可以修改 用户/组 对 文件/目录 的权限
chmod +/-rwx 文件名/目录名
例: 对2.txt文件去掉可读可写的权限
对 2.txt增加可读(r)权限,此时可读取文件
对目录设置权限
⑤ 超级用户和sudo
超级用户
Linux系统中的root账号通常用于 系统的维护和管理,对操作系统的所有资源具有所有的访问权限
在大多Linux的系统中,不推荐使用root账号登录系统
在Linux安装过程中,系统会自动创建一个用户账号,这个默认的用户被称为标准用户
sudo
su 是substitute user 的缩写,表示使用另一个用户的身份
sudo命令用来以其他身份来执行命令,预设的身份为root
用户使用sudo,必须先输入密码。之后有5分钟的有效期限,超过时间得重新输入密码
若未经授权的用户企图使用sudo,则会发出邮件警告给管理员
⑥ 组管理 终端命令
1. 创建组 sudo groupadd dev
其中dev表示组名,etc是系统配置文件目录,此时用cat查看配置文件夹下的group文件,就修改了group文件,新增了dev
2. 删除组 sudo groupdel dev
再次用 cat /etc/group 查看group文件,此时dev不存在
3. 修改组 sudo chgrp dev 目录/文件
test文件夹已经属于我们创建的dev组中
⑦ 用户管理
1. 创建用户/2. 设置密码/3. 删除用户
创建一个python用户,并设置密码
此时家目录下新增了python用户,对应的组为之前设置的dev
删除python用户
2.查看用户信息
id 用户名 用于查看用户(uid)和组(gid)的信息
用户信息在根目录下etc目录下的passwd文件中
其中,由6个:组成的7个信息,分别是1用户名,2密码(x表示加密的密码),3UID(用户标识),4GID(组标识),5用户全名或本地账号,6家目录,7登录使用的shell,就是登录时候使用的终端命令ubuntu默认使用的dash(即远程登录时候为dash)
组信息在根目录下etc目录下的group文件中
who
在windows中使用putty登录ubuntu上的python用户
此时在ubuntn中终端中,输入who,会显示两个用户的登录状态
日期表示开机登录时间,(:0)表示本机用户,(192.168.217.1)表示远程登录的ip地址
在不同用户终端输入命令whoami会显示自己所属的用户
windows远程登录下
ubuntu下.
⑧ usermod
一般用户的组名在创建的时候已经配置了组信息,所以修改用户的附加组比较常用,sudo usermod -G 要附加的组 用户名
查看 huzee用户的用户(UID)和组(GID)的信息,红线下标表示附加组
查看 python用户的用户(UID)和组(GID)的信息,没有附加组
用windows远程连ubuntu下的python用户,创建python2用户
在根目录下的etc文件夹下的passwd文件中没有python2的用户信息,用户python不能使用sudo等命令
此时修改用户python的附加组,给用户python附加sudo的权限,sudo usermod -G sudo python
用户python已经拥有了sudo的权限
修改用户登录shell(usermod -s /bin/bash)
修改之后远程登录到用户python时使用的shell就成了bash
3. which命令:可以查询可执行命令所在位置
如查询python命令所在的文件夹
useradd命令所在的文件夹
其中 bin(binary)是二进制执行文件目录,主要用于具体应用
sbin(system binary)是系统管理员专用的二进制代码存放目录,主要用于系统管理
/usr/bin(user commands for applications)后期安装的一些软件
/usr/sbin(super user commands for applications)超级用户的一些管理程序
4. su(切换用户)
-表示且切换用户家目录
不加-则不会切换到用户的家目录
su不接用户名,可以切换到root,root具有所有权限,不安全,不推荐使用
5. 修改文件权限
chown 用户名 目录名/文件名
chmod在设置权限时,可以使用简单的三个数字分别对应拥有者/组/其他用户的权限
chmod 755 文件名 chmod -R 775 目录名(修改目录及目录下所有文件的权限)
例将2.txt改为 u=rwx,g=rx,o=r
第五阶段:
① 系统信息相关命令
1. 时间和日期
2. 磁盘信息
-h 可以以人性化的方式显示文件大小
du -h[目录名] , 不接目录名默认当前文件夹
3. 进程信息
所谓进程,通俗来说就是 当前正在执行的一个程序
ps不加选项默认只会显示当前用户通过终端启动的应用程序
ps选项功能说明
ps a 和 ps au
top命令(实时显示当前运行的进程状况并排序)
kill命令 kill - 9 表示强行终止
② 其他命令
1. find(查找文件)
查找当前文件夹下名字包含2的文件
查找桌面下以为.py命名的文件
2. 软链接(ln -s)
注:1. 没有 -s选项建立的是一个硬链接文件
2. 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够用正常使用
ln -s 被链接的文件的绝对路径 链接文件
3. 硬连接(ln)
没有 -s选项建立的是一个硬链接文件
注:Linux中,文件名和文件的数据是分开存储的
创建一个硬链接,被链接的源文件为test目录下的1.py,链接名称为hard
删除链接的源文件名
用cat命令查看硬链接与软链接的内容,此时软链接无效,而硬链接依然可以打开文件
4. 打包压缩
在不同的系统中,常用打包压缩的方式是不同的
tar选项说明
例:在桌面创建1.py,2.py,3.py,3个文件并将其打包为py.tar,再解包
打包命令 tar -cvf 包名 被打包文件
删除所创建的py文件
解包
3个py文件又被重新解包到桌面
注:tar只负责打包,不负责压缩
5 压缩/解压缩
1) gzip
tar和gzip结合使用可以实现文件的打包和压缩
tar负责打包,不负责压缩
用gzip 压缩 tar打包后的文件,其扩展名一般用 xxx.tar.gz
在Linux中,最常见的压缩文件的格式就是 xxx.tar.gz
在tar命令中有个选项 -z 可以调用 gzip,从而方便的使用打包压缩和解压缩的功能,命令格式如下
例在桌面上创建3个py文件
在桌面创建一个gz文件夹,打包压缩py文件,把打包压缩的文件解压到指定的gz文件夹中(文件夹必须提前存在)
2)bzip2
在tar命令中有一个 -j 选项可以调用bzip2,从而方便的使用打包压缩和解压缩的功能,命令格式如下
例子同上,不用 -C 指定解压的文件则会解压到当前文件夹
6. 软件安装(apt)
apt是Advance Packaging Tool的缩写,是Linux下一款安装包管理工具,可以在终端安装/卸载/更新软件包
例如 sudo apt install htop(htop是查看当前进程的软件)
配置软件源