查看“Linux-2019-spring”的源代码
←
Linux-2019-spring
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看和复制此页面的源代码。
= Linux 操作系统 课程主页 = *Teacher: [http://hlt.suda.edu.cn/~zhli/ 李正华] * Teach Assistant: 江心舟 * Linux课程QQ群:643979822 *2019春季学期 * 写给自己的话 ** 内容不可能面面俱到,抓住重点(以及自己感觉最重要的知识点)即可,其他需要靠学生自己去探索 ** 多鼓励学生自己思考 = 课程信息 = * 上课时间和地点: ** 周三10:10-12:00理工楼153上理论课; ** 周四10:10-12:00(单周)理工楼243上机课(434备用,目前用不到) * 成绩分布:平时10-15分、实践20-25、期末60(计划) * Linux课程QQ群:643979822 * [https://pan.baidu.com/s/18xF9-GorGGuJN0-XVlItMg Linux课程的百度云分享链接(2018年教学视频)] - 密码: 45n2 * [http://hlt.suda.edu.cn/index.php/Linux-2019-spring-final-score 期末总成绩(待定)] = 实践作业 = * 请登录csteaching.suda.edu.cn网站,完成实验报告,并将word作为附件提交 * 实验作业1: * 实验作业2: = Linux核心思想 = * 每个程序只做一件事,做到最好,功能完善:vim+gcc+gdb = visual studio c++ = 讲义 = == 后期内容 == [http://hlt.suda.edu.cn/index.php/Linux-2019-spring-misc 杂项记录] * 什么是文字终端,深入理解shell,多个不同的shell ** 可以不通过图形终端中的文字终端 开机时可以设置不启动图形界面 在terminal端口下按ctrl+alt+F1到F7,可分别进入1号到7号终端(默认F7回到了图形界面) 环境变量S1='hi':设置提示符 7、$ sudo useradd ll12:创建一个新用户命令。sudo--以root的身份执行后面的命令 8、$ sudo su:可以进入root账户 touch(创建一个文件;如果一个文件已经存在,就会更新文件的时间 == 2019.3.27 == * 文件操作命令 whereis mkdir(查看命令mkdir所在的位置:1、命令的可执行文件位置;2、命令的帮助文档) man mkdir mkdir (-p) mv -f (--force: do not prompt before overwriting) -i (--interactive: opposite to -f) -n (--no-clobber: do not overwite an existing file) [-T] (--no-target-directory: treat DEST as a normal file) cp -t (target dir) -R/-r (--recursive: copy directories recursively) rmdir rm -r (--recursive) -f (--force) -i (--interactive=always) -I (--interactive=once) * c语言的命令行参数 cp a.txt b.txt (a.txt,b.txt 命令行参数command-line arguments) int main(int arga,char *argc[]) * tab键自动补全 * ctrl+c ctrl+d ctrl+a ctrl+e ctrl+r * AM:(0:00-12:00)ante meridiem or ante meridian; 上午;PM:(12:00-24:00)post meridiem or post meridian; 下午 *文本文件查看命令 1、文本文件:ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。 2、二进制文件:二进制文件是按二进制的编码方式来存放文件的。hexdump(hexadecimal octal dump)十六进制文件查看器 3、cat 拼接(concatenate) (不跟参数的时候:默认将标准输入的内容标准输出), tac 4、tail(tail -n 3 a.txt:显示后三行;tail -f a.txt:若文件有增加显示增加的内容) 5、wc: word count 6、head: 7、less/less is more:分屏/页 显示;空格 翻屏;上下箭头 按行移动;ctrl + f/b forward/backward;/ + 字符串或者正则表达式 进行搜索;:w 文件名 将文件另存 8、man:在线文档online 离线offline;分屏展示的时候就调用了less。输入man man 的时候就会将man的说明文档调入,用less显示。输入 man printf (如果未指定数值,优先看作为命令的帮助文档);man 3 printf C语言的库 ; man -f printf 非常简洁的说明; man -k search 查找包含search的文件 *文件编辑器 1、vi --- vim:打开文件 a.命令模式:按“Esc”回到命令模式;“h”“←”左;“k”“→”右; b.编辑模式/插入模式:按"i"进入编辑模式 c.末行模式:在命令模式下,输入“:”进入末行模式 == 2019.3.20 == * ls命令:深入学习命令的使用 ls -l /home:长格式 第一个字符d表示文件夹,-表示文件,接下来的连续三个owner的权限,然后三个是group的权限;最后三个是other的权限; 24:硬链接数 zhenghua:owner zhenghua:group 4090:表示文件所占的物理空间,表示的是该目录自身所占内存的大小,不是该目录下所有文件相加所占的空间。 mar 26 10:31 :时间信息 zhenghua :文件的名字 ls -a /home: ls -dl /home: 如果参数是目录,不是看包含的内容,而是看目录本身的信息 ls -l -d /home 同上 ls -lc /home: 【显示ctime】 ls -r,--reverse /home:逆序 ls -R /home:递归显示 ls --color=nevel|auto|never /home: ls -lh:大小信息 ls -t /home 根据时间排序 ls -al: ls --full-time:完整时间信息 ls --hide=a* 讲了一点通配符和RE的对应关系: *=.* [A-Z]=[A-Z] * stat命令 权限、拥有者、inode、block等信息 文件的三个时间信息: atime: accesss:读文件 mtime:modify:修改文件内容(文件加长、vim下w、文件长度不变的修改) ctime:change:修改文件内容、chown、chmod 【man ls -c中的解释:修改文件状态status信息的最新时间】 * man man 3 printf:(synopsis 用法; description 描述)看在线文档 man ls :(LS(1): Name ; synopsis: ls [option]... [file]...可以跟0个到n个选项或者文件) man pwd: option:可以是长选项(--all)或者是短选项(-a),ls --all和ls -a实现的效果是一样的。 1 Executable programs or shell commands 2 System calls (functions provided by the kernel) 3 Library calls (functions within program libraries) 4 Special files (usually found in /dev) 5 File formats and conventions eg /etc/passwd 6 Games 7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7) 8 System administration commands (usually only for root) 9 Kernel routines [Non standard] * 遗留问题 对于目录而言,atime mtime ctime分别什么意思 对于目录而言,rwx分别表示什么意思 ls -l 显示的是哪个时间?atime? ls -t 根据什么时间排序?atime? == 2019.3.13 == === Linux的文件目录结构 (续)=== * root目录及超级用户 $ su # cd :切换到root的家目录下(/root) # exit :回到普通用户下 bin--可执行文件,二进制; etc--配置文件;boot--操作系统启动相关的代码;home--家目录,一个用户自己的目录,通常情况下每个普通用户都在home下面有一个目录,超级管理员在/root下 * 文件名规则 linux下文件名大小写区分,windows下不区分 linux下文件名最长为256字节,尽量不要用中文 linux下几乎所有的符号都可以作为文件名的一部分,只有“/”不能作为文件名的一部分出现(斜杠“/”:slash;反斜杠“\”:backslash) 特殊字符如空格、括号等需要用双引号或反斜杠\来书写 隐藏文件:文件名以.开头。ls 看不到隐藏文件;ls -a 可看到隐藏文件夹。 文件夹(目录)也是一种文件 * 绝对路径和相对路径 “.”表示当前目录 “..”表示上一级目录 绝对路径:从根目录开始到目标文件的路径 相对路径:从当前目录(不是从根目录开始)到目标文件的路径 === 文字终端 === * 图形终端下的文字终端Terminal XWindow下打开了Terminal应用程序(快捷键:ctrl+alt+t)【航站楼】 * 输入一些简单命令 ls $ cd :切换目录(change directory)。 $ cd ~ :回到当前用户的根目录下 date, cal, calendar, bc, echo uptime:系统启动的时间 hostname:机器名 who:显示当前登录的用户,以及用户从哪里登录进来的 users:目前有几个用户登录了这个系统 w:和who类似,同时可以显示每个用户在干啥 whoami:写程序的时候会用到 $ uname -a :命令是uname;-a是选项(显示全部的信息);可以查看内核(kernel)版本号等。 $ pwd:显示当前工作目录(print working directory) * 深入理解命令 命令的结构:命令(command) 选项(option) 参数(argument) 例子:cd:后面不加参数时,默认切换到当前用户的家目录下。 1、命令:一个操作 2、选项:操作方式 3、参数:操作对象 ls -l 命令详细解释。 思考问题:目录的硬链接数(类似于Python中一个对象绑定的名字数)如何计算? == 2019.3.6 == === 操作系统的作用 === * 管理硬件资源 * 为程序员提供API * 为普通用户提供界面(GUI、CLI) === Linux和Windows的一些区别 === * 图形界面 菜单栏隐藏在最上面 默认有四个工作区workplace ctrl+alt+上下左右键:可以在四个工作区之间切换 ctrl+shift+alt+上下左右键:把当前焦点窗口拖到另外一个工作区 有自己的文本编辑器 熟悉一下资源管理器 * Linux的文件目录结构 ** 标准化(windows下是乱七八糟的) ** bin(二进制);dev(设备);boot(启动);home(所有用户的家目录) ** 只有一个根目录 /(windows下每个分区有一个目录) ** 家目录(Home Folder) *** 每个用户都有一个家目录,存放自己的私有数据 *** 用户的家目录通常在/home/用户名 *** 除非别人允许,用户A无法访问用户B的家目录(权限的概念) *** 权限管理使得Linux支持真正的多用户 === 讲课期间用到的几个命令 === * cd(change command)、ls (list files) === 杂项 === * 文字界面下的提示符:prompt symbol,通常包含的信息:用户名@机器名: 当前工作目录 $ == 2019.2.27 == * 介绍课程基本情况,个人介绍,对读书、独立思考的看法 * 讨论了操作系统的概念、作用,相当于回忆操作系统理论课的内容 * /dev/stdin (stdout, stderr),为什么要区分标准输出和标准错误输出? * g++ gcc cout cerr printf fprintf
返回至
Linux-2019-spring
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
新闻
成员介绍
研究组
科研项目
发表论文
在线演示
工具
链入页面
相关更改
特殊页面
页面信息