2019-2020-1 20209310《Linux内核原理与分析》第一周作业
一、Linux学习
-
学习路径
-
虚拟机安装
软件:vmware workstation 16 player
镜像文件:ubuntu-20.04-desktop-amd64
安装方法:https://blog.csdn.net/joe51392010/article/details/75042266
二、基本操作
- Linux基本命令
- Tab 按下Tab键就可以得到提示或者帮助完成,用于补全命令、目录、参数。
- Ctrl+c 使用Ctrl+c键来强行终止当前程序(并不会使终端退出)。
- Ctrl+d 键盘输入结束或退出终端
- Ctrl+s 暂停当前程序,暂停后按下任意键恢复运行
- Ctrl+z 将当前程序放到后台运行,恢复到前台为命令fg
- Ctrl+a 将光标移至输入行头,相当于Home键
- Ctrl+e 将光标移至输入行末,相当于End键
- Ctrl+k 删除从光标所在位置到行末
- Alt+Backspace 向前删除一个单词
- Shift+PgUp 将终端显示向上滚动
- Shift+PgDn 将终端显示向下滚动
- ↑ 恢复之前输入过的命令
- 通配符
- *匹配 0 或多个字符
- ? 匹配任意一个字符
- [list] 匹配 list 中的任意单一字符
- [^list] 匹配 除 list 中的任意单一字符以外的字符
- [c1-c2]匹配 c1-c2 中的任意单一字符 如:[0-9][a-z]
- {string1,string2,...}匹配 string1 或 string2 (或更多)其一字符串
- {c1..c2}匹配 c1-c2 中全部字符 如
- 在命令行获取帮助
man <command_name> 获得某个命令的说明和使用方式的详细介绍,也可<command_name> --help
man man 查看 man 命令本身的使用方式
man手册的8个区段:
- 1 一般命令
- 2 系统调用
- 3 库函数,涵盖了 C 标准函数库
- 4 特殊文件(通常是/dev 中的设备)和驱动程序
- 5 文件格式和约定
- 6 游戏和屏保
- 7 杂项
- 8 系统管理命令和守护进程
man num ls 查看区段num的内容
三、用户及权限管理
- 查看用户
- who am i 表示打开当前伪终端的用户的用户名
- who mom likes 表示打开当前伪终端的用户的用户名
- whoami 要查看当前登录用户的用户名
- who -a 打印能打印的全部
- who -d 打印死掉的进程
- who -m 同am i,mom likes
- who -q 打印当前登录用户数及用户名
- who -u 打印当前登录用户登录信息
- who -r 打印运行等级
- 创建用户()
- sudo adduser username 新建用户
- su
切换至用户user - su -
切换至用户user,同时用户的环境变量和工作目录也会跟着改变成目标用户所对应的 - su -l user 切换登录用户
- sudo passwd user 设置密码
- sudo
以特权级别运行cmd命令
-
用户组
方法一:groups user 输出为用户:用户组
方法二:查看/etc/group文件 cat /etc/group | sort
etc文件格式:group_name:password:GID:user_list 用户密码字段为x,不可见
使用户获取root权限:sudo usermod -G sudo user -
删除用户
sudo deluser lilei --remove-home 使用 --remove-home 参数在删除用户时候会一并将该用户的工作目录一并删除。如果不使用那么系统会自动在 /home 目录为该用户保留工作目录。
删除用户组可以使用 groupdel 命令,倘若该群组中仍包括某些用户,则必须先删除这些用户后,才能删除群组。 -
文件权限
ls -l 使用较长格式输出文件,文件格式如下:
四、Linux文件基本操作
-
touch test 新建空白文件test,再次输入则会修改时间戳
-
mkdir mydir 新建空白目录mydir
-
mkdir -p father/son/grandson 建立多级目录(这是相对路径,也可使用绝对路径)
-
cp test father/son/grandson 复制test文件 到该路径下,加上参数-R或-r可复制目录
-
rm test 删除test文件,加上参数-f强制删除,加上-r删除目录,加上-rf强制删除目录
-
mv test local 移动test文件到local目录下
-
mv test1 test2 test1重命名为test2
-
cat tac 都是打印文件内容到终端,前者正序,后者倒序,加上参数-n显示行号
-
nl 命令,添加行号并打印,这是个比 cat -n 更专业的行号打印命令。
简单列举它的常用的几个参数: -
-b : 指定添加行号的方式,主要有两种:
-b a:表示无论是否为空行,同样列出行号("cat -n"就是这种方式)
-b t:只列出非空行的编号并列出(默认为这种方式) -
-n : 设置行号的样式,主要有三种:
-n ln:在行号字段最左端显示
-n rn:在行号字段最右边显示,且不加 0
-n rz:在行号字段最右边显示,且加 0 -
-w : 行号字段占用的位数(默认为 6 位)
-
more 和 less 命令分页查看文件
-
file 查看文件类型