一、常用目录/文件操作命令
1.展示目录列表命令ls (list)
ls 展示当前目录下的可见文件
ls -a 展示当前目录下所有的文件(包括隐藏的文件)
ls -l(ll) 展示当前目录下文件的详细信息
ll -a 展示当前目录下所有文件的详细信息
ll -h 友好的显示当前目录下文件的详细信息(文件的大小可读性更强了)
2.切换目录命令cd(change directory)
cd test 切换到test目录下
cd .. 切换到上一级目录
cd / 切换到系统根目录下
cd ~ 切换到当前用户的根目录下
cd - 切换到上一级所在的目录
3.目录的创建(mkdir)和删除(rmdir)命令
mkdir test 在当前目录下创建一个test目录
mkdir -p test/a/b 在test目录下的a目录下创建一个b目录,如果上一级目录不存在,则连它的父目录一起创建
rmdir test 删除当前目录下的test目录(注意:该命令只能够删除空目录,如果想删除非空目录,rm -r test 删除)
4.文件的创建(touch)和删除(rm)命令
touch test.txt 在当前目录下创建一个test.txt文件
touch ~/Desktop/test.txt 在~/Desktop目录下创建test.txt文件
rm test.txt 删除test.txt的文件(带询问的删除,需输入y才能删除)
rm -f test.txt 强制删除text.txt文件
rm -r test 递归删除,即删除test目录以及其目录下的子目录(带询问的删除)
rm -rf test 直接删除test目录以及其目录下的子目录
5. 文件复制(cp) 和文件移动、重命名(mv)
cp test1/a.txt(源文件路径) test2/b.txt(复制目标路径) 将a.txt文件复制到test2目录下的b.txt文件
cp -r test1 test2 将目录test1复制到test2
-r:递归持续复制,用於目录的复制行为;(常用)
mv test1/a(源文件路径) test2/b(移动目标路径) 将a文件移动到test2目录下的b文件
mv a.txt b.txt 给a.txt重命名为b.txt
6.文件打包或解压命令tar
- 说明: Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。
压缩:
tar -zcvf tar zcvf FileName.tar.gz(压缩后的文件名) DirName(要打包压缩的文件)
z:调用gzip压缩命令进行压缩
c:打包文件
v:显示运行过程
f:指定文件名
解压:
tar zxvf FileName.tar.gz(解压文件名)
z:调用gzip压缩命令进行压缩
x:解压文件
v:显示运行过程
f:指定文件名
二、命令执行/基本的文件管理
1. 格式化输出时间(date)
date 显示当前日期(包括年月日、时分秒、星期)
date +%Y/%m/%d 格式化输出年月日(以指定的/链接)
%S:秒,取值为00-59
%M:分钟,取值为00-59
%H:小时,取值为00-23
%d:月中的某天,取值为01-31
%m:一年中的某月,取值为01-12
%y:一个世纪中的某年,取值为0-99
%Y:年,其格式为ccyy(4个数字)
%D:以格式%m%d%y表示的日期
%T:时间,格式为%H:%M:%S
2. 开关机命令/切换身份(su)
shutdown –h now 立刻进行关机
shutdown –r now 现在重新启动计算机
su - 切换root用户权限
su - m 切换到root用户且保持在切换前的目录
passwd 修改用户密码
logout 用户注销
3. 常见的热键与操作技巧
- 【Tab】键:,命令自动补全,也可以文件名补全,变量补全
- 【Ctrc】+【C】 :中断一个运行的命令
- 【Shift】+【PageUP】,【Shift】+【PageDown】:上下移动屏幕界面
- 命令 --help 查看命令用法详情,如 ls --help
4. 管道命令
- 说明: “|” 表示 将前一个命令输出的结果作为后面的命令的输入来处理
ll /etc/ | grep 'passwd' 在ll /etc命令显示结果中匹配(grep) 'passwd'
5. linux文件查看
cat 由第一行开始显示文件内容
nl 显示的时候,顺道输出行号
more 一页一页的显示文件内容,q
less 与more类似,但是比more更好的是,他可以往前翻页
head 只看头几行
tail 只看尾巴几行
三、Linux文件权限与账号管理
1. 文件权限
说明:
-
inux的文件权限主要依据三种身份来确认
- user/owner(用户/所有者): 文件的所属人
- group(群组) : 这个文件附属于某一个群组的人
- others(其他人) :不是user(用户)也没加入group(群组)的账号,就是others(其他人)
-
文件权限查看(ll -a)
.
- -rw-rw-r-- 其中
- 首位的-表示此为文件,并非文件夹
rw- 表示 文件的user权限可读可写不可执行
rw- 表示 group权限可读可写不可执
r-- 表示others权限可读不可写不可执行 - 第一个leadingme表示该文件的user/owner(用户/所有者), 第二个leadingme表示该文件的 group(群组)
- 42表示该文件大小为42字节
- 4月 8 09:59 为文件创建日期
修改文件所有者(chown)
sudo chown ubuntu 01.py 修改01.py的所有者为ubuntu
命令返回值:-rw-rw-r-- 1 ubuntu leadingme 42 4月 8 09:59 01.py
修改文件拥有的组(chgrp)
sudo chgrp ubuntu 01.py 修改01.py的拥有的组为ubuntu
命令返回值:-rw-rw-r-- 1 ubuntu ubuntu 42 4月 8 09:59 01.py
修改文件操作权限(chomd搭配数字法)
- 说明:
r => read => 2^2 => 4 可读对应数字4
w => write => 2^1 => 2 可写对应数字2
x => eXecute => 2^0 => 1 可执行对应数字1 - 结论:
rwx 可用数字表示为 7
r-- 可用数字表示为 4
…
sudo chmod 775 01.py 修改01.py 权限为775(rwxrwxr-x)
命令返回值:-rwxrwxr-x 1 ubuntu ubuntu 42 4月 8 09:59 01.py
2.账号管理
用户管理
useradd -g usergroup -m username 创建一个用户
useradd -G progroup username
- g 用来指定创建用户拥有的主组(主组只能有一个)
- G 用来添加辅助组(可以添加多个)
- m 指定用户的登录目录,如果不写则无登录目录
usermod -G groupname username 将username用户添加到groupname组中
usermod -s bash username 修改用户的shell
sudo passwd username 修改某个用户的密码
userdel -r username 删除指定用户
- r 递归删除该用户的登录目录
id username 查看用户的用户名(编号),组名(编号)
群组管理
groupadd groupname 创建一个群组
grep groupname /etc/group 查看指定的组名是否存在,/etc/gropu存放系统所有的组名
grep groupname /etc/passwd 查看所有用户的信息
四、进程管理
1. 查看进程
说明:
-
F (flag): 代表进程的摘要标志,常见的是4,代表root .
-
S (stat):状态栏,主要的分类项有下面几种
- R(running):该进程正在运行
- S(stop):该进程当前正在睡眠状态,但可以被唤醒
- D:不可被唤醒睡眠状态,通常这个进程可能在等待I/O,例如打印
- T:停止状态(stop),可能是在工作控制(后台暂停)
- Z(Zombie): 僵尸状态,进程已经结束却无法从内存中移出
-
UID/PID/PPID:代表“此进程被该PID所拥有/进程的PID号码/此程序的父进程PID号码”
-
C:代表CPU使用率,单位为百分比
-
PRI/NI:表示该进程被CPU所执行的优先级,数值越小,越快被CPU执行
-
ADDR/SZ/WCHAN: 指出该进程在内存的哪一部分
-
TTY:登陆者的终端位置,若为远程登录则使用动态终端接口(pts/n)
-
TIME: 使用CPU的时间,注意,是此进程实际花费的CPU时间,而不是系统时间
-
CMD(command):触发次进程的命令
ps -l 查看当前的bash界面的相关进程(也称前台级进程)
pstree -a 以关联树的方式展示全部进程的信息及相关联系
ps -aux 查看系统中的进程信息全部输出,常用的命令
top 动态查看进程,每5秒更新一次
2. 终止进程
kill 进程的UID码 终止该进程
kill -9 进程的UID码 强制终止该进程
五、文件系统基本管理
1. 软连接和硬连接(ln)